Reemplazo por lotes de .m4v con una pista de audio diferente

Reemplazo por lotes de .m4v con una pista de audio diferente

Tengo una lista de archivos .m4v. Tengo una lista de archivos .mp3 (que resultan tener el mismo nombre de archivo que elcorrespondientearchivos .m4v).

Los archivos .m4v contienen audio de menor calidad. Los archivos .mp3 contienen audio de mejor calidad.

Me gustaría reemplazar el audio en los archivos .m4v, con elcorrespondienteaudio en los archivos .mp3.

No me gustaría hacer esto individualmente para más de 10000 archivos, ya sea en mkvmerge o ffmpeg.

Probé un script por lotes con algo como esto pero fue en vano:

PARA %%a IN ("*.m4v") DO ffmpeg -i "${%%a}" -i "${%%a//.m4v/.mp3}" -vcodec copiar -acodec copiar "${ %%a//.m4v/.mp4}"

pausa

Además (ya que quería el resultado en un directorio diferente):

FOR %%a IN ("*.m4v") DO ffmpeg -i "%%a" -i "%%a" -vcodec copiar -acodec copiar "outputDirFoo123\%%~na.mp4"

pausa

Hasta ahora no han tenido éxito (solo se han encontrado errores). No estoy seguro de cómo solucionar este problema.

¿Alguien podría indicar cómo puedo procesar por lotes lo que quiero arriba? ¿Existe una mejor manera de hacerlo que yo aquí?

Muchas gracias.

Respuesta1

Usar

FOR %%a IN ("*.m4v") DO ffmpeg -i "%%a" -i "%%~na.mp3" -map 0:v -map 1:a -c copy "newpath\%%~na.mp4"

pause

información relacionada