Estoy tratando de usar ffmpeg para cortar archivos de video en momentos precisos. La ayuda de ffmpeg muestra una opción -timecode_frame_start para especificar el marco inicial, pero no puedo hacer que este comando funcione. El video resultante siempre comienza al comienzo del video original. Aquí hay un ejemplo del comando que estoy ejecutando:
ffmpeg -i input.mpg -acodec copy -vcodec copy -timecode_frame_start 200 -vframes 210 -n ouput.mpg
He movido la opción timecode_frame_start antes y después de las otras opciones sin ningún cambio en los resultados. ¿Hay alguna opción adicional que deba especificar? He probado varios formatos de archivo, mkv, avi, mp4, y no parece que el problema esté relacionado con el códec. Aquí hay un archivo que he probado:
http://www.seaotter.com/marine/movies/hermit-long-01.mpg
¿Me estoy perdiendo de algo?
melt
, vea Cortar con precisión archivos de video desde la línea de comandosRespuestas:
Acabo de enterarme de que
timecode_frame_start
no funciona así. La única forma de comenzar en cuadros específicos es convertir varios cuadros ass.ms
sintaxis, ohh:mm:ss.ms
. Entonces, si su video está a 25 fps, y desea comenzar a 133 cuadros, necesitaríaEntonces, corre
Tenga en cuenta que
-c:v copy
no es posible cortar fotogramas exactos con copia de flujo de bits ( ) ya que no todos los fotogramas están intracodificados y pueden ser independientes.-ss
siempre será con precisión de cuadro.Si desea codificar un número específico de cuadros, use
-frames:v
, por ejemplo:También tiene la opción de usar filtros de video , pero el soporte de audio puede no ser exacto. Y aparentemente, buscar en marcos todavía no es una característica. Puede seguir este hilo de la lista de correo de usuarios de FFmpeg para obtener más información:
fuente
select=gte(n\,100)
método funciona, pero la búsqueda está consumiendo el rendimiento. Si prueba al codificar solo 30 cuadros a la vez, cuanto más avance en el video, más tiempo tardará en completarse ffmpeg debido a la búsqueda.La opción
p.ej,corta el video de (incluye) fotograma 200 a (incluye) fotograma 300, el recuento de secuencias comienza desde 0.
fuente