unifiedstreaming / fmp4-ingest

Repository on shared work on developing a fragmented MPEG-4 ingest specification
32 stars 11 forks source link

Low Latency #10

Open KevinCJohns opened 6 years ago

KevinCJohns commented 6 years ago

Given general industry interest in Low Latency Streaming, the Ingest Spec should touch on this. In particular how the encoder transfers data to the Media Processing Entity and how the transfer method impacts latency should be discussed. For example, the encoder should not wait till it has enough content for a full media segment (e.g., 10 seconds) before sending its data; rather it should start sending the media immediately so as to minimize latency.

unifiedstreaming commented 6 years ago

yes this is important , but with DASH ingest you can just use 1 second segments, I added this to the text

KevinCJohns commented 6 years ago

The use of 1 second segments is more on the player side. I was trying to think of how the ingest process impacts latency. For example, if the customer wants 1 second segments, we probably don't want the encoder to queue up the full segment before sending to the media processing entity. Rather it should start streaming the data as soon as it is ready. This shaves some time off the end to end delay. There may be other ideas as to how to get the content to the media processing entity faster...

unifiedstreaming commented 6 years ago

OK, we can keep the chunked transfers in the spec, this should help with low latency aswell, this will also help with backward compatibility with the azure ingest spec which will be nice to have also from a practical perspective