Bug 227865 - [MSE] SourceBuffer.appendState is only ever WaitingForSegment
Summary: [MSE] SourceBuffer.appendState is only ever WaitingForSegment
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Media (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2021-07-11 20:04 PDT by Jean-Yves Avenard [:jya]
Modified: 2021-07-11 20:04 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jean-Yves Avenard [:jya] 2021-07-11 20:04:14 PDT
Per MSE spec, a source buffer has a parsing state attribute that can be of any 3 values: WAITING_FOR_SEGMENT, PARSING_INIT_SEGMENT, PARSING_MEDIA_SEGMENT
https://w3c.github.io/media-source/#sourcebuffer-segment-parser-loop

This internal state is used to safeguard incorrectly calling SourceBuffer.setAppendMode [1] or modifying SourceBuffer.timeStampOffset [2] while we're in the middle of processing a media segment and to throw an exception if we are.
https://w3c.github.io/media-source/#dom-sourcebuffer-mode
https://w3c.github.io/media-source/#dom-sourcebuffer-timestampoffset


However, in the current code, SourceBuffer::m_appendState is only ever set to AppendStateType::WaitingForSegment

The state value should be updated in the Segment Parser Loop that is handled by SourceBufferPrivate but isn't.
Comment 1 Radar WebKit Bug Importer 2021-07-11 20:04:33 PDT
<rdar://problem/80445668>