Как сделать так, чтобы видео запускалось (декодировалось) в определенное время?(Базовое время декодирования медиа)
Я хотел бы сделать видео (фрагментированный mp4), чтобы начать в определенное время.
Например, если фрагмент фрагментированного видео предназначен для метки времени 4 с, я бы хотел, чтобы видео (fmp4) начиналось с 4 с, а видео до этого времени не было.
Я думаю, что "базовое время декодирования медиа" в пути атома moof / traf / tfdt - это время, когда фактически запускается fmp4, и я искал, как изменить поле, но информации не было.
Мой вопрос
Есть ли способ или инструмент для достижения того, что мне нужно?
1 ответ
Я решил проблему самостоятельно и опубликовал решение только для тех, у кого такая же проблема, как у меня.
Я только что прочитал файл видео атома в двоичном формате. В фрагментированных атомах видео есть несколько полей заголовка. Каждое поле имеет свое имя, размер и данные.
Вы можете прочитать файл в двоичном формате и, используя размер каждого поля в качестве смещений, вы можете легко читать и записывать или изменять данные любого поля.
Я сделал просто с несколькими строками кода Python.
Кроме того, если вы измените "базовое время декодирования медиа", вы сможете воспроизвести видео в нужное время.