У меня есть контейнер .mov
с текстовой дорожкой QuickTime, которую QuickTime использует для отображения маркеров глав. В Руководстве пользователя QuickTime 7 Pro описание того, как это сделать, приведено в разделе «Редактирование и авторизация в QuickTime Pro» -> «Изменение свойств фильма» -> «Создание списка глав для фильма». Я не буду помещать все 20 шагов здесь.
Я хотел бы извлечь эту текстовую дорожку обратно из контейнера .mov
с помощью ffmpeg. ffmpeg сообщает об этих потоках в моем контейнере:
Chapter #0:0: start 0.000000, end 10.000000
Metadata:
title :
Chapter #0:1: start 10.000000, end 181.000000
Metadata:
title : Course Objectives
Chapter #0:2: start 181.000000, end 257.966667
Metadata:
title : References
Stream #0:0(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv), 1280x720 [SAR 1:1 DAR 16:9], 1489 kb/s, 29.89 fps, 30 tbr, 3k tbn, 60 tbc (default)
Metadata:
rotate : 0
creation_time : 2012-08-11T01:00:09.000000Z
handler_name : Apple Alias Data Handler
Side data:
displaymatrix: rotation of -0.00 degrees
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 191 kb/s (default)
Metadata:
rotate : 0
creation_time : 2012-08-11T01:00:09.000000Z
handler_name : Apple Alias Data Handler
Stream #0:2(eng): Data: bin_data (text / 0x74786574), 0 kb/s
Metadata:
rotate : 0
creation_time : 2012-08-11T01:00:09.000000Z
handler_name : Apple Alias Data Handler
Считает ли ffmpeg, что каждый маркер главы - это собственный поток? Какой тип селектора я должен использовать с map
чтобы выбрать текстовую дорожку? У нас есть v
для видео, s
для субтитров и т.д., Но ничего для глав.
В идеале я хотел бы вывести главы в формате WebVTT. Должен ли я просто указать имя выходного файла как out.webvtt
?
Выгрузка потока # 0:2 с помощью ffmpeg -i input_movie.mov -map 0:d:0 -c copy -f data text.bin
выдает некоторые двоичные данные, которые содержат названия глав выше. Тем не менее, я не могу найти метки времени в этих данных. Данные, конечно, не в том же формате, что и текстовый файл, который я использовал для ввода. Вот лучшая интерпретация, которую я мог придумать (создав двоичный шаблон для 010 Editor):