Bug 262193

Summary: [GStreamer][MSE] Push STREAM_COLLECTION event after flushing
Product: WebKit Reporter: Enrique Ocaña <eocanha>
Component: MediaAssignee: Enrique Ocaña <eocanha>
Status: RESOLVED FIXED    
Severity: Normal CC: webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   

Description Enrique Ocaña 2023-09-27 09:10:41 PDT
Flushing the playback pipeline when very first buffers are being pushed downstream causes STREAM_COLLECTION event to be dropped before reaching decodebin3. As a result playback never starts after flush (buffer push return not-linked). This happens on initial seek sometimes, when it is triggered at the same time that first buffers push.

STREAM_COLLECTION is dropped by GstBaseParse element specificaly that is caching events and sending them with first frame. Unfortunately flushing will drop all pending events if first frame is not ready yet.

See: https://github.com/WebPlatformForEmbedded/WPEWebKit/pull/1197
Comment 1 Enrique Ocaña 2023-09-27 09:20:17 PDT
Pull request: https://github.com/WebKit/WebKit/pull/18285
Comment 2 EWS 2023-09-28 06:54:51 PDT
Committed 268582@main (4c9c58364145): <https://commits.webkit.org/268582@main>

Reviewed commits have been landed. Closing PR #18285 and removing active labels.
Comment 3 Radar WebKit Bug Importer 2023-09-28 06:55:15 PDT
<rdar://problem/116181141>