Convierta videos a MP4 iPad (h264 y aac), pero deje el códec de video solo si h264 ya

0

Quiero convertir archivos de video por lotes con diferentes extensiones y convertirlos a MP4. Si el códec de video ya es H.264, quiero copiarlo y convertir el audio solo si es AC3, MP3 o algo que no sea AAC.

Estoy familiarizado con ffmpeg, pero no sé cómo omitir de forma inteligente la conversión de códecs si ya está en la parte H.264 y AAC.

El archivo por lotes a continuación funcionaría para todos los archivos de video, pero sé que estaría re-procesando partes de los archivos que sí necesitan transcodificarse.

for %%a in ("*.*") do ffmpeg -i "%%a" -c:v libx264 -preset slow -crf 20 -c:a libvo_aacenc -b:a 128k "newfiles\%%~na.mp4"

Sun
fuente
No estoy seguro de cómo crear esto como parte de un archivo por lotes, pero si ayuda a empujarlo en la dirección correcta, es probable que desee ejecutar un FFprobe en el archivo y sondear los metadatos para obtener información del códec. Para todos los archivos que no son H264, su código anterior hará una conversión adecuada. Para todos los archivos que coincidan con H264 como un códec, querrá hacer ffmpeg -i [INPUT] -c:v copy -c:a libvo_aacenc -b:a 128k -f mp4 [OUTPUT]. No estoy seguro de lo útil que es esto, ya que tal vez ya lo sepas, pero hasta que alguien más responda, con suerte lo empuja en la dirección correcta.
occvtech
Sí, eso realmente no me ayuda. No soy lo suficientemente inteligente como para saber cuándo aplicar un conjunto específico de instrucciones ffmpeg.
Sun