Як витягувати субтитри з фільмів MP4 та MKV


Відповіді:


47

MP4 та 3GP файли

Безкоштовний та крос-платформний MP4Box працює лише з контейнерами MP4 або 3GP. Ви можете встановити його з домашньої сторінки. По-перше, ви хочете переглянути різні треки і побачити, який ідентифікатор належить до доріжки субтитрів.

MP4Box -info input.mp4

Подивіться на ідентифікатор поруч із доріжкою субтитрів. Потім, виходячи з ідентифікатора треку, який <trackId>ви бажаєте витягнути, наберіть таку команду:

MP4Box -raw <trackID> input.mp4

Або експортувати до часто використовуваного формату СТО:

MP4Box -srt <trackID> input.mp4

Файли MKV

Для того, щоб витягти субтитри з файлів Matroska (MKV), вам потрібні безкоштовні та відкриті mkvtoolnixпакети. Вони приходять для Windows та Linux, а на Mac можна встановити їх через Homebrew за допомогою brew install mkvtoolnix.

Потім перевірте файл:

mkvmerge -i input.mkv

У цьому списку відобразяться записи, наприклад такі:

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)

Виходячи з ідентифікатора доріжки, викличте таку команду, де <trackID>та, яку ви вказали вище. <output>це лише манекенне ім'я, ви можете використовувати будь-яке, що хочете.

mkvextract tracks input.mkv <trackID>:<output>.srt

Отже, у нашому випадку це було б:

mkvextract tracks input.mkv 3:subs.srt

1
Це все працює і для Linux. Я знайшов MP4Boxв gpacпакет , доступний через APT-отримати
Ейдан

1
Щоб потрапити MP4Boxв Arch Linux, вам потрібно встановити gpacрепо з спільноти.
Альфредо Ернандес

11

Ось рішення практично для будь-якого файлового формату, який підтримується ffmpeg( підтримуються навіть віддалені файли):

ffmpeg -i video.mp4 subtitle.srt

ffmpegза замовчуванням присутній у нових версіях Ubuntu, для Mac OS X та Windows вам доведеться встановити його ( завантаживши його з офіційного веб-сайту або через домашню сторінку).

Тут video.mp4вказано місцеве або віддалене ім'я відеофайлу, а subtitle.srtтакож виводиться ім'я файлу субтитрів Важливо вказати розширення файлу для виводу, оскільки ffmpegвизначає, що саме ви хочете витягти ним. Тобто ви можете вказати .mp3розширення файлу для того, щоб витягти mp3-аудіо з відеофайлу, або просто встановити інший відеоконтейнер для перетворення між форматами.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.