Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 56bdb2ff425157ad756e07d981b002cb6dbc5c38
https://github.com/WebKit/WebKit/commit/56bdb2ff425157ad756e07d981b002cb6dbc5c38
Author: Jean-Yves Avenard <[email protected]>
Date: 2024-11-27 (Wed, 27 Nov 2024)
Changed paths:
M Source/WebCore/platform/graphics/cocoa/VideoMediaSampleRenderer.mm
Log Message:
-----------
Intermittent timeout with media/media-rvfc-paused-webm.html
https://bugs.webkit.org/show_bug.cgi?id=283746
rdar://140612348
Reviewed by Youenn Fablet.
Similar to the issue noticed in 286853@main
(When a AVSampleBufferVideoRenderer is used on two threads concurently,
where on one thread we call stopRequestingMediaData and on the other we
call enqueueMediaSample: a deadlock will occur.)
Here an issue was noticed where if we set the callback with
`requestMediaDataWhenReadyOnQueue`
on the main thread, while we enqueueSample at the same time in the decoder
workqueue
the callback is never called. As a consequence, the MediaPlayerPrivate stops
enqueing from frames to the VideoMediaSampleRenderer for decoding and we never
complete the seek.
As a workaround, we always dispatch a task on the dispatcher() to set the
request. It seems to avoid
the issue above.
Covered by existing tests.
* Source/WebCore/platform/graphics/cocoa/VideoMediaSampleRenderer.mm:
(WebCore::VideoMediaSampleRenderer::maybeBecomeReadyForMoreMediaData):
Canonical link: https://commits.webkit.org/287121@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes