setlocal enabledelayedexpansion set VLCEXE="C:\Program Files\VideoLAN\VLC\vlc.exe" set InputFileExtension=mp4 set OutFolder= pushd %~dp0 if "!OutFolder!" NEQ "" ( if not exist "!OutFolder!" ( mkdir !OutFolder! ) ) set Dist=!OutFolder! for %%a in (%*) do ( if %%~xa==.!InputFileExtension! ( if "!OutFolder!"=="" set Dist=%%~dpa cmd /c !VLCEXE! -I dummy -vvv %%a --sout #transcode{vcodec=h264,scale=auto,acodec=mpga,ab=128,channels=2,samplerate=44100,soverlay}:file{dst=!Dist!\sub_%%~na.mp4,no-overwrite} :no-sout-all :sout-keep vlc://quit ) ) popd exit