Bug 265274

Summary: [MSE] MSE objects should be using thread-safe refcount
Product: WebKit Reporter: Jean-Yves Avenard [:jya] <jean-yves.avenard>
Component: MediaAssignee: Jean-Yves Avenard [:jya] <jean-yves.avenard>
Status: RESOLVED FIXED    
Severity: Normal CC: webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 264134    

Description Jean-Yves Avenard [:jya] 2023-11-22 20:58:52 PST
With MSE in a Worker, the threading model of the MSE objects will be changing.

Currently, all run in the main thread.

As we progress bug 264134, the threading model will become:

HTMLMediaElement, MediaPlayer, MediaPlayerPrivate run on the main thread (MediaPlayerPrivate run in the GPU process).

MediaSource and SourceBuffer will run on either the main thread or in a worker.

MediaSourcePrivate and SourceBufferPrivate will run in a dedicated WorkQueue (either in the content process or in the GPU Process).

Currently, MediaSource (a MediaSourcePrivateClient) and SourceBuffer (a SourceBufferPrivateClient) are using non-thread safe refcounting and supports weakptr.
MediaSourcePrivate and SourceBufferPrivate are using non-thread safe refcounting and supports weakptr.

We want to make them use thread-safe refcounting and thread safe weakptr.
Comment 1 Radar WebKit Bug Importer 2023-11-22 20:59:15 PST
<rdar://problem/118734205>
Comment 2 Jean-Yves Avenard [:jya] 2023-11-22 21:24:18 PST
Pull request: https://github.com/WebKit/WebKit/pull/20840
Comment 3 EWS 2023-11-25 06:54:26 PST
Committed 271111@main (3e109296984d): <https://commits.webkit.org/271111@main>

Reviewed commits have been landed. Closing PR #20840 and removing active labels.