Estoy tratando de extraer subtítulos de video como .srt
archivo, utilicé el siguiente comando:
FFMPEG -i mytestmovie.mkv -vn -an -codec:s:0.1 srt sub.srt
Pero recibí un error como opción no reconocida. codec:s:0:1
Entonces, ¿puede decirme el comando exacto y cómo extraer un subtítulo como .srt
archivo en video?
Respuestas:
Simple:
fuente
0:s:1
para descargar el segundo,0:s:2
para descargar el tercero, y así sucesivamente.-map
parámetros para cada archivo. También incluye-c copy
de forma que solo extrae el archivo sin tratar de procesarlo:ffmpeg -i Movie.mkv -c copy -map 0:s:0 subs.01.srt -c copy -map 0:s:1 subs.02.srt
. De todos modos, llevará mucho tiempo porque ffmpeg debe leer todo el archivo de video para encontrar todas las partes de las transmisiones de subtítulos.-codec:s:0:1
Es incorrecto. Si lo usa-codec:s:0
, ffmpeg usará el códec indicado para la primera secuencia de subtítulos que se pasa a la salida, si lo usa-codec:s:1
, lo usará para la segunda secuencia de subtítulos, etc.También puede usar
-codec:s
para seleccionar todas las secuencias de subtítulos de salida, o-codec:2
para seleccionar la tercera secuencia de salida, independientemente de lo que sea.Probablemente esté confundido porque la
-map
opción se comporta de una manera diferente; allí, debe seleccionar de qué entrada proviene la secuencia seleccionada. (por lo tanto,-map 0:s:0
tomaría la primera secuencia de subtítulos de la primera entrada y la enviaría a la salida). Sin embargo,-map
es para seleccionar qué secuencias desea tomar de las entradas; mientras que la mayoría de las otras opciones que usan la asignación de flujo son para usar en los flujos después de haber sido seleccionados (por lo que no es necesario especificar de qué archivo de entrada provienen), ya que se pasan a la salida.fuente
ffmpeg -i E:\Routine\routine.mkv -map 0:s:0 E:\Routine\sub.srt
(ffmpeg debería detectar que quieres subtítulos srt del nombre del archivo de salida)ffmpeg -i film.mp4 -vn -an -codec:s srt film.srt
eso debería copiar todos los subtítulos en el archivo srt.-codec:s
es igual a,-codec:s:0
por lo que no selecciona todos los subtítulos ... extraerá la primera pista de texto