streamroot / fmse

Media Source Extensions polyfill in Flash
http://www.streamroot.io
16 stars 2 forks source link

Reduce complexity due to seeks in append / transmux pipline #5

Open AxelDelmas opened 8 years ago

AxelDelmas commented 8 years ago

Seek adds a lot of complexity in the appending/transmuxing pipeline: NetStream has limitations and will crash quite spectacularly if you append segments out of order. That's why we need to make sure every segment is properly flushed, at every step of the pipeline, and we added a lot of state variables along the way to handle situations like: "do I need to discard this segment when it comes out of the worker?" It would be great to improve the SourceBuffer.as class to handle segments out of order, from disjoint time intervals.

We would need to account for #4 : if we don't be careful about this some segments could have their first frames squashed if they were appended during a seek