Comando FFMPEG equivalente con clip sin pérdidas

Comando FFMPEG equivalente con clip sin pérdidas

Entonces, necesito ahorrar mucho espacio en mi disco duro, así que estoy codificando archivos PNG en videos sin pérdidas para poder eliminar los archivos PNG. Estoy codificando uno a 72 fps y otro ligeramente ralentizado a 60 fps.

Digamos que este es el comando que uso para codificar a 72 fps:

ffmpeg -framerate 72 -i png/%%06d.PNG -i audio/72.m4a^
 -c:v libx265 -c:a copy -pix_fmt yuv444p -crf:v 0^
 video/72.mkv

Este es el comando de 60 fps:

ffmpeg -framerate 60 -i png/%%06d.PNG -i audio/60.m4a^
 -c:v libx265 -c:a copy -pix_fmt yuv444p -crf:v 0^
 video/60.mkv

¿Cuál sería el equivalente del comando de 60 fps si quiero codificarlo desde el archivo de video de 72 fps en lugar de los archivos PNG ya que fueron eliminados, pero reducir la velocidad del video a 60 fps sin perder fotogramas? Si es posible, quiero decirle que codifique exactamente a 60 fps sin usar el setptsfiltro de video y/o copie la transmisión de video a una velocidad de cuadros diferente (lo cual no estoy seguro de si es posible).

Respuesta1

El comando básico es

ffmpeg -itsscale 1.2 -i video/72.mkv -i audio/60.m4a^
 -map 0:v -map 1 -c copy video/60.mp4

Esto utiliza la opción de entrada itsscalepara cambiar la escala de las marcas de tiempo, donde 1.2está la representación decimal de 72/60. Tenga en cuenta que esto no proporciona un nuevo valor de velocidad de fotogramas al escritor de salida, por lo que para formatos como MKV, mostrará la velocidad anterior con ffprobe, pero reproducirá a la nueva velocidad. Con MP4, deberías ver la nueva tarifa.

información relacionada