@echo off setlocal enabledelayedexpansion :: Obtén el directorio donde está ubicado este script set "script_dir=%~dp0" :: Configura el directorio de salida set "output_dir=%script_dir%output" :: Asegúrate de que el directorio de salida exista if not exist "%output_dir%" mkdir "%output_dir%" :: Verifica que se han pasado archivos como argumentos if "%~1"=="" ( echo Por favor, pasa al menos un archivo MP4 como argumento. exit /b 1 ) :: Procesa cada archivo MP4 pasado como argumento :loop if "%~1"=="" goto endloop :: Verifica la extensión del archivo if /i not "%~x1"==".mp4" ( echo El archivo "%~1" no es un archivo MP4. shift goto loop ) set "input_file=%~1" set "output_file=%output_dir%\%~n1_ES.mp4" echo Procesando "%input_file%"... :: Ejecuta ffmpeg para copiar el video y el segundo flujo de audio ffmpeg -i "%input_file%" -map 0:v -c:v copy -map 0:a:1 -c:a copy "%output_file%" 2>&1 :: Verifica si ffmpeg se ejecutó con éxito if !ERRORLEVEL! EQU 0 ( echo Conversión completada con éxito para "%input_file%". ) else ( echo Error en la conversión para "%input_file%". ) shift goto loop :endloop echo Todos los archivos han sido procesados. endlocal pause