Archivos MP4 y 3GP
El MP4Box gratuito y multiplataforma solo funciona con contenedores MP4 o 3GP. Puedes instalarlo desde la página de inicio. Primero, desea ver las diferentes pistas y ver qué ID pertenece a la pista de subtítulos.
MP4Box -info input.mp4
Mire la ID al lado de la pista de subtítulos. Luego, según el ID de pista <trackId>
desea extraer, llame al siguiente comando:
MP4Box -raw <trackID> input.mp4
O bien, para exportar al formato SRT de uso común:
MP4Box -srt <trackID> input.mp4
Archivos MKV
Para extraer subtítulos de archivos Matroska (MKV), necesita el código abierto y gratuito mkvtoolnix
paquetes Vienen para Windows y Linux, y en una Mac puedes instalarlos a través de Homebrew con brew install mkvtoolnix
.
Luego, inspeccione el archivo:
mkvmerge -i input.mkv
Esto listará las pistas, por ejemplo así:
File 'input.mkv': container: Matroska
Track ID 1: video (V_MPEG4/ISO/AVC)
Track ID 2: audio (A_AAC)
Track ID 3: subtitles (S_TEXT/UTF8)
Según el ID de la pista, llame al siguiente comando, donde <trackID>
es el que identificaste arriba. <output>
es solo un nombre ficticio, puedes usar el que quieras.
mkvextract tracks input.mkv <trackID>:<output>.srt
Entonces, en nuestro caso, eso habría sido:
mkvextract tracks input.mkv 3:subs.srt
Aquí hay una solución para prácticamente cualquier formato de archivo compatible con ffmpeg
(incluso se admiten archivos remotos):
ffmpeg -i video.mp4 subtitle.srt
ffmpeg
está presente en las versiones más nuevas de Ubuntu de forma predeterminada, para Mac OS X y Windows tendrá que instalarlo (descargándolo del sitio web oficial o a través de homebrew).
Aquí video.mp4
es el nombre del archivo de vídeo de origen local o remoto, y subtitle.srt
es el nombre del archivo de subtítulos de salida. Es importante especificar la extensión del archivo para la salida, ya que ffmpeg
detecta qué es exactamente lo que quieres extraer con él. Es decir, puede especificar .mp3
extensión de archivo para extraer audio mp3 de un archivo de video, o simplemente configure otro contenedor de video para convertir entre formatos.