ffmpeg: omite el proceso si la salida ya existe

ffmpeg: omite el proceso si la salida ya existe

Estoy ejecutando un script por lotes para convertir archivos de video en Python, pero puede suceder que el archivo de salida ya exista, entonces, ¿hay alguna opción para evitar que ffmpeg me pregunte qué hacer si la salida ya existe? Quiero que se salte el proceso automáticamente.

Respuesta1

Desde elffmpegdocumentación:

-n (global)
No sobrescriba los archivos de salida y salga inmediatamente si ya existe un archivo de salida específico.

Uso:

$ ffmpeg -n -i input output.mp4
  File 'output.mp4' already exists. Exiting.
  • -nes una opción global. Las opciones globales deben especificarse primero.
  • La opción opuesta es -yla que sobrescribirá automáticamente la salida sin preguntar.

Nota:Hay un error que hace -nque no funcione en algunos casos, como con los muxers de imagen y tee. Ver informe de error#8492: tee muxer sobrescribe silenciosamente los archivos de salida. Hasta que se solucione este error, se recomienda realizar una prueba primero o utilizar su lenguaje de secuencias de comandos para verificar si el resultado existe.

Respuesta2

Idealmente, su secuencia de comandos debería verificar la existencia de los archivos de entrada y salida antes de llamar a ffmpeg para realizar su operación (potencialmente) peligrosa. Por peligroso me refiero a sobrescribir archivos existentes...

Una vez que haya determinado si el resultado ya existe, su script puede pasar al siguiente archivo para procesarlo.

información relacionada