| Index: content/renderer/media/webrtc/peer_connection_dependency_factory.h
|
| diff --git a/content/renderer/media/webrtc/peer_connection_dependency_factory.h b/content/renderer/media/webrtc/peer_connection_dependency_factory.h
|
| index 969fb6b9d7588c6df622fa02b85353fdef423c74..51699359eb0502a72352fb85b53dc0b08362228e 100644
|
| --- a/content/renderer/media/webrtc/peer_connection_dependency_factory.h
|
| +++ b/content/renderer/media/webrtc/peer_connection_dependency_factory.h
|
| @@ -12,6 +12,7 @@
|
| #include "base/threading/thread.h"
|
| #include "content/common/content_export.h"
|
| #include "content/public/renderer/render_process_observer.h"
|
| +#include "content/renderer/media/aec_dump_message_filter.h"
|
| #include "content/renderer/p2p/socket_dispatcher.h"
|
| #include "ipc/ipc_platform_file.h"
|
| #include "third_party/libjingle/source/talk/app/webrtc/peerconnectioninterface.h"
|
| @@ -55,7 +56,7 @@ struct StreamDeviceInfo;
|
| // Object factory for RTC PeerConnections.
|
| class CONTENT_EXPORT PeerConnectionDependencyFactory
|
| : NON_EXPORTED_BASE(public base::NonThreadSafe),
|
| - public RenderProcessObserver {
|
| + NON_EXPORTED_BASE(public AecDumpMessageFilter::AecDumpDelegate) {
|
| public:
|
| PeerConnectionDependencyFactory(
|
| P2PSocketDispatcher* p2p_socket_dispatcher);
|
| @@ -129,6 +130,14 @@ class CONTENT_EXPORT PeerConnectionDependencyFactory
|
|
|
| scoped_refptr<base::MessageLoopProxy> GetWebRtcWorkerThread() const;
|
|
|
| + // AecDumpMessageFilter::AecDumpDelegate implementation.
|
| + // TODO(xians): Remove when option to disable audio track processing is
|
| + // removed.
|
| + virtual void OnAecDumpFile(
|
| + const IPC::PlatformFileForTransit& file_handle) OVERRIDE;
|
| + virtual void OnDisableAecDump() OVERRIDE;
|
| + virtual void OnIpcClosing() OVERRIDE;
|
| +
|
| protected:
|
| // Asks the PeerConnection factory to create a Local Audio Source.
|
| virtual scoped_refptr<webrtc::AudioSourceInterface>
|
| @@ -177,14 +186,6 @@ class CONTENT_EXPORT PeerConnectionDependencyFactory
|
| void DeleteIpcNetworkManager();
|
| void CleanupPeerConnectionFactory();
|
|
|
| - // RenderProcessObserver implementation.
|
| - virtual bool OnControlMessageReceived(const IPC::Message& message) OVERRIDE;
|
| -
|
| - void OnAecDumpFile(IPC::PlatformFileForTransit file_handle);
|
| - void OnDisableAecDump();
|
| -
|
| - void StartAecDump(base::File aec_dump_file);
|
| -
|
| // Helper method to create a WebRtcAudioDeviceImpl.
|
| void EnsureWebRtcAudioDeviceImpl();
|
|
|
| @@ -198,14 +199,17 @@ class CONTENT_EXPORT PeerConnectionDependencyFactory
|
| scoped_refptr<P2PSocketDispatcher> p2p_socket_dispatcher_;
|
| scoped_refptr<WebRtcAudioDeviceImpl> audio_device_;
|
|
|
| + // This is only used if audio track processing is disabled.
|
| + // TODO(xians): Remove when option to disable audio track processing is
|
| + // removed.
|
| + scoped_refptr<AecDumpMessageFilter> aec_dump_message_filter_;
|
| +
|
| // PeerConnection threads. signaling_thread_ is created from the
|
| // "current" chrome thread.
|
| talk_base::Thread* signaling_thread_;
|
| talk_base::Thread* worker_thread_;
|
| base::Thread chrome_worker_thread_;
|
|
|
| - base::File aec_dump_file_;
|
| -
|
| DISALLOW_COPY_AND_ASSIGN(PeerConnectionDependencyFactory);
|
| };
|
|
|
|
|