Próbuję wyodrębnić napisy z filmów MP4 i MKV. Używam mp4box (na OS X), ale nie mogę zrozumieć, jak to działa.
Jakieś wskazówki?
Bezpłatny i wieloplatformowy MP4Box działa tylko z kontenerami MP4 lub 3GP. Możesz zainstalować go ze strony głównej. Najpierw spójrz na różne utwory i sprawdź, który identyfikator należy do utworu z napisami.
MP4Box -info input.mp4
Spójrz na identyfikator obok ścieżki napisów. Następnie, w oparciu o identyfikator ścieżki, <trackId>
którą chcesz wyodrębnić, wywołaj następujące polecenie:
MP4Box -raw <trackID> input.mp4
Lub, aby wyeksportować do powszechnie używanego formatu SRT:
MP4Box -srt <trackID> input.mp4
Aby wyodrębnić napisy z plików Matroska (MKV), potrzebujesz darmowych i otwartych mkvtoolnix
pakietów. Pochodzą one dla systemów Windows i Linux, a na komputerze Mac można zainstalować je poprzez Homebrew z brew install mkvtoolnix
.
Następnie sprawdź plik:
mkvmerge -i input.mkv
Spowoduje to wyświetlenie listy utworów, na przykład:
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)
Na podstawie identyfikatora ścieżki wywołaj następującą komendę, gdzie <trackID>
jest ta, którą zidentyfikowałeś powyżej. <output>
to tylko fikcyjne imię, możesz użyć dowolnego z nich.
mkvextract tracks input.mkv <trackID>:<output>.srt
W naszym przypadku byłoby to:
mkvextract tracks input.mkv 3:subs.srt
MP4Box
wgpac
pakiecie dostępnym przez apt-getMP4Box
do Arch Linux, musisz zainstalowaćgpac
z repozytorium społeczności.Oto rozwiązanie dla praktycznie każdego formatu plików obsługiwanego przez
ffmpeg
( obsługiwane są nawet pliki zdalne):ffmpeg
jest domyślnie obecny w nowszych wersjach Ubuntu, w systemach Mac OS X i Windows należy go zainstalować ( pobierając go z oficjalnej strony internetowej lub przez homebrew).Oto
video.mp4
źródłowa nazwa lokalnego lub zdalnego pliku wideo orazsubtitle.srt
wyjściowa nazwa pliku z napisami. Ważne jest, aby określić rozszerzenie pliku wyjściowego, ponieważffmpeg
wykrywa ono dokładnie to, co chcesz przez niego wyodrębnić. Oznacza to, że możesz określić.mp3
rozszerzenie pliku, aby wyodrębnić plik audio MP3 z pliku wideo, lub po prostu ustawić inny pojemnik wideo w celu konwersji między formatami.źródło