MSE bug with abort call on a SourceBuffer during a pending operation
| Originator: | inwoo1000 | ||
| Number: | rdar://28322158 | Date Originated: | 15-Sept-2016 |
| Status: | Open | Resolved: | |
| Product: | Safari | Product Version: | |
| Classification: | Other Bug | Reproducible: | Always |
Summary: Whenever we call abort on a SourceBuffer during a pending operation, subsequent calls to appendBuffer will result in an decode error (error code 3) on the video node. According to Jer: "In Safari, we reset the parser state to the NEED_INIT_SEGMENT state. We’d need to change our implementation (which would require a platform-level fix) to reset to the NEED_SEGMENT state." There is a similar bug report filed in 2014 (In SourceBufferPrivateAVFObjC::abort(), support reseting parser to the last appended initialization segment.): <https://bugs.webkit.org/show_bug.cgi?id=135164> Steps to Reproduce: https://jsfiddle.net/dbaulig/6nf3gue0/. Note that the URLs for the segments in the fiddle may expire after a while. So, might need fresh URL to replace. Expected Results: Segments appended to source buffer correctly. Actual Results: Encounter decode error (error code 3). Version: All Safari with MSE support.
Comments
Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!