Exemple de code Batch permettant de convertir des vidéos au format MP4 dans un dossier avec ffmpeg.exe
.
Ce que fait le script :
Créé un sous-dossier .\CONVERT\
Déplace les vidéos dans le sous-dossier .\CONVERT\
Converti les vidéos en MP4 dans le dossier parent
Code :
@echo off
REM ### LOCALISATION FFMPEG.EXE ###
SET exeFile="D:\Programmes\ffmpeg.exe"
:menu
SET choix=End
CLS
echo.
echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo º º
echo º ALL) Convert ALL Format (AVI / MKV / MP4) º
echo º º
echo º AVI) Convert AVI Only º
echo º º
echo º MKV) Convert MKV Only º
echo º º
echo º MP4) Convert MP4 Only º
echo º º
echo º END) Quitter LaTMoT º
echo º º
echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo.
SET /p choix="Que voulez-vous faire ? [End] "
if not "%choix%"=="" set choix=%choix:~0,3%
if "%choix%"=="ALL" goto ALL
if "%choix%"=="all" goto ALL
if "%choix%"=="AVI" goto AVI
if "%choix%"=="avi" goto AVI
if "%choix%"=="MKV" goto MKV
if "%choix%"=="mkv" goto MKV
if "%choix%"=="MP4" goto MP4
if "%choix%"=="mp4" goto MP4
if "%choix%"=="END" goto eof
if "%choix%"=="end" goto eof
if "%choix%"=="End" goto eof
cls
echo.
echo Le choix %choix% n'est pas un choix valide...
echo.
pause
goto menu
:ALL
set FILES=*.avi *.mkv *.mp4
goto CONVERT
:AVI
set FILES=*.avi
goto CONVERT
:MKV
set FILES=*.mkv
goto CONVERT
:MP4
set FILES=*.mp4
goto CONVERT
:CONVERT
setlocal enableextensions enabledelayedexpansion
set /a compteur=0
for /r %%f in (%FILES%) do (
Set /a compteur+=1
)
cls
REM SI 0 goto menu
if !compteur!==0 goto NoFiles
echo.
echo %compteur% Fichier(s) … traiter...
echo.
REM ### CREATION SOUS-REPERTOIRE .\CONVERT\
echo.
echo /!\ ATTENTION /!\ ATTENTION /!\ ATTENTION /!\ ATTENTION /!\
echo.
echo Ceci va d‚placer les Fichiers dans le sous-r‚pertoire .\CONVERT\
echo.
echo /!\ ATTENTION /!\ ATTENTION /!\ ATTENTION /!\ ATTENTION /!\
echo.
pause
echo.
echo Cr‚ation du sous-r‚pertoire .\CONVERT\
mkdir CONVERT>nul
REM ### DEPLACE TOUS LES FICHIERS DANS SOUS-REPERTOIRE, SAUF LE .BAT
echo.
echo D‚placement des fichiers dans le sous-r‚pertoire .\CONVERT\
for %%F in (%FILES%) do (
REM echo "%%~F"
REM pause
if /I not "%%~nxF"=="GoFFMpegALLtoMP4.bat" MOVE "%%~F" .\CONVERT\>nul
)
cls
for /r %%f in (%FILES%) do (
echo.
echo Traitement %%~nf ...
%exeFile% -loglevel quiet -nostats -i "%%f" -c:a copy "%%~nf.mp4">nul
REM Modifier taille en 720 de Hauteur - Ce qui fait 1280 en Largeur
REM %exeFile% -loglevel quiet -nostats -i "%%f" -filter:v scale="trunc(oh*a/2)*2:720" -c:a copy "%%~nf.mp4"
echo.
echo %%~nf - traitement fini...
set /a compteur-=1
echo.
if !compteur!==0 (
echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo º º
echo º TRAITEMENT TERMINE º
echo º º
echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo.
pause
goto menu
)
REM Pour adapter à bonne distance le trait à droite
if !compteur! LEQ 9 SET SPACE= º
if !compteur! GEQ 10 SET SPACE= º
if !compteur! GEQ 100 SET SPACE= º
echo.
echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo º º
echo º RESTE A FAIRE !compteur! !SPACE!
echo º º
echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo.
)
pause
goto menu
exit
:NoFiles
echo.
echo %compteur% Fichier(s) … traiter...
echo.
pause
goto menu
:REMARQUES
REM EQU - égal à
REM NEQ - différent de
REM LSS - inférieur à
REM LEQ - inférieur ou égal à
REM GTR - supérieur à
REM GEQ - supérieur ou égal à
REM SI VAR = 15 GOTO END
REM if /i %variable% equ 15 goto :eof