Diff
Modified: trunk/LayoutTests/ChangeLog (272599 => 272600)
--- trunk/LayoutTests/ChangeLog 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/LayoutTests/ChangeLog 2021-02-09 20:21:09 UTC (rev 272600)
@@ -1,3 +1,12 @@
+2021-02-09 Peng Liu <[email protected]>
+
+ [GPUP] Test media/track/audio-track-add-remove.html crashes on debug bots
+ https://bugs.webkit.org/show_bug.cgi?id=221595
+
+ Reviewed by Eric Carlson.
+
+ * gpu-process/TestExpectations:
+
2021-02-09 Aditya Keerthi <[email protected]>
[iOS][FCR] Use UIColorPickerViewController for color inputs
Modified: trunk/LayoutTests/gpu-process/TestExpectations (272599 => 272600)
--- trunk/LayoutTests/gpu-process/TestExpectations 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/LayoutTests/gpu-process/TestExpectations 2021-02-09 20:21:09 UTC (rev 272600)
@@ -324,7 +324,6 @@
media/modern-media-controls/media-controller/media-controller-fullscreen-change.html [ Failure ]
media/modern-media-controls/media-controller/media-controller-inline-to-fullscreen-to-pip-to-inline.html [ Timeout ]
media/modern-media-controls/mute-button/mute-button.html [ Failure ]
-media/track/audio-track.html [ Crash ]
media/video-as-img-output-pts.html [ Timeout ]
media/video-canvas-createPattern.html [ Crash ]
media/video-controller-child-rate.html [ Timeout ]
Modified: trunk/Source/WebKit/CMakeLists.txt (272599 => 272600)
--- trunk/Source/WebKit/CMakeLists.txt 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/CMakeLists.txt 2021-02-09 20:21:09 UTC (rev 272600)
@@ -125,7 +125,6 @@
GPUProcess/graphics/RemoteRenderingBackend
GPUProcess/media/RemoteAudioDestinationManager
- GPUProcess/media/RemoteAudioTrackProxy
GPUProcess/media/RemoteAudioSessionProxy
GPUProcess/media/RemoteCDMFactoryProxy
GPUProcess/media/RemoteCDMInstanceProxy
@@ -140,8 +139,6 @@
GPUProcess/media/RemoteMediaResourceManager
GPUProcess/media/RemoteMediaSourceProxy
GPUProcess/media/RemoteSourceBufferProxy
- GPUProcess/media/RemoteTextTrackProxy
- GPUProcess/media/RemoteVideoTrackProxy
GPUProcess/webrtc/LibWebRTCCodecsProxy
GPUProcess/webrtc/RemoteAudioMediaStreamTrackRenderer
Modified: trunk/Source/WebKit/ChangeLog (272599 => 272600)
--- trunk/Source/WebKit/ChangeLog 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/ChangeLog 2021-02-09 20:21:09 UTC (rev 272600)
@@ -1,3 +1,71 @@
+2021-02-09 Peng Liu <[email protected]>
+
+ [GPUP] Test media/track/audio-track-add-remove.html crashes on debug bots
+ https://bugs.webkit.org/show_bug.cgi?id=221595
+
+ Reviewed by Eric Carlson.
+
+ Under stress tests, instances of RemoteAudioTrackProxy, RemoteTextTrackProxy, and
+ RemoteVideoTrackProxy might be destroyed in the GPU process when an IPC message
+ comes and leads to an assertion failure.
+
+ To fix the assertion failure, this patches removes three IPC message receivers in
+ the GPU process:
+ - RemoteAudioTrackProxy
+ - RemoteTextTrackProxy
+ - RemoteVideoTrackProxy
+ Instead of using these three message receivers, this patch adds three new IPC messages
+ to RemoteMediaPlayerProxy:
+ - AudioTrackSetEnabled
+ - TextTrackSetMode
+ - VideoTrackSetSelected
+
+ No new tests, fixing following tests:
+ - media/track/audio-track-add-remove.html
+ - media/track/audio-track.html
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * GPUProcess/media/RemoteAudioTrackProxy.cpp:
+ (WebKit::RemoteAudioTrackProxy::RemoteAudioTrackProxy):
+ (WebKit::RemoteAudioTrackProxy::~RemoteAudioTrackProxy):
+ * GPUProcess/media/RemoteAudioTrackProxy.h:
+ * GPUProcess/media/RemoteAudioTrackProxy.messages.in: Removed.
+ * GPUProcess/media/RemoteMediaPlayerProxy.cpp:
+ (WebKit::RemoteMediaPlayerProxy::audioTrackSetEnabled):
+ (WebKit::RemoteMediaPlayerProxy::videoTrackSetSelected):
+ (WebKit::RemoteMediaPlayerProxy::textTrackSetMode):
+ * GPUProcess/media/RemoteMediaPlayerProxy.h:
+ * GPUProcess/media/RemoteMediaPlayerProxy.messages.in:
+ * GPUProcess/media/RemoteTextTrackProxy.cpp:
+ (WebKit::RemoteTextTrackProxy::RemoteTextTrackProxy):
+ (WebKit::RemoteTextTrackProxy::~RemoteTextTrackProxy):
+ * GPUProcess/media/RemoteTextTrackProxy.h:
+ * GPUProcess/media/RemoteTextTrackProxy.messages.in: Removed.
+ * GPUProcess/media/RemoteVideoTrackProxy.cpp:
+ (WebKit::RemoteVideoTrackProxy::RemoteVideoTrackProxy):
+ (WebKit::RemoteVideoTrackProxy::~RemoteVideoTrackProxy):
+ * GPUProcess/media/RemoteVideoTrackProxy.h:
+ * GPUProcess/media/RemoteVideoTrackProxy.messages.in: Removed.
+ * WebKit.xcodeproj/project.pbxproj:
+ * WebProcess/GPU/media/AudioTrackPrivateRemote.cpp:
+ (WebKit::AudioTrackPrivateRemote::AudioTrackPrivateRemote):
+ (WebKit::AudioTrackPrivateRemote::setEnabled):
+ * WebProcess/GPU/media/AudioTrackPrivateRemote.h:
+ * WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp:
+ (WebKit::MediaPlayerPrivateRemote::addRemoteAudioTrack):
+ (WebKit::MediaPlayerPrivateRemote::addRemoteTextTrack):
+ (WebKit::MediaPlayerPrivateRemote::addRemoteVideoTrack):
+ * WebProcess/GPU/media/TextTrackPrivateRemote.cpp:
+ (WebKit::TextTrackPrivateRemote::TextTrackPrivateRemote):
+ (WebKit::TextTrackPrivateRemote::setMode):
+ * WebProcess/GPU/media/TextTrackPrivateRemote.h:
+ * WebProcess/GPU/media/VideoTrackPrivateRemote.cpp:
+ (WebKit::VideoTrackPrivateRemote::VideoTrackPrivateRemote):
+ (WebKit::VideoTrackPrivateRemote::setSelected):
+ * WebProcess/GPU/media/VideoTrackPrivateRemote.h:
+ (WebKit::VideoTrackPrivateRemote::create):
+
2021-02-09 Chris Dumez <[email protected]>
Unreviewed, fix build with the latest SDK.
Modified: trunk/Source/WebKit/DerivedSources.make (272599 => 272600)
--- trunk/Source/WebKit/DerivedSources.make 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/DerivedSources.make 2021-02-09 20:21:09 UTC (rev 272600)
@@ -248,7 +248,6 @@
GPUProcess/media/RemoteCDMProxy \
GPUProcess/media/ios/RemoteMediaSessionHelperProxy \
GPUProcess/media/RemoteAudioDestinationManager \
- GPUProcess/media/RemoteAudioTrackProxy \
GPUProcess/media/RemoteCDMFactoryProxy \
GPUProcess/media/RemoteCDMInstanceProxy \
GPUProcess/media/RemoteLegacyCDMProxy \
@@ -258,8 +257,6 @@
GPUProcess/media/RemoteMediaResourceManager \
GPUProcess/media/RemoteMediaSourceProxy \
GPUProcess/media/RemoteSourceBufferProxy \
- GPUProcess/media/RemoteTextTrackProxy \
- GPUProcess/media/RemoteVideoTrackProxy \
WebAuthnProcess/WebAuthnConnectionToWebProcess \
WebAuthnProcess/WebAuthnProcess \
#
Modified: trunk/Source/WebKit/GPUProcess/media/RemoteAudioTrackProxy.cpp (272599 => 272600)
--- trunk/Source/WebKit/GPUProcess/media/RemoteAudioTrackProxy.cpp 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/GPUProcess/media/RemoteAudioTrackProxy.cpp 2021-02-09 20:21:09 UTC (rev 272600)
@@ -32,7 +32,6 @@
#include "Connection.h"
#include "GPUConnectionToWebProcess.h"
#include "MediaPlayerPrivateRemoteMessages.h"
-#include "RemoteAudioTrackProxyMessages.h"
#include "RemoteMediaPlayerProxy.h"
#include "TrackPrivateRemoteConfiguration.h"
@@ -47,13 +46,11 @@
, m_mediaPlayerIdentifier(mediaPlayerIdentifier)
{
m_trackPrivate->setClient(this);
- m_connectionToWebProcess.messageReceiverMap().addMessageReceiver(Messages::RemoteAudioTrackProxy::messageReceiverName(), m_identifier.toUInt64(), *this);
m_connectionToWebProcess.connection().send(Messages::MediaPlayerPrivateRemote::AddRemoteAudioTrack(m_identifier, configuration()), m_mediaPlayerIdentifier);
}
RemoteAudioTrackProxy::~RemoteAudioTrackProxy()
{
- m_connectionToWebProcess.messageReceiverMap().removeMessageReceiver(Messages::RemoteAudioTrackProxy::messageReceiverName(), m_identifier.toUInt64());
}
TrackPrivateRemoteConfiguration& RemoteAudioTrackProxy::configuration()
Modified: trunk/Source/WebKit/GPUProcess/media/RemoteAudioTrackProxy.h (272599 => 272600)
--- trunk/Source/WebKit/GPUProcess/media/RemoteAudioTrackProxy.h 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/GPUProcess/media/RemoteAudioTrackProxy.h 2021-02-09 20:21:09 UTC (rev 272600)
@@ -47,8 +47,7 @@
class RemoteAudioTrackProxy final
: public ThreadSafeRefCounted<RemoteAudioTrackProxy, WTF::DestructionThread::Main>
- , private WebCore::AudioTrackPrivateClient
- , private IPC::MessageReceiver {
+ , private WebCore::AudioTrackPrivateClient {
public:
static Ref<RemoteAudioTrackProxy> create(GPUConnectionToWebProcess& connectionToWebProcess, TrackPrivateRemoteIdentifier identifier, WebCore::AudioTrackPrivate& trackPrivate, WebCore::MediaPlayerIdentifier mediaPlayerIdentifier)
{
@@ -58,6 +57,7 @@
virtual ~RemoteAudioTrackProxy();
TrackPrivateRemoteIdentifier identifier() const { return m_identifier; };
+ void setEnabled(bool enabled) { m_trackPrivate->setEnabled(enabled); }
private:
RemoteAudioTrackProxy(GPUConnectionToWebProcess&, TrackPrivateRemoteIdentifier, WebCore::AudioTrackPrivate&, WebCore::MediaPlayerIdentifier);
@@ -71,9 +71,6 @@
void languageChanged(const AtomString&) final;
void willRemove() final;
- void didReceiveMessage(IPC::Connection&, IPC::Decoder&) final;
- void setEnabled(bool enabled) { m_trackPrivate->setEnabled(enabled); }
-
TrackPrivateRemoteConfiguration& configuration();
void configurationChanged();
Deleted: trunk/Source/WebKit/GPUProcess/media/RemoteAudioTrackProxy.messages.in (272599 => 272600)
--- trunk/Source/WebKit/GPUProcess/media/RemoteAudioTrackProxy.messages.in 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/GPUProcess/media/RemoteAudioTrackProxy.messages.in 2021-02-09 20:21:09 UTC (rev 272600)
@@ -1,34 +0,0 @@
-/*
- * Copyright (C) 2020 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#pragma once
-
-#if ENABLE(GPU_PROCESS)
-
-messages -> RemoteAudioTrackProxy NotRefCounted {
- SetEnabled(bool enabled)
-}
-
-#endif
Modified: trunk/Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.cpp (272599 => 272600)
--- trunk/Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.cpp 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.cpp 2021-02-09 20:21:09 UTC (rev 272600)
@@ -484,6 +484,16 @@
return identifier;
}
+void RemoteMediaPlayerProxy::audioTrackSetEnabled(const TrackPrivateRemoteIdentifier& identifier, bool enabled)
+{
+ for (auto& track : m_audioTracks.values()) {
+ if (track->identifier() == identifier) {
+ track->setEnabled(enabled);
+ return;
+ }
+ }
+}
+
TrackPrivateRemoteIdentifier RemoteMediaPlayerProxy::addRemoteVideoTrackProxy(WebCore::VideoTrackPrivate& track)
{
#if !RELEASE_LOG_DISABLED
@@ -495,6 +505,16 @@
return identifier;
}
+void RemoteMediaPlayerProxy::videoTrackSetSelected(const TrackPrivateRemoteIdentifier& identifier, bool selected)
+{
+ for (auto& track : m_videoTracks.values()) {
+ if (track->identifier() == identifier) {
+ track->setSelected(selected);
+ return;
+ }
+ }
+}
+
TrackPrivateRemoteIdentifier RemoteMediaPlayerProxy::addRemoteTextTrackProxy(WebCore::InbandTextTrackPrivate& track)
{
#if !RELEASE_LOG_DISABLED
@@ -506,6 +526,16 @@
return identifier;
}
+void RemoteMediaPlayerProxy::textTrackSetMode(const TrackPrivateRemoteIdentifier& identifier, WebCore::InbandTextTrackPrivate::Mode mode)
+{
+ for (auto& track : m_textTracks.values()) {
+ if (track->identifier() == identifier) {
+ track->setMode(mode);
+ return;
+ }
+ }
+}
+
void RemoteMediaPlayerProxy::mediaPlayerDidAddAudioTrack(WebCore::AudioTrackPrivate& track)
{
addRemoteAudioTrackProxy(track);
Modified: trunk/Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.h (272599 => 272600)
--- trunk/Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.h 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.h 2021-02-09 20:21:09 UTC (rev 272600)
@@ -181,6 +181,10 @@
void notifyTrackModeChanged();
void tracksChanged();
+ void audioTrackSetEnabled(const TrackPrivateRemoteIdentifier&, bool);
+ void videoTrackSetSelected(const TrackPrivateRemoteIdentifier&, bool);
+ void textTrackSetMode(const TrackPrivateRemoteIdentifier&, WebCore::InbandTextTrackPrivate::Mode);
+
void performTaskAtMediaTime(const MediaTime&, WallTime, CompletionHandler<void(Optional<MediaTime>)>&&);
void wouldTaintOrigin(struct WebCore::SecurityOriginData, CompletionHandler<void(Optional<bool>)>&&);
void setShouldUpdatePlaybackMetrics(bool);
Modified: trunk/Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.messages.in (272599 => 272600)
--- trunk/Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.messages.in 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.messages.in 2021-02-09 20:21:09 UTC (rev 272600)
@@ -105,6 +105,10 @@
NotifyTrackModeChanged()
TracksChanged()
+ AudioTrackSetEnabled(WebKit::TrackPrivateRemoteIdentifier identifier, bool enabled)
+ VideoTrackSetSelected(WebKit::TrackPrivateRemoteIdentifier identifier, bool selected)
+ TextTrackSetMode(WebKit::TrackPrivateRemoteIdentifier identifier, enum:uint8_t WebCore::InbandTextTrackPrivate::Mode mode)
+
#if ENABLE(WIRELESS_PLAYBACK_TARGET)
SetWirelessPlaybackTarget(WebCore::MediaPlaybackTargetContext target)
#endif
Modified: trunk/Source/WebKit/GPUProcess/media/RemoteTextTrackProxy.cpp (272599 => 272600)
--- trunk/Source/WebKit/GPUProcess/media/RemoteTextTrackProxy.cpp 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/GPUProcess/media/RemoteTextTrackProxy.cpp 2021-02-09 20:21:09 UTC (rev 272600)
@@ -34,7 +34,6 @@
#include "GPUConnectionToWebProcess.h"
#include "MediaPlayerPrivateRemoteMessages.h"
#include "RemoteMediaPlayerProxy.h"
-#include "RemoteTextTrackProxyMessages.h"
#include "TextTrackPrivateRemoteConfiguration.h"
#include "WebCoreArgumentCoders.h"
#include <WebCore/ISOVTTCue.h>
@@ -51,13 +50,11 @@
, m_mediaPlayerIdentifier(mediaPlayerIdentifier)
{
m_trackPrivate->setClient(this);
- m_connectionToWebProcess.messageReceiverMap().addMessageReceiver(Messages::RemoteTextTrackProxy::messageReceiverName(), m_identifier.toUInt64(), *this);
m_connectionToWebProcess.connection().send(Messages::MediaPlayerPrivateRemote::AddRemoteTextTrack(m_identifier, configuration()), m_mediaPlayerIdentifier);
}
RemoteTextTrackProxy::~RemoteTextTrackProxy()
{
- m_connectionToWebProcess.messageReceiverMap().removeMessageReceiver(Messages::RemoteTextTrackProxy::messageReceiverName(), m_identifier.toUInt64());
}
TextTrackPrivateRemoteConfiguration& RemoteTextTrackProxy::configuration()
Modified: trunk/Source/WebKit/GPUProcess/media/RemoteTextTrackProxy.h (272599 => 272600)
--- trunk/Source/WebKit/GPUProcess/media/RemoteTextTrackProxy.h 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/GPUProcess/media/RemoteTextTrackProxy.h 2021-02-09 20:21:09 UTC (rev 272600)
@@ -47,8 +47,7 @@
class RemoteTextTrackProxy final
: public ThreadSafeRefCounted<RemoteTextTrackProxy, WTF::DestructionThread::Main>
- , private WebCore::InbandTextTrackPrivateClient
- , private IPC::MessageReceiver {
+ , private WebCore::InbandTextTrackPrivateClient {
public:
static Ref<RemoteTextTrackProxy> create(GPUConnectionToWebProcess& connectionToWebProcess, TrackPrivateRemoteIdentifier identifier, WebCore::InbandTextTrackPrivate& trackPrivate, WebCore::MediaPlayerIdentifier mediaPlayerIdentifier)
{
@@ -58,6 +57,7 @@
virtual ~RemoteTextTrackProxy();
TrackPrivateRemoteIdentifier identifier() const { return m_identifier; }
+ void setMode(WebCore::InbandTextTrackPrivate::Mode mode) { m_trackPrivate->setMode(mode); }
private:
RemoteTextTrackProxy(GPUConnectionToWebProcess&, TrackPrivateRemoteIdentifier, WebCore::InbandTextTrackPrivate&, WebCore::MediaPlayerIdentifier);
@@ -85,9 +85,6 @@
void languageChanged(const AtomString&) final;
void willRemove() final;
- void didReceiveMessage(IPC::Connection&, IPC::Decoder&) final;
- void setMode(WebCore::InbandTextTrackPrivate::Mode mode) { m_trackPrivate->setMode(mode); }
-
TextTrackPrivateRemoteConfiguration& configuration();
void configurationChanged();
Deleted: trunk/Source/WebKit/GPUProcess/media/RemoteTextTrackProxy.messages.in (272599 => 272600)
--- trunk/Source/WebKit/GPUProcess/media/RemoteTextTrackProxy.messages.in 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/GPUProcess/media/RemoteTextTrackProxy.messages.in 2021-02-09 20:21:09 UTC (rev 272600)
@@ -1,34 +0,0 @@
-/*
- * Copyright (C) 2020 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#pragma once
-
-#if ENABLE(GPU_PROCESS)
-
-messages -> RemoteTextTrackProxy NotRefCounted {
- SetMode(enum:uint8_t WebCore::InbandTextTrackPrivate::Mode mode)
-}
-
-#endif
Modified: trunk/Source/WebKit/GPUProcess/media/RemoteVideoTrackProxy.cpp (272599 => 272600)
--- trunk/Source/WebKit/GPUProcess/media/RemoteVideoTrackProxy.cpp 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/GPUProcess/media/RemoteVideoTrackProxy.cpp 2021-02-09 20:21:09 UTC (rev 272600)
@@ -33,7 +33,6 @@
#include "GPUConnectionToWebProcess.h"
#include "MediaPlayerPrivateRemoteMessages.h"
#include "RemoteMediaPlayerProxy.h"
-#include "RemoteVideoTrackProxyMessages.h"
#include "TrackPrivateRemoteConfiguration.h"
namespace WebKit {
@@ -47,13 +46,11 @@
, m_mediaPlayerIdentifier(mediaPlayerIdentifier)
{
m_trackPrivate->setClient(this);
- m_connectionToWebProcess.messageReceiverMap().addMessageReceiver(Messages::RemoteVideoTrackProxy::messageReceiverName(), m_identifier.toUInt64(), *this);
m_connectionToWebProcess.connection().send(Messages::MediaPlayerPrivateRemote::AddRemoteVideoTrack(m_identifier, configuration()), m_mediaPlayerIdentifier);
}
RemoteVideoTrackProxy::~RemoteVideoTrackProxy()
{
- m_connectionToWebProcess.messageReceiverMap().removeMessageReceiver(Messages::RemoteVideoTrackProxy::messageReceiverName(), m_identifier.toUInt64());
}
TrackPrivateRemoteConfiguration& RemoteVideoTrackProxy::configuration()
Modified: trunk/Source/WebKit/GPUProcess/media/RemoteVideoTrackProxy.h (272599 => 272600)
--- trunk/Source/WebKit/GPUProcess/media/RemoteVideoTrackProxy.h 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/GPUProcess/media/RemoteVideoTrackProxy.h 2021-02-09 20:21:09 UTC (rev 272600)
@@ -47,8 +47,7 @@
class RemoteVideoTrackProxy final
: public ThreadSafeRefCounted<RemoteVideoTrackProxy, WTF::DestructionThread::Main>
- , private WebCore::VideoTrackPrivateClient
- , private IPC::MessageReceiver {
+ , private WebCore::VideoTrackPrivateClient {
public:
static Ref<RemoteVideoTrackProxy> create(GPUConnectionToWebProcess& connectionToWebProcess, TrackPrivateRemoteIdentifier identifier, WebCore::VideoTrackPrivate& trackPrivate, WebCore::MediaPlayerIdentifier mediaPlayerIdentifier)
{
@@ -58,6 +57,7 @@
virtual ~RemoteVideoTrackProxy();
TrackPrivateRemoteIdentifier identifier() const { return m_identifier; };
+ void setSelected(bool selected) { m_trackPrivate->setSelected(selected); }
private:
RemoteVideoTrackProxy(GPUConnectionToWebProcess&, TrackPrivateRemoteIdentifier, WebCore::VideoTrackPrivate&, WebCore::MediaPlayerIdentifier);
@@ -71,9 +71,6 @@
void languageChanged(const AtomString&) final;
void willRemove() final;
- void didReceiveMessage(IPC::Connection&, IPC::Decoder&) final;
- void setSelected(bool selected) { m_trackPrivate->setSelected(selected); }
-
TrackPrivateRemoteConfiguration& configuration();
void configurationChanged();
Deleted: trunk/Source/WebKit/GPUProcess/media/RemoteVideoTrackProxy.messages.in (272599 => 272600)
--- trunk/Source/WebKit/GPUProcess/media/RemoteVideoTrackProxy.messages.in 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/GPUProcess/media/RemoteVideoTrackProxy.messages.in 2021-02-09 20:21:09 UTC (rev 272600)
@@ -1,34 +0,0 @@
-/*
- * Copyright (C) 2020 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#pragma once
-
-#if ENABLE(GPU_PROCESS)
-
-messages -> RemoteVideoTrackProxy NotRefCounted {
- SetSelected(bool selected)
-}
-
-#endif
Modified: trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj (272599 => 272600)
--- trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj 2021-02-09 20:21:09 UTC (rev 272600)
@@ -426,9 +426,6 @@
1CA8B946127C882A00576C2B /* WebInspectorProxyMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = 1CA8B944127C882A00576C2B /* WebInspectorProxyMessages.h */; };
1CBBE4A019B66C53006B7D81 /* WebInspectorUIMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1CBBE49E19B66C53006B7D81 /* WebInspectorUIMessageReceiver.cpp */; };
1CBBE4A119B66C53006B7D81 /* WebInspectorUIMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = 1CBBE49F19B66C53006B7D81 /* WebInspectorUIMessages.h */; };
- 1D0369AC2567969900440372 /* RemoteTextTrackProxyMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1D0369AA2567943C00440372 /* RemoteTextTrackProxyMessageReceiver.cpp */; };
- 1D0369AD256796AB00440372 /* RemoteVideoTrackProxyMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1D0369A52567943B00440372 /* RemoteVideoTrackProxyMessageReceiver.cpp */; };
- 1D0369AE256796B900440372 /* RemoteAudioTrackProxyMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1D0369A22567943B00440372 /* RemoteAudioTrackProxyMessageReceiver.cpp */; };
1D4D737023A9E54700717A25 /* RemoteMediaResourceManagerMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1D4D736B23A9DF5500717A25 /* RemoteMediaResourceManagerMessageReceiver.cpp */; };
1D4D737123A9E56200717A25 /* RemoteMediaResourceManagerMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = 1D4D736C23A9DF6000717A25 /* RemoteMediaResourceManagerMessages.h */; };
1D4D737623A9ED1800717A25 /* RemoteMediaResourceManagerMessagesReplies.h in Headers */ = {isa = PBXBuildFile; fileRef = 1D4D737523A9EB6800717A25 /* RemoteMediaResourceManagerMessagesReplies.h */; };
@@ -2953,15 +2950,6 @@
1CA8B944127C882A00576C2B /* WebInspectorProxyMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebInspectorProxyMessages.h; path = DerivedSources/WebKit2/WebInspectorProxyMessages.h; sourceTree = BUILT_PRODUCTS_DIR; };
1CBBE49E19B66C53006B7D81 /* WebInspectorUIMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = WebInspectorUIMessageReceiver.cpp; path = DerivedSources/WebKit2/WebInspectorUIMessageReceiver.cpp; sourceTree = BUILT_PRODUCTS_DIR; };
1CBBE49F19B66C53006B7D81 /* WebInspectorUIMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebInspectorUIMessages.h; path = DerivedSources/WebKit2/WebInspectorUIMessages.h; sourceTree = BUILT_PRODUCTS_DIR; };
- 1D0369A22567943B00440372 /* RemoteAudioTrackProxyMessageReceiver.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RemoteAudioTrackProxyMessageReceiver.cpp; path = DerivedSources/WebKit2/RemoteAudioTrackProxyMessageReceiver.cpp; sourceTree = BUILT_PRODUCTS_DIR; };
- 1D0369A32567943B00440372 /* RemoteAudioTrackProxyMessagesReplies.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemoteAudioTrackProxyMessagesReplies.h; path = DerivedSources/WebKit2/RemoteAudioTrackProxyMessagesReplies.h; sourceTree = BUILT_PRODUCTS_DIR; };
- 1D0369A42567943B00440372 /* RemoteVideoTrackProxyMessages.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemoteVideoTrackProxyMessages.h; path = DerivedSources/WebKit2/RemoteVideoTrackProxyMessages.h; sourceTree = BUILT_PRODUCTS_DIR; };
- 1D0369A52567943B00440372 /* RemoteVideoTrackProxyMessageReceiver.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RemoteVideoTrackProxyMessageReceiver.cpp; path = DerivedSources/WebKit2/RemoteVideoTrackProxyMessageReceiver.cpp; sourceTree = BUILT_PRODUCTS_DIR; };
- 1D0369A62567943C00440372 /* RemoteTextTrackProxyMessages.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemoteTextTrackProxyMessages.h; path = DerivedSources/WebKit2/RemoteTextTrackProxyMessages.h; sourceTree = BUILT_PRODUCTS_DIR; };
- 1D0369A72567943C00440372 /* RemoteAudioTrackProxyMessages.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemoteAudioTrackProxyMessages.h; path = DerivedSources/WebKit2/RemoteAudioTrackProxyMessages.h; sourceTree = BUILT_PRODUCTS_DIR; };
- 1D0369A82567943C00440372 /* RemoteTextTrackProxyMessagesReplies.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemoteTextTrackProxyMessagesReplies.h; path = DerivedSources/WebKit2/RemoteTextTrackProxyMessagesReplies.h; sourceTree = BUILT_PRODUCTS_DIR; };
- 1D0369A92567943C00440372 /* RemoteVideoTrackProxyMessagesReplies.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RemoteVideoTrackProxyMessagesReplies.h; path = DerivedSources/WebKit2/RemoteVideoTrackProxyMessagesReplies.h; sourceTree = BUILT_PRODUCTS_DIR; };
- 1D0369AA2567943C00440372 /* RemoteTextTrackProxyMessageReceiver.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RemoteTextTrackProxyMessageReceiver.cpp; path = DerivedSources/WebKit2/RemoteTextTrackProxyMessageReceiver.cpp; sourceTree = BUILT_PRODUCTS_DIR; };
1D0530C9258EAB4400E436F7 /* combine-feature-flags-plist.py */ = {isa = PBXFileReference; lastKnownFileType = text.script.python; path = "combine-feature-flags-plist.py"; sourceTree = "<group>"; };
1D0530D1259162C800E436F7 /* WebKit-ios.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "WebKit-ios.plist"; sourceTree = "<group>"; };
1D0530D2259162C900E436F7 /* WebKit-appletvos.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "WebKit-appletvos.plist"; sourceTree = "<group>"; };
@@ -2981,9 +2969,6 @@
1D4D737523A9EB6800717A25 /* RemoteMediaResourceManagerMessagesReplies.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; name = RemoteMediaResourceManagerMessagesReplies.h; path = DerivedSources/WebKit2/RemoteMediaResourceManagerMessagesReplies.h; sourceTree = BUILT_PRODUCTS_DIR; };
1D4FB40B2565C89A001AC2AD /* InitializationSegmentInfo.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = InitializationSegmentInfo.h; sourceTree = "<group>"; };
1D4FB40C2565CBF9001AC2AD /* RemoteMediaDescription.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RemoteMediaDescription.h; sourceTree = "<group>"; };
- 1D6E27DD2566E83000AC7AEB /* RemoteAudioTrackProxy.messages.in */ = {isa = PBXFileReference; lastKnownFileType = text; path = RemoteAudioTrackProxy.messages.in; sourceTree = "<group>"; };
- 1D6E27DE2566E85800AC7AEB /* RemoteVideoTrackProxy.messages.in */ = {isa = PBXFileReference; lastKnownFileType = text; path = RemoteVideoTrackProxy.messages.in; sourceTree = "<group>"; };
- 1D6E27DF2566E86B00AC7AEB /* RemoteTextTrackProxy.messages.in */ = {isa = PBXFileReference; explicitFileType = text; path = RemoteTextTrackProxy.messages.in; sourceTree = "<group>"; };
1D97EC7D240898D200466FFA /* MediaPlayerPrivateRemoteCocoa.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; path = MediaPlayerPrivateRemoteCocoa.mm; sourceTree = "<group>"; };
1DA4089423A80A3E0058C950 /* RemoteMediaResourceManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RemoteMediaResourceManager.h; sourceTree = "<group>"; };
1DA4089E23A827780058C950 /* RemoteMediaResourceManager.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = RemoteMediaResourceManager.cpp; sourceTree = "<group>"; };
@@ -6042,7 +6027,6 @@
412FF92725382D85001DF036 /* RemoteAudioSourceProviderProxy.h */,
071BC57E23CA5DB100680D7C /* RemoteAudioTrackProxy.cpp */,
071BC57F23CA5DB100680D7C /* RemoteAudioTrackProxy.h */,
- 1D6E27DD2566E83000AC7AEB /* RemoteAudioTrackProxy.messages.in */,
CDAC207923FB1E210021DEE3 /* RemoteCDMFactoryProxy.cpp */,
CDAC207823FB1E210021DEE3 /* RemoteCDMFactoryProxy.h */,
CDAC207C23FB1EF90021DEE3 /* RemoteCDMFactoryProxy.messages.in */,
@@ -6092,10 +6076,8 @@
1DD2A6662561ED0400FF7B6F /* RemoteSourceBufferProxy.messages.in */,
07E19F0723D4DC880094FFB4 /* RemoteTextTrackProxy.cpp */,
07E19F0623D4DC880094FFB4 /* RemoteTextTrackProxy.h */,
- 1D6E27DF2566E86B00AC7AEB /* RemoteTextTrackProxy.messages.in */,
071BC58423CC2C0900680D7C /* RemoteVideoTrackProxy.cpp */,
071BC58523CC2C0900680D7C /* RemoteVideoTrackProxy.h */,
- 1D6E27DE2566E85800AC7AEB /* RemoteVideoTrackProxy.messages.in */,
07E19F0523D4DC880094FFB4 /* TextTrackPrivateRemoteConfiguration.h */,
071BC57B23CA532400680D7C /* TrackPrivateRemoteConfiguration.h */,
071BC57D23CA56D200680D7C /* TrackPrivateRemoteIdentifier.h */,
@@ -10806,9 +10788,6 @@
CDD53571240DDE0600F7B8C4 /* RemoteAudioSessionProxyMessageReceiver.cpp */,
CDD53572240DDE0600F7B8C4 /* RemoteAudioSessionProxyMessages.h */,
CDD53577240DDE0700F7B8C4 /* RemoteAudioSessionProxyMessagesReplies.h */,
- 1D0369A22567943B00440372 /* RemoteAudioTrackProxyMessageReceiver.cpp */,
- 1D0369A72567943C00440372 /* RemoteAudioTrackProxyMessages.h */,
- 1D0369A32567943B00440372 /* RemoteAudioTrackProxyMessagesReplies.h */,
0FF24A2B1879E4BC003ABF0D /* RemoteCaptureSampleManagerMessageReceiver.cpp */,
CDAC20F223FC383A0021DEE3 /* RemoteCDMFactoryProxyMessageReceiver.cpp */,
CDAC20F323FC383A0021DEE3 /* RemoteCDMFactoryProxyMessages.h */,
@@ -10863,12 +10842,6 @@
1DD2A66B2562021E00FF7B6F /* RemoteSourceBufferProxyMessageReceiver.cpp */,
1DD2A6692562021E00FF7B6F /* RemoteSourceBufferProxyMessages.h */,
1DD2A66A2562021E00FF7B6F /* RemoteSourceBufferProxyMessagesReplies.h */,
- 1D0369AA2567943C00440372 /* RemoteTextTrackProxyMessageReceiver.cpp */,
- 1D0369A62567943C00440372 /* RemoteTextTrackProxyMessages.h */,
- 1D0369A82567943C00440372 /* RemoteTextTrackProxyMessagesReplies.h */,
- 1D0369A52567943B00440372 /* RemoteVideoTrackProxyMessageReceiver.cpp */,
- 1D0369A42567943B00440372 /* RemoteVideoTrackProxyMessages.h */,
- 1D0369A92567943C00440372 /* RemoteVideoTrackProxyMessagesReplies.h */,
A55BA8211BA25BB8007CD33D /* RemoteWebInspectorProxyMessageReceiver.cpp */,
A55BA8221BA25BB8007CD33D /* RemoteWebInspectorProxyMessages.h */,
1BBBE49E19B66C53006B7D81 /* RemoteWebInspectorUIMessageReceiver.cpp */,
@@ -13772,7 +13745,6 @@
1A0C227F2451130A00ED614D /* QuickLookThumbnailingSoftLink.mm in Sources */,
1A0C225E243575CD00ED614D /* QuickLookThumbnailLoader.mm in Sources */,
9B1229CE23FF25F2008CA751 /* RemoteAudioDestinationManager.cpp in Sources */,
- 1D0369AE256796B900440372 /* RemoteAudioTrackProxyMessageReceiver.cpp in Sources */,
0FF24A2D1879E4BC003ABF0D /* RemoteCaptureSampleManagerMessageReceiver.cpp in Sources */,
CDAC20F723FC726C0021DEE3 /* RemoteCDMFactoryProxyMessageReceiver.cpp in Sources */,
CDA6D45125A989C7004B1DF6 /* RemoteCDMInstanceMessageReceiver.cpp in Sources */,
@@ -13796,8 +13768,6 @@
1AC1338518590C4600F3EC05 /* RemoteObjectRegistryMessageReceiver.cpp in Sources */,
0F5947A7187B517600437857 /* RemoteScrollingCoordinatorMessageReceiver.cpp in Sources */,
1DD2A66E2562021E00FF7B6F /* RemoteSourceBufferProxyMessageReceiver.cpp in Sources */,
- 1D0369AC2567969900440372 /* RemoteTextTrackProxyMessageReceiver.cpp in Sources */,
- 1D0369AD256796AB00440372 /* RemoteVideoTrackProxyMessageReceiver.cpp in Sources */,
A55BA8261BA25CFD007CD33D /* RemoteWebInspectorProxyMessageReceiver.cpp in Sources */,
1BBBE4A019B66C53006B7D81 /* RemoteWebInspectorUIMessageReceiver.cpp in Sources */,
E18E6917169B667B009B6670 /* SecItemShimProxyMessageReceiver.cpp in Sources */,
Modified: trunk/Source/WebKit/WebProcess/GPU/media/AudioTrackPrivateRemote.cpp (272599 => 272600)
--- trunk/Source/WebKit/WebProcess/GPU/media/AudioTrackPrivateRemote.cpp 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/WebProcess/GPU/media/AudioTrackPrivateRemote.cpp 2021-02-09 20:21:09 UTC (rev 272600)
@@ -31,13 +31,14 @@
#include "Connection.h"
#include "MediaPlayerPrivateRemote.h"
-#include "RemoteAudioTrackProxyMessages.h"
+#include "RemoteMediaPlayerProxyMessages.h"
#include "TrackPrivateRemoteConfiguration.h"
namespace WebKit {
-AudioTrackPrivateRemote::AudioTrackPrivateRemote(IPC::Connection& connection, TrackPrivateRemoteIdentifier idendifier, TrackPrivateRemoteConfiguration&& configuration)
+AudioTrackPrivateRemote::AudioTrackPrivateRemote(IPC::Connection& connection, WebCore::MediaPlayerIdentifier playerIdentifier, TrackPrivateRemoteIdentifier idendifier, TrackPrivateRemoteConfiguration&& configuration)
: m_connection(connection)
+ , m_playerIdentifier(playerIdentifier)
, m_idendifier(idendifier)
{
updateConfiguration(WTFMove(configuration));
@@ -46,7 +47,7 @@
void AudioTrackPrivateRemote::setEnabled(bool enabled)
{
if (enabled != this->enabled())
- m_connection.send(Messages::RemoteAudioTrackProxy::SetEnabled(enabled), m_idendifier);
+ m_connection.send(Messages::RemoteMediaPlayerProxy::AudioTrackSetEnabled(m_idendifier, enabled), m_playerIdentifier);
AudioTrackPrivate::setEnabled(enabled);
}
Modified: trunk/Source/WebKit/WebProcess/GPU/media/AudioTrackPrivateRemote.h (272599 => 272600)
--- trunk/Source/WebKit/WebProcess/GPU/media/AudioTrackPrivateRemote.h 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/WebProcess/GPU/media/AudioTrackPrivateRemote.h 2021-02-09 20:21:09 UTC (rev 272600)
@@ -30,6 +30,7 @@
#include "TrackPrivateRemoteIdentifier.h"
#include <WebCore/AudioTrackPrivate.h>
+#include <WebCore/MediaPlayerIdentifier.h>
namespace IPC {
class Connection;
@@ -43,9 +44,9 @@
class AudioTrackPrivateRemote final : public WebCore::AudioTrackPrivate {
WTF_MAKE_NONCOPYABLE(AudioTrackPrivateRemote)
public:
- static Ref<AudioTrackPrivateRemote> create(IPC::Connection& connection, TrackPrivateRemoteIdentifier idendifier, TrackPrivateRemoteConfiguration&& configuration)
+ static Ref<AudioTrackPrivateRemote> create(IPC::Connection& connection, WebCore::MediaPlayerIdentifier playerIdentifier, TrackPrivateRemoteIdentifier idendifier, TrackPrivateRemoteConfiguration&& configuration)
{
- return adoptRef(*new AudioTrackPrivateRemote(connection, idendifier, WTFMove(configuration)));
+ return adoptRef(*new AudioTrackPrivateRemote(connection, playerIdentifier, idendifier, WTFMove(configuration)));
}
AtomString id() const final { return m_id; }
@@ -52,7 +53,7 @@
void updateConfiguration(TrackPrivateRemoteConfiguration&&);
private:
- AudioTrackPrivateRemote(IPC::Connection&, TrackPrivateRemoteIdentifier, TrackPrivateRemoteConfiguration&&);
+ AudioTrackPrivateRemote(IPC::Connection&, WebCore::MediaPlayerIdentifier, TrackPrivateRemoteIdentifier, TrackPrivateRemoteConfiguration&&);
using AudioTrackKind = WebCore::AudioTrackPrivate::Kind;
AudioTrackKind kind() const final { return m_kind; }
@@ -68,6 +69,7 @@
AtomString m_language;
int m_trackIndex { -1 };
MediaTime m_startTimeVariance { MediaTime::zeroTime() };
+ WebCore::MediaPlayerIdentifier m_playerIdentifier;
TrackPrivateRemoteIdentifier m_idendifier;
};
Modified: trunk/Source/WebKit/WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp (272599 => 272600)
--- trunk/Source/WebKit/WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp 2021-02-09 20:21:09 UTC (rev 272600)
@@ -468,7 +468,7 @@
void MediaPlayerPrivateRemote::addRemoteAudioTrack(TrackPrivateRemoteIdentifier identifier, TrackPrivateRemoteConfiguration&& configuration)
{
auto addResult = m_audioTracks.ensure(identifier, [&] {
- return AudioTrackPrivateRemote::create(connection(), identifier, WTFMove(configuration));
+ return AudioTrackPrivateRemote::create(connection(), m_id, identifier, WTFMove(configuration));
});
ASSERT(addResult.isNewEntry);
@@ -504,7 +504,7 @@
void MediaPlayerPrivateRemote::addRemoteTextTrack(TrackPrivateRemoteIdentifier identifier, TextTrackPrivateRemoteConfiguration&& configuration)
{
auto addResult = m_textTracks.ensure(identifier, [&] {
- return TextTrackPrivateRemote::create(connection(), identifier, WTFMove(configuration));
+ return TextTrackPrivateRemote::create(connection(), m_id, identifier, WTFMove(configuration));
});
ASSERT(addResult.isNewEntry);
@@ -622,7 +622,7 @@
void MediaPlayerPrivateRemote::addRemoteVideoTrack(TrackPrivateRemoteIdentifier identifier, TrackPrivateRemoteConfiguration&& configuration)
{
auto addResult = m_videoTracks.ensure(identifier, [&] {
- return VideoTrackPrivateRemote::create(connection(), identifier, WTFMove(configuration));
+ return VideoTrackPrivateRemote::create(connection(), m_id, identifier, WTFMove(configuration));
});
ASSERT(addResult.isNewEntry);
Modified: trunk/Source/WebKit/WebProcess/GPU/media/TextTrackPrivateRemote.cpp (272599 => 272600)
--- trunk/Source/WebKit/WebProcess/GPU/media/TextTrackPrivateRemote.cpp 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/WebProcess/GPU/media/TextTrackPrivateRemote.cpp 2021-02-09 20:21:09 UTC (rev 272600)
@@ -32,16 +32,17 @@
#include "Connection.h"
#include "DataReference.h"
#include "MediaPlayerPrivateRemote.h"
-#include "RemoteTextTrackProxyMessages.h"
+#include "RemoteMediaPlayerProxyMessages.h"
#include <WebCore/NotImplemented.h>
namespace WebKit {
using namespace WebCore;
-TextTrackPrivateRemote::TextTrackPrivateRemote(IPC::Connection& connection, TrackPrivateRemoteIdentifier idendifier, TextTrackPrivateRemoteConfiguration&& configuration)
+TextTrackPrivateRemote::TextTrackPrivateRemote(IPC::Connection& connection, MediaPlayerIdentifier playerIdentifier, TrackPrivateRemoteIdentifier idendifier, TextTrackPrivateRemoteConfiguration&& configuration)
: WebCore::InbandTextTrackPrivate(configuration.cueFormat)
, m_connection(connection)
- , m_idendifier(idendifier)
+ , m_playerIdentifier(playerIdentifier)
+ , m_identifier(idendifier)
{
updateConfiguration(WTFMove(configuration));
}
@@ -49,7 +50,7 @@
void TextTrackPrivateRemote::setMode(TextTrackMode mode)
{
if (mode != m_mode)
- m_connection.send(Messages::RemoteTextTrackProxy::SetMode(mode), m_idendifier);
+ m_connection.send(Messages::RemoteMediaPlayerProxy::TextTrackSetMode(m_identifier, mode), m_playerIdentifier);
InbandTextTrackPrivate::setMode(mode);
}
Modified: trunk/Source/WebKit/WebProcess/GPU/media/TextTrackPrivateRemote.h (272599 => 272600)
--- trunk/Source/WebKit/WebProcess/GPU/media/TextTrackPrivateRemote.h 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/WebProcess/GPU/media/TextTrackPrivateRemote.h 2021-02-09 20:21:09 UTC (rev 272600)
@@ -32,6 +32,7 @@
#include "TextTrackPrivateRemoteConfiguration.h"
#include "TrackPrivateRemoteIdentifier.h"
#include <WebCore/InbandTextTrackPrivate.h>
+#include <WebCore/MediaPlayerIdentifier.h>
namespace IPC {
class Connection;
@@ -50,9 +51,9 @@
WTF_MAKE_NONCOPYABLE(TextTrackPrivateRemote)
public:
- static Ref<TextTrackPrivateRemote> create(IPC::Connection& connection, TrackPrivateRemoteIdentifier idendifier, TextTrackPrivateRemoteConfiguration&& configuration)
+ static Ref<TextTrackPrivateRemote> create(IPC::Connection& connection, WebCore::MediaPlayerIdentifier playerIdentifier, TrackPrivateRemoteIdentifier idendifier, TextTrackPrivateRemoteConfiguration&& configuration)
{
- return adoptRef(*new TextTrackPrivateRemote(connection, idendifier, WTFMove(configuration)));
+ return adoptRef(*new TextTrackPrivateRemote(connection, playerIdentifier, idendifier, WTFMove(configuration)));
}
void addDataCue(MediaTime&& start, MediaTime&& end, IPC::DataReference&&);
@@ -99,7 +100,7 @@
bool isDefault() const final { return m_isDefault; }
private:
- TextTrackPrivateRemote(IPC::Connection&, TrackPrivateRemoteIdentifier, TextTrackPrivateRemoteConfiguration&&);
+ TextTrackPrivateRemote(IPC::Connection&, WebCore::MediaPlayerIdentifier, TrackPrivateRemoteIdentifier, TextTrackPrivateRemoteConfiguration&&);
IPC::Connection& m_connection;
AtomString m_id;
@@ -107,7 +108,8 @@
AtomString m_language;
int m_trackIndex { -1 };
MediaTime m_startTimeVariance { MediaTime::zeroTime() };
- TrackPrivateRemoteIdentifier m_idendifier;
+ WebCore::MediaPlayerIdentifier m_playerIdentifier;
+ TrackPrivateRemoteIdentifier m_identifier;
TextTrackCueFormat m_format { TextTrackCueFormat::Generic };
TextTrackKind m_kind { TextTrackKind::None };
Modified: trunk/Source/WebKit/WebProcess/GPU/media/VideoTrackPrivateRemote.cpp (272599 => 272600)
--- trunk/Source/WebKit/WebProcess/GPU/media/VideoTrackPrivateRemote.cpp 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/WebProcess/GPU/media/VideoTrackPrivateRemote.cpp 2021-02-09 20:21:09 UTC (rev 272600)
@@ -31,12 +31,13 @@
#include "Connection.h"
#include "MediaPlayerPrivateRemote.h"
-#include "RemoteVideoTrackProxyMessages.h"
+#include "RemoteMediaPlayerProxyMessages.h"
namespace WebKit {
-VideoTrackPrivateRemote::VideoTrackPrivateRemote(IPC::Connection& connection, TrackPrivateRemoteIdentifier idendifier, TrackPrivateRemoteConfiguration&& configuration)
+VideoTrackPrivateRemote::VideoTrackPrivateRemote(IPC::Connection& connection, WebCore::MediaPlayerIdentifier playerIdentifier, TrackPrivateRemoteIdentifier idendifier, TrackPrivateRemoteConfiguration&& configuration)
: m_connection(connection)
+ , m_playerIdentifier(playerIdentifier)
, m_idendifier(idendifier)
{
updateConfiguration(WTFMove(configuration));
@@ -45,7 +46,7 @@
void VideoTrackPrivateRemote::setSelected(bool selected)
{
if (selected != this->selected())
- m_connection.send(Messages::RemoteVideoTrackProxy::SetSelected(selected), m_idendifier);
+ m_connection.send(Messages::RemoteMediaPlayerProxy::VideoTrackSetSelected(m_idendifier, selected), m_playerIdentifier);
VideoTrackPrivate::setSelected(selected);
}
Modified: trunk/Source/WebKit/WebProcess/GPU/media/VideoTrackPrivateRemote.h (272599 => 272600)
--- trunk/Source/WebKit/WebProcess/GPU/media/VideoTrackPrivateRemote.h 2021-02-09 20:14:09 UTC (rev 272599)
+++ trunk/Source/WebKit/WebProcess/GPU/media/VideoTrackPrivateRemote.h 2021-02-09 20:21:09 UTC (rev 272600)
@@ -30,6 +30,7 @@
#include "TrackPrivateRemoteConfiguration.h"
#include "TrackPrivateRemoteIdentifier.h"
+#include <WebCore/MediaPlayerIdentifier.h>
#include <WebCore/VideoTrackPrivate.h>
namespace IPC {
@@ -45,9 +46,9 @@
: public WebCore::VideoTrackPrivate {
WTF_MAKE_NONCOPYABLE(VideoTrackPrivateRemote)
public:
- static Ref<VideoTrackPrivateRemote> create(IPC::Connection& connection, TrackPrivateRemoteIdentifier idendifier, TrackPrivateRemoteConfiguration&& configuration)
+ static Ref<VideoTrackPrivateRemote> create(IPC::Connection& connection, WebCore::MediaPlayerIdentifier playerIdentifier, TrackPrivateRemoteIdentifier idendifier, TrackPrivateRemoteConfiguration&& configuration)
{
- return adoptRef(*new VideoTrackPrivateRemote(connection, idendifier, WTFMove(configuration)));
+ return adoptRef(*new VideoTrackPrivateRemote(connection, playerIdentifier, idendifier, WTFMove(configuration)));
}
void updateConfiguration(TrackPrivateRemoteConfiguration&&);
@@ -60,11 +61,12 @@
int trackIndex() const final { return m_trackIndex; }
private:
- VideoTrackPrivateRemote(IPC::Connection&, TrackPrivateRemoteIdentifier, TrackPrivateRemoteConfiguration&&);
+ VideoTrackPrivateRemote(IPC::Connection&, WebCore::MediaPlayerIdentifier, TrackPrivateRemoteIdentifier, TrackPrivateRemoteConfiguration&&);
void setSelected(bool) final;
IPC::Connection& m_connection;
+ WebCore::MediaPlayerIdentifier m_playerIdentifier;
VideoTrackKind m_kind { None };
AtomString m_id;
AtomString m_label;