Pérdida de calidad al agregar subtítulos a través de FFmpeg

Después de resolver el problema, paso al siguiente. Después de agregar subtítulos, discutidos aquí , con el comando:

ffmpeg -i grdedFinal.mov -vf subtitles=portSbs.srt gradedFinalwithSubs.mov

la calidad del archivo generado disminuyó significativamente. El archivo original tenía un tamaño de 1,5 GB, mientras que el archivo resultante tenía un tamaño de ~300 MB . Los subtítulos se agregan correctamente pero la compresión es innecesaria. En una palabra, me gustaría que el FFmpeg agregue subtítulos y solo haga eso, dejando intacta la calidad del sonido y la imagen.

Respuestas (1)

A medida que codifica los subtítulos, el video (con los subtítulos agregados) se volverá a codificar .

Puede utilizar el método de control de tasa CRF para modular la calidad de la salida.

Entonces, comienza con

ffmpeg -i grdedFinal.mov -vf subtitles=portSbs.srt -crf 18 -c:a copy gradedFinalwithSubs.mov

Si la calidad no es aceptable, reduzca ese valor hasta que lo sea, a cambio de un archivo más grande. Por supuesto, no decida en función del tamaño del archivo, sino de la calidad visual. x264 es muy bueno para comprimir video mientras mantiene la calidad percibida subjetivamente.

Muchas gracias, eché un vistazo aquí y puse crf 0.
Innecesario, pero esa es tu elección. Use el comando editado para el paso de audio.
Entonces, ¿qué crfsería óptimo por falta de pérdida de calidad? Pregunta adicional, el archivo creado no se abre en QuickTime pero se ejecuta en VLC, así que supongo que el archivo ya no existe, movpero avipor ejemplo.
¿Por ser matemáticamente sin pérdidas? Ninguno. Por ser visualmente sin pérdidas, 18es generalmente transparente, pero YMMV. Intente -crf 1: creo que ffmpeg ha elegido un formato de píxel para CRF 0 con el que QT no funciona.