Si un video requiere volver a codificarlo varias veces porque ffmpeg
necesita que se le realicen múltiples cambios, como recortar, cambiar el tamaño, convertir, compilar (concat), convertir nuevamente, etc., entonces, ¿no sería más inteligente usar una codificación? preestablecido, como ultrafast
durante todas las recodificaciones hasta la última recodificación, y luego usar algo como slow
o veryslow
?
Hacer esto es exactamente lo mismo que volver a codificar slow
todo veryslow
el tiempo, la única diferencia es que uno me hace perder el tiempo y el otro hace un uso eficiente de mi tiempo. ¿Tengo este derecho?
¿O al hacer esto se perdería calidad?
Respuesta1
Está usted equivocado.
Cadaetapa de codificación utilizando un ajuste preestablecido "rápido" perderá más calidad que la misma pasada ejecutada en un ajuste preestablecido lento. La pérdida en cada etapa será acumulativa hasta el punto de que habrá alguna diferencia (potencialmente significativa) entre su método y una ejecución completa con ajustes preestablecidos más lentos.
El problema se conoce comopérdida de generación. A medida que ejecuta cada generación con menor calidad (preajuste más rápido), perderá más datos por generación. Los tamaños de archivo pueden ser similares en la etapa lenta final, especialmente si usa una configuración basada en la calidad, pero todo eso significa que se está esforzando más por ser más "fiel" a la entrada que se le proporciona. De hecho, se está esforzando más en reproducir el ruido y la pérdida de calidad introducidos en etapas anteriores.
Si está realizando conversiones de varias etapas, sería mucho mejor, en términos de velocidad y calidad, convertir a una salida sin comprimir desde la primera etapa, realizar todo el procesamiento en el video sin comprimir y luego realizar una etapa de compresión final.
De lo contrario, deberías intentar realizar tantos pasos de conversión de vídeo como sea posible en una sola ejecución del programa. Creo que eso ffmpeg
puede encadenar el recorte, el cambio de tamaño y la conversión en un solo paso, de modo que solo incurra en un único paso de pérdida de generación.
Que el tamaño del archivo sea igual o similar no significa casi nada, ya desperdiciaste más fidelidad visual en las ejecuciones anteriores y no se puede recuperar.