Я намагаюся витягнути субтитри з фільмів MP4 та MKV. Я використовую mp4box (на OS X), але не можу зрозуміти, як це працює.
Якісь підказки?
Я намагаюся витягнути субтитри з фільмів MP4 та MKV. Я використовую mp4box (на OS X), але не можу зрозуміти, як це працює.
Якісь підказки?
Відповіді:
Безкоштовний та крос-платформний MP4Box працює лише з контейнерами MP4 або 3GP. Ви можете встановити його з домашньої сторінки. По-перше, ви хочете переглянути різні треки і побачити, який ідентифікатор належить до доріжки субтитрів.
MP4Box -info input.mp4
Подивіться на ідентифікатор поруч із доріжкою субтитрів. Потім, виходячи з ідентифікатора треку, який <trackId>
ви бажаєте витягнути, наберіть таку команду:
MP4Box -raw <trackID> input.mp4
Або експортувати до часто використовуваного формату СТО:
MP4Box -srt <trackID> input.mp4
Для того, щоб витягти субтитри з файлів 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
MP4Box
в Arch Linux, вам потрібно встановити gpac
репо з спільноти.
Ось рішення практично для будь-якого файлового формату, який підтримується ffmpeg
( підтримуються навіть віддалені файли):
ffmpeg -i video.mp4 subtitle.srt
ffmpeg
за замовчуванням присутній у нових версіях Ubuntu, для Mac OS X та Windows вам доведеться встановити його ( завантаживши його з офіційного веб-сайту або через домашню сторінку).
Тут video.mp4
вказано місцеве або віддалене ім'я відеофайлу, а subtitle.srt
також виводиться ім'я файлу субтитрів Важливо вказати розширення файлу для виводу, оскільки ffmpeg
визначає, що саме ви хочете витягти ним. Тобто ви можете вказати .mp3
розширення файлу для того, щоб витягти mp3-аудіо з відеофайлу, або просто встановити інший відеоконтейнер для перетворення між форматами.
MP4Box
вgpac
пакет , доступний через APT-отримати