Я должен признать, что я не знал, что FourCC tx3g
на самом деле стоял за. Кодек FFmpeg mov_text
и tx3g
то же самое: MPEG-4 Part 17 (Синхронизированный Текст).
единственное, что FFmpeg не поддерживает, - это пользовательский стиль для текста, который он встраивает. Если вы посмотрите на исходный код, вы обнаружите, что они применить стиль по умолчанию:
пока мы будем использовать фиксированный стиль по умолчанию. Когда мы добавим поддержку стилей, это будет генерируется из стиля ASS.
это, как говорится, свободный и кросс-платформенный MP4Box должен иметь возможность добавлять эти субтитры в файлы MP4, как вы просили. Даже со стилем. Как вы добавить их в файл зависит от того, как они закодированы в первую очередь. из документации:
нет официального текстового представления текстового потока. Сверх того, спецификация полагается на знании IsoMedia для большой части структурированное описание. Для того, чтобы помочь авторинга текстовых потоков, формат XML был разработан в GPAC, называется TTXT для timed-text – расширение используется будучи .ttxt
.
чтобы создать файл TTXT, вы можете сделать следующее:
найдите файл SRT или субтитров и запустите MP4Box -ttxt file.srt
. Это преобразует субтитры в формат TTXT.
MP4Box затем должен быть в состоянии добавить поток субтитров к существующему файлу MP4, как so:
MP4Box -add input.mp4 -add subtitles.ttxt output.mp4
важно, чтобы вы конвертировали файлы субтитров в TTXT раньше. Если они все еще закодированы в SUB или SRT, MP4Box просто выложит их с параметрами по умолчанию:
при импорте SRT или SUB файлов MP4Box выберет параметры макета по умолчанию, чтобы субтитры отображались внизу видео.