Как я видел в документе, pts_time
поле часто несет относительную PTS от запуска программы сети. Но я не знаю, как рассчитать время соединения в обычное время (dd/mm/yyyy hh:mm:ss.ms)
основываясь на этом pts_time
значение.
Например:
SCTE 35 сообщение с pts_time
значение составляет 58855 МГц. Как я могу рассчитать фактическое время, когда происходит событие соединения?
Из спецификации SCTE-35 🙁http://www.scte.org/documents/pdf/standards/Top%20Ten/ANSI_SCTE%2035%202013.pdf):
pts_time — 33-битное поле, которое указывает время с точки зрения тактов программы 90 кГц. Это поле, когда оно изменено параметром pts_adjustment, представляет время предполагаемой точки соединения
Поэтому это: 58855/90000 = 0,6539444444444444 секунд
Вам нужно применить pts_adjustment, и это относительно PTS
Как вы получаете входящее сообщение? Обычно SCTE35
Раздел информации о сращивании содержится внутри чего-то вроде SCTE30
Cue Request
сообщение.
Если вы изучите раздел 7.4.1 Стандарт SCTE30 ты найдешь:
время () —
— Это время выводится из splice_time () в splice_info_section () SCue 35 Cueing Message от монтажного устройства.
Если режим соединения компонентов используется в SCTE 35 splice_info_section,
время () будет относиться к времени соединения по умолчанию, подробно описанному в разделе
7.5.2.1 SCTE 35.
По сути, время UTC, содержащееся в запросе Cue, — это время, которое вы после (по крайней мере, так мы его реализовали).