-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Description
Have you read the FAQ and checked for duplicate open issues?
Yes
Additional context
We (SKY) would like to propose a change to the streaming engine in where we would parse and surface prft
mp4 box information via a player event. We are happy to raise the PR.
Is your feature request related to a problem? Please describe.
We have a requirement for seeking to an exact date time within a live event (a goal for example).
To do this we need to know the program start date (ProducerReferenceTime).
We want to be able to deduce the program start date of a live event using PRFT
boxes.
Describe the solution you'd like
The PRFT
box contains ntp_timestamp
(a UTC time in NTP format corresponding to decoding_time) and media_time
(the same time as ntp_timestamp, but in the time units used for the reference track, and is measured on this media clock as the media is produced.), we can use these values in conjunction with the timescale to calculate the program start date.
Program start date = (ConvertToUTC(ntp_timestamp) - (media_time / timescale))
- Shaka will surface a new player event
prft
- The
prft
event will contain
{
wallclocktime, // a utc timestamp representation of the ntp_timestamp
mediaTime, // media_time
timescale, // the current timescale
}
- Only the first video PRFT box would need to be surfaced
- To know the timescale we would need to add this value to the segment reference.
- The feature will be subscribe-able via feature flag on the streaming config
example solution in our own fork
Describe alternatives you've considered
N/A