[webkit-changes] [WebKit/WebKit] e916da: Cherry-pick 260815 at main (5bd55e4bf534). https://bu...
Xabier Rodríguez
noreply at github.com
Wed Mar 15 12:56:40 PDT 2023
Branch: refs/heads/webkitglib/2.40
Home: https://github.com/WebKit/WebKit
Commit: e916da5a919ccec073b0f600f70a5dab69a8e288
https://github.com/WebKit/WebKit/commit/e916da5a919ccec073b0f600f70a5dab69a8e288
Author: Philippe Normand <philn at igalia.com>
Date: 2023-03-15 (Wed, 15 Mar 2023)
Changed paths:
M LayoutTests/platform/glib/TestExpectations
M LayoutTests/webrtc/video-replace-track.html
M Source/WebCore/Modules/mediastream/RTCRtpTransceiverBackend.h
M Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.cpp
M Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.h
M Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.cpp
M Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.h
M Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpSenderBackend.cpp
M Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpSenderBackend.h
M Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpTransceiverBackend.cpp
M Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpTransceiverBackend.h
M Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceGStreamer.cpp
M Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceGStreamer.h
M Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.cpp
M Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.h
M Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.cpp
M Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.h
Log Message:
-----------
Cherry-pick 260815 at main (5bd55e4bf534). https://bugs.webkit.org/show_bug.cgi?id=252820
[GStreamer][WebRTC] replaceTrack support
https://bugs.webkit.org/show_bug.cgi?id=252820
Reviewed by Xabier Rodriguez-Calvar.
In the GStreamer WebRTC backend `sender.replaceTrack()` is now supported. Under the hood, the
outgoing media source now has an input-selector just after the mediastreamsrc element. This allows
us to toggle between a mediastreamsrc and a fake source, eg, when replacing the track with null.
* LayoutTests/platform/glib/TestExpectations:
* LayoutTests/webrtc/video-replace-track.html:
* Source/WebCore/Modules/mediastream/RTCRtpTransceiverBackend.h:
* Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.cpp:
(WebCore::GStreamerMediaEndpoint::setConfiguration):
(WebCore::GStreamerMediaEndpoint::configureAndLinkSource):
(WebCore::GStreamerMediaEndpoint::requestPad):
(WebCore::GStreamerMediaEndpoint::addTrack):
(WebCore::GStreamerMediaEndpoint::removeTrack):
(WebCore::GStreamerMediaEndpoint::addTransceiver):
(WebCore::GStreamerMediaEndpoint::createLinkedSourceForTrack):
(WebCore::GStreamerMediaEndpoint::createDataChannel):
(WebCore::GStreamerMediaEndpoint::onNegotiationNeeded):
(WebCore::GStreamerMediaEndpoint::setSenderSourceFromTrack): Deleted.
* Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.h:
* Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.cpp:
(WebCore::GStreamerPeerConnectionBackend::createLinkedSourceForTrack):
(WebCore::GStreamerPeerConnectionBackend::setSenderSourceFromTrack): Deleted.
* Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.h:
* Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpSenderBackend.cpp:
(WebCore::ensureDebugCategoryIsRegistered):
(WebCore::GStreamerRtpSenderBackend::GStreamerRtpSenderBackend):
(WebCore::m_initData):
(WebCore::GStreamerRtpSenderBackend::startSource):
(WebCore::GStreamerRtpSenderBackend::stopSource):
(WebCore::GStreamerRtpSenderBackend::replaceTrack):
* Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpSenderBackend.h:
* Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpTransceiverBackend.cpp:
(WebCore::GStreamerRtpTransceiverBackend::stop):
(WebCore::GStreamerRtpTransceiverBackend::stopped const):
* Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpTransceiverBackend.h:
* Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceGStreamer.cpp:
(WebCore::RealtimeOutgoingAudioSourceGStreamer::setPayloadType):
(WebCore::RealtimeOutgoingAudioSourceGStreamer::codecPreferencesChanged):
(WebCore::RealtimeOutgoingAudioSourceGStreamer::connectFallbackSource):
(WebCore::RealtimeOutgoingAudioSourceGStreamer::unlinkOutgoingSource):
(WebCore::RealtimeOutgoingAudioSourceGStreamer::linkOutgoingSource):
* Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceGStreamer.h:
* Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.cpp:
(WebCore::RealtimeOutgoingMediaSourceGStreamer::RealtimeOutgoingMediaSourceGStreamer):
(WebCore::RealtimeOutgoingMediaSourceGStreamer::~RealtimeOutgoingMediaSourceGStreamer):
(WebCore::RealtimeOutgoingMediaSourceGStreamer::setSource):
(WebCore::RealtimeOutgoingMediaSourceGStreamer::start):
(WebCore::RealtimeOutgoingMediaSourceGStreamer::stop):
(WebCore::RealtimeOutgoingMediaSourceGStreamer::flush):
(WebCore::RealtimeOutgoingMediaSourceGStreamer::stopOutgoingSource):
(WebCore::RealtimeOutgoingMediaSourceGStreamer::initializeFromTrack):
* Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.h:
(WebCore::RealtimeOutgoingMediaSourceGStreamer::isStopped const):
(WebCore::RealtimeOutgoingMediaSourceGStreamer::connectFallbackSource):
(WebCore::RealtimeOutgoingMediaSourceGStreamer::unlinkOutgoingSource):
(WebCore::RealtimeOutgoingMediaSourceGStreamer::linkOutgoingSource):
* Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.cpp:
(WebCore::RealtimeOutgoingVideoSourceGStreamer::setPayloadType):
(WebCore::RealtimeOutgoingVideoSourceGStreamer::codecPreferencesChanged):
(WebCore::RealtimeOutgoingVideoSourceGStreamer::connectFallbackSource):
(WebCore::RealtimeOutgoingVideoSourceGStreamer::unlinkOutgoingSource):
(WebCore::RealtimeOutgoingVideoSourceGStreamer::linkOutgoingSource):
(WebCore::RealtimeOutgoingVideoSourceGStreamer::flush):
* Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.h:
Canonical link: https://commits.webkit.org/260815@main
Commit: 2e05d94353bde9daa6ac7d456d0c2ed1aed2529c
https://github.com/WebKit/WebKit/commit/2e05d94353bde9daa6ac7d456d0c2ed1aed2529c
Author: Xabier Rodriguez-Calvar <calvaris at igalia.com>
Date: 2023-03-15 (Wed, 15 Mar 2023)
Changed paths:
M Source/WebCore/platform/graphics/MediaPlayer.cpp
Log Message:
-----------
Cherry-pick 260793 at main (47d6f5f15fdd). https://bugs.webkit.org/show_bug.cgi?id=252838
Always sync player error message
https://bugs.webkit.org/show_bug.cgi?id=252838
Reviewed by Alicia Boya Garcia.
Patch by Eugene Mutavchi <Ievgen_Mutavchi at comcast.com>.
* Source/WebCore/platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::networkStateChanged):
Canonical link: https://commits.webkit.org/260793@main
Compare: https://github.com/WebKit/WebKit/compare/b8e17070678f...2e05d94353bd
More information about the webkit-changes
mailing list