WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
286750
[GStreamer] Handle pre-roll in setVisibleInViewport()
https://bugs.webkit.org/show_bug.cgi?id=286750
Summary
[GStreamer] Handle pre-roll in setVisibleInViewport()
Alicia Boya García
Reported
2025-01-30 08:14:48 PST
Inside the player suspension code in setVisibleInViewport(), the pipeline state is saved so that the pipeline can be set back to it when later resuming. However, the existing code was using the current state instead of the target state. As a consequence, if the pipeline was still prerolling, the pipeline would be set to READY instead of PAUSED on resume. This patch fixes that issue by reading both the current and pending state, and using the pending state if not VOID_PENDING. Removing this unexpected transition to READY has reduced the amount of crashes in presence of muted video and scrolling; however, I wouldn't go so far as blaming the crashes on this bug, as changing the pipeline state should not crash the pipeline.
Attachments
Add attachment
proposed patch, testcase, etc.
Alicia Boya García
Comment 1
2025-01-30 08:16:26 PST
Pull request:
https://github.com/WebKit/WebKit/pull/39765
EWS
Comment 2
2025-01-31 09:24:08 PST
Committed
289607@main
(aa09557dfddc): <
https://commits.webkit.org/289607@main
> Reviewed commits have been landed. Closing PR #39765 and removing active labels.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug