Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Gstreamer][WebRTC] webrtc/video-disabled-black.html fails #15978

Merged
merged 1 commit into from Aug 4, 2023

Conversation

philn
Copy link
Member

@philn philn commented Jul 21, 2023

d9e6730

[Gstreamer][WebRTC] webrtc/video-disabled-black.html fails
https://bugs.webkit.org/show_bug.cgi?id=254212
<rdar://problem/107046108>

Reviewed by Xabier Rodriguez-Calvar.

When disabling an incoming WebRTC track the mediastreamsrc now updates and propagates the
corresponding GstStream. This allows decodebin3 to properly reconfigure itself, by getting rid of
the decode chain (the disabled stream is not encoded).

This patch also disables the `parse-streams` property on urisourcebin for MSE and MediaStreams, it's
needed mostly for buffering adaptivedemux-based streams anyway. Parsing will then be done
downstream, by decodebin3, which also simplifies input stream reconfigurations that are now managed
internally by decodebin3.

* LayoutTests/platform/glib/TestExpectations:
* Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::configureElement):
* Source/WebCore/platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp:
(webkitMediaStreamNew):
(webkitMediaStreamSrcPostStreamCollection):

Canonical link: https://commits.webkit.org/266589@main

21b59d4

Misc iOS, tvOS & watchOS macOS Linux Windows
βœ… πŸ§ͺ style βœ… πŸ›  ios βœ… πŸ›  mac βœ… πŸ›  wpe βœ… πŸ›  wincairo
βœ… πŸ§ͺ bindings βœ… πŸ›  ios-sim βœ… πŸ›  mac-AS-debug βœ… πŸ§ͺ wpe-wk2
βœ… πŸ§ͺ webkitperl βœ… πŸ§ͺ ios-wk2 βœ… πŸ§ͺ api-mac βœ… πŸ›  gtk
βœ… πŸ§ͺ ios-wk2-wpt βœ… πŸ§ͺ mac-wk1 βœ… πŸ§ͺ gtk-wk2
βœ… πŸ§ͺ api-ios βœ… πŸ§ͺ mac-wk2 ❌ πŸ§ͺ api-gtk
βœ… πŸ›  tv βœ… πŸ§ͺ mac-AS-debug-wk2
βœ… πŸ›  tv-sim
βœ… πŸ›  πŸ§ͺ merge βœ… πŸ›  watch
βœ… πŸ›  watch-sim

@philn philn self-assigned this Jul 21, 2023
@philn philn added Platform Portability improvements and other general platform improvements not driven directly by site bugs. skip-ews Applied to prevent a change from being run on EWS labels Jul 21, 2023
@philn philn requested a review from calvaris July 21, 2023 09:16
@philn
Copy link
Member Author

philn commented Jul 21, 2023

Draft due to dependency on #15977

@philn philn removed the skip-ews Applied to prevent a change from being run on EWS label Jul 21, 2023
@philn philn marked this pull request as ready for review July 21, 2023 10:56
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Jul 21, 2023
@philn philn marked this pull request as draft July 21, 2023 14:35
@philn philn removed the merging-blocked Applied to prevent a change from being merged label Jul 21, 2023
@philn philn marked this pull request as ready for review July 21, 2023 15:43
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Jul 21, 2023
@philn
Copy link
Member Author

philn commented Jul 22, 2023

The test failures exposed another GStreamer bug, MR -> https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5089

@philn philn removed the merging-blocked Applied to prevent a change from being merged label Jul 27, 2023
@philn philn added the skip-ews Applied to prevent a change from being run on EWS label Jul 27, 2023
@philn philn removed the skip-ews Applied to prevent a change from being run on EWS label Aug 4, 2023
@philn philn added the merge-queue Applied to send a pull request to merge-queue label Aug 4, 2023
https://bugs.webkit.org/show_bug.cgi?id=254212
<rdar://problem/107046108>

Reviewed by Xabier Rodriguez-Calvar.

When disabling an incoming WebRTC track the mediastreamsrc now updates and propagates the
corresponding GstStream. This allows decodebin3 to properly reconfigure itself, by getting rid of
the decode chain (the disabled stream is not encoded).

This patch also disables the `parse-streams` property on urisourcebin for MSE and MediaStreams, it's
needed mostly for buffering adaptivedemux-based streams anyway. Parsing will then be done
downstream, by decodebin3, which also simplifies input stream reconfigurations that are now managed
internally by decodebin3.

* LayoutTests/platform/glib/TestExpectations:
* Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::configureElement):
* Source/WebCore/platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp:
(webkitMediaStreamNew):
(webkitMediaStreamSrcPostStreamCollection):

Canonical link: https://commits.webkit.org/266589@main
@webkit-commit-queue
Copy link
Collaborator

Committed 266589@main (d9e6730): https://commits.webkit.org/266589@main

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

@webkit-commit-queue webkit-commit-queue removed the merge-queue Applied to send a pull request to merge-queue label Aug 4, 2023
@webkit-commit-queue webkit-commit-queue merged commit d9e6730 into WebKit:main Aug 4, 2023
@philn philn deleted the eng/254212 branch August 4, 2023 17:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Platform Portability improvements and other general platform improvements not driven directly by site bugs.
Projects
None yet
5 participants