Как сделать так, чтобы видео запускалось (декодировалось) в определенное время?(Базовое время декодирования медиа)

Я хотел бы сделать видео (фрагментированный mp4), чтобы начать в определенное время.

Например, если фрагмент фрагментированного видео предназначен для метки времени 4 с, я бы хотел, чтобы видео (fmp4) начиналось с 4 с, а видео до этого времени не было.

Я думаю, что "базовое время декодирования медиа" в пути атома moof / traf / tfdt - это время, когда фактически запускается fmp4, и я искал, как изменить поле, но информации не было.

Мой вопрос

Есть ли способ или инструмент для достижения того, что мне нужно?

1 ответ

Решение

Я решил проблему самостоятельно и опубликовал решение только для тех, у кого такая же проблема, как у меня.

Я только что прочитал файл видео атома в двоичном формате. В фрагментированных атомах видео есть несколько полей заголовка. Каждое поле имеет свое имя, размер и данные.

Вы можете прочитать файл в двоичном формате и, используя размер каждого поля в качестве смещений, вы можете легко читать и записывать или изменять данные любого поля.

Я сделал просто с несколькими строками кода Python.

Кроме того, если вы измените "базовое время декодирования медиа", вы сможете воспроизвести видео в нужное время.

Другие вопросы по тегам