The current REC MSE spec leaves much to the impl w.r.t. buffering logic (such as dynamic computation of range adjacency thresholds/logic, and
(at least in multi-track SourceBuffers), range start times.
This makes it difficult for Chrome devs or even web authors unfamiliar with Chrome's implementation to understand/code review/debug the impl.
The recent addition of buffering by PTS has further complicated the impl logic around the latter.
This bug tracks adding some documentation describing the choices the impl has made (both to comply with spec, and specifics of impl around areas where the spec leaves room for impl variance).
Examples:
* FrameProcessor -> SBS communication of "coded frame group starting", and SBS usage of that
* SBRByPts and SAP-Type-2
* SBS |track_buffer_| management
* audio splicing, audio discard
It would be good to include a primer on the impl's object model, too.
This documentation would also assist finding areas where the spec might need better clarity (perhaps in vNext) to improve interop.
Comment 1 by sheriffbot@chromium.org
, Dec 14Status: Untriaged (was: Available)