[Webkit-unassigned] [Bug 200615] FMP4 segments streamed into a MediaSource results in a black video.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Aug 27 09:54:01 PDT 2019


https://bugs.webkit.org/show_bug.cgi?id=200615

--- Comment #10 from Roman R. <roman at alax.info> ---
Apart from pausing transition, which is I think the key problem here, there is an audio bug. It's apparent browser problem since played asset contains video track only at all times but with certain probability (maybe 5-10%? not sure) there is an audio noise emitted by browser: it plays some junk.

Back to pausing. 

I gave a quick try to doing play() after every buffer (every frame in our case) appending. This sort of works because it keep browser in play state however I don't think this is how things are designed to work because this is associated with multiple problems: there is still transition through paused state and the browser is simply not being able to keep playing state reliably. Then at some times play would restart from position zero since presumably browser considers playback to be at the end of the stream. Then playing/paused state transition in first place is quite a heavy transition and I don't think it's even supposed to happen on per frame basis. Long story short, play() per frame/update does not look like a workaround. 

This would not happen if browser would simply stay playing without automatic fall into paused state. It is exactly the problem that it does not resume playback on HAVE_ENOUGH_DATA staying paused until interactive or programmatic play request.

We do have full responsibility for networking, we are fine with this. We supply individual video frames in appropriate format recognized by browser and crafted for low latency playback and everything we basically expect is to have media element extract ES, decoder frames and present them. 

Setting autoplay to true, by the way, does not seem to have any effect on described behavior. 

That is, when other browser change state to paused as a result of explicit pause() call, Safari seems to be additionally switching to paused state on reaching lack of media data during active playback. I think that in the end of the day this is what differs Safari's behavior and creates a problem for us trying to play live ultralow latency video via MSE.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20190827/94d225eb/attachment.html>


More information about the webkit-unassigned mailing list