summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjochen <jochen@chromium.org>2015-05-28 00:33:45 -0700
committerCommit bot <commit-bot@chromium.org>2015-05-28 07:34:10 +0000
commit5126513b2205650ad1b42ebbcfe8cd167879e230 (patch)
tree7ab925ad5453962021c5f7464eff8d792b4c8cf7
parenta507cef665c52387379cfb0cc6c6cf64d171b9b8 (diff)
downloadchromium_src-5126513b2205650ad1b42ebbcfe8cd167879e230.zip
chromium_src-5126513b2205650ad1b42ebbcfe8cd167879e230.tar.gz
chromium_src-5126513b2205650ad1b42ebbcfe8cd167879e230.tar.bz2
Move TestMediaStreamRendererFactory to content shell
This removes the last dependency from the test_runner library on content R=mkwst@chromium.org BUG=478250 Review URL: https://codereview.chromium.org/1153053002 Cr-Commit-Position: refs/heads/master@{#331751}
-rw-r--r--content/content_renderer.gypi11
-rw-r--r--content/content_shell.gypi4
-rw-r--r--content/content_tests.gypi6
-rw-r--r--content/public/renderer/content_renderer_client.cc6
-rw-r--r--content/public/renderer/content_renderer_client.h5
-rw-r--r--content/public/renderer/media_stream_audio_renderer.h (renamed from content/renderer/media/media_stream_audio_renderer.h)12
-rw-r--r--content/public/renderer/media_stream_renderer_factory.h (renamed from content/renderer/media/media_stream_renderer_factory.h)23
-rw-r--r--content/public/renderer/video_frame_provider.h (renamed from content/renderer/media/video_frame_provider.h)14
-rw-r--r--content/renderer/BUILD.gn2
-rw-r--r--content/renderer/media/media_stream_audio_renderer.cc12
-rw-r--r--content/renderer/media/media_stream_renderer_factory_impl.cc (renamed from content/renderer/media/media_stream_renderer_factory.cc)18
-rw-r--r--content/renderer/media/media_stream_renderer_factory_impl.h32
-rw-r--r--content/renderer/media/rtc_video_renderer.h2
-rw-r--r--content/renderer/media/video_frame_provider.cc13
-rw-r--r--content/renderer/media/webmediaplayer_ms.cc6
-rw-r--r--content/renderer/media/webrtc_audio_renderer.h2
-rw-r--r--content/renderer/media/webrtc_audio_renderer_unittest.cc2
-rw-r--r--content/renderer/media/webrtc_local_audio_renderer.h2
-rw-r--r--content/renderer/render_frame_impl.cc8
-rw-r--r--content/renderer/render_frame_impl.h3
-rw-r--r--content/shell/BUILD.gn4
-rw-r--r--content/shell/renderer/DEPS1
-rw-r--r--content/shell/renderer/layout_test/layout_test_content_renderer_client.cc11
-rw-r--r--content/shell/renderer/layout_test/layout_test_content_renderer_client.h2
-rw-r--r--content/shell/renderer/layout_test/test_media_stream_renderer_factory.cc (renamed from content/test/test_media_stream_renderer_factory.cc)5
-rw-r--r--content/shell/renderer/layout_test/test_media_stream_renderer_factory.h (renamed from content/test/test_media_stream_renderer_factory.h)8
-rw-r--r--content/shell/renderer/layout_test/test_video_frame_provider.cc (renamed from content/test/test_video_frame_provider.cc)2
-rw-r--r--content/shell/renderer/layout_test/test_video_frame_provider.h (renamed from content/test/test_video_frame_provider.h)8
-rw-r--r--content/shell/renderer/test_runner/web_frame_test_proxy.h8
-rw-r--r--content/test/BUILD.gn7
30 files changed, 123 insertions, 116 deletions
diff --git a/content/content_renderer.gypi b/content/content_renderer.gypi
index 52ce045..5230639 100644
--- a/content/content_renderer.gypi
+++ b/content/content_renderer.gypi
@@ -53,6 +53,7 @@
'public/renderer/context_menu_client.h',
'public/renderer/document_state.cc',
'public/renderer/document_state.h',
+ 'public/renderer/media_stream_audio_renderer.h',
'public/renderer/navigation_state.cc',
'public/renderer/navigation_state.h',
'public/renderer/pepper_plugin_instance.h',
@@ -75,6 +76,7 @@
'public/renderer/resource_fetcher.h',
'public/renderer/video_encode_accelerator.cc',
'public/renderer/video_encode_accelerator.h',
+ 'public/renderer/video_frame_provider.h',
],
'public_renderer_plugin_sources': [
'public/renderer/plugin_instance_throttler.h',
@@ -273,8 +275,6 @@
'renderer/media/media_permission_dispatcher.h',
'renderer/media/media_stream_audio_level_calculator.cc',
'renderer/media/media_stream_audio_level_calculator.h',
- 'renderer/media/media_stream_audio_renderer.cc',
- 'renderer/media/media_stream_audio_renderer.h',
'renderer/media/media_stream_center.h',
'renderer/media/media_stream_constraints_util.cc',
'renderer/media/media_stream_constraints_util.h',
@@ -302,8 +302,6 @@
'renderer/media/video_capture_impl_manager.h',
'renderer/media/video_capture_message_filter.cc',
'renderer/media/video_capture_message_filter.h',
- 'renderer/media/video_frame_provider.cc',
- 'renderer/media/video_frame_provider.h',
'renderer/media/webmediaplayer_ms.cc',
'renderer/media/webmediaplayer_ms.h',
'renderer/memory_benchmarking_extension.cc',
@@ -577,6 +575,7 @@
'public/renderer/media_stream_api.h',
'public/renderer/media_stream_audio_sink.cc',
'public/renderer/media_stream_audio_sink.h',
+ 'public/renderer/media_stream_renderer_factory.h',
'public/renderer/media_stream_sink.h',
'public/renderer/media_stream_video_sink.cc',
'public/renderer/media_stream_video_sink.h',
@@ -599,8 +598,8 @@
'renderer/media/media_stream_center.cc',
'renderer/media/media_stream_dispatcher.cc',
'renderer/media/media_stream_registry_interface.h',
- 'renderer/media/media_stream_renderer_factory.cc',
- 'renderer/media/media_stream_renderer_factory.h',
+ 'renderer/media/media_stream_renderer_factory_impl.cc',
+ 'renderer/media/media_stream_renderer_factory_impl.h',
'renderer/media/media_stream_source.cc',
'renderer/media/media_stream_source.h',
'renderer/media/media_stream_video_capturer_source.cc',
diff --git a/content/content_shell.gypi b/content/content_shell.gypi
index 36da97b..8e45fd7 100644
--- a/content/content_shell.gypi
+++ b/content/content_shell.gypi
@@ -224,6 +224,10 @@
'shell/renderer/layout_test/layout_test_render_process_observer.h',
'shell/renderer/layout_test/leak_detector.cc',
'shell/renderer/layout_test/leak_detector.h',
+ 'shell/renderer/layout_test/test_media_stream_renderer_factory.cc',
+ 'shell/renderer/layout_test/test_media_stream_renderer_factory.h',
+ 'shell/renderer/layout_test/test_video_frame_provider.cc',
+ 'shell/renderer/layout_test/test_video_frame_provider.h',
'shell/renderer/shell_content_renderer_client.cc',
'shell/renderer/shell_content_renderer_client.h',
'shell/renderer/shell_render_view_observer.cc',
diff --git a/content/content_tests.gypi b/content/content_tests.gypi
index 72a3b643..09fee67 100644
--- a/content/content_tests.gypi
+++ b/content/content_tests.gypi
@@ -9,10 +9,6 @@
'public/test/nested_message_pump_android.cc',
'public/test/nested_message_pump_android.h',
'test/layouttest_support.cc',
- 'test/test_media_stream_renderer_factory.cc',
- 'test/test_media_stream_renderer_factory.h',
- 'test/test_video_frame_provider.cc',
- 'test/test_video_frame_provider.h',
],
'test_support_content_sources': [
# TODO(phajdan.jr): All of those files should live in content/test (if
@@ -624,8 +620,8 @@
'common/inter_process_time_ticks_converter_unittest.cc',
'common/mac/attributed_string_coder_unittest.mm',
'common/mac/font_descriptor_unittest.mm',
- 'common/origin_util_unittest.cc',
'common/one_writer_seqlock_unittest.cc',
+ 'common/origin_util_unittest.cc',
'common/page_state_serialization_unittest.cc',
'common/page_zoom_unittest.cc',
'common/plugin_list_unittest.cc',
diff --git a/content/public/renderer/content_renderer_client.cc b/content/public/renderer/content_renderer_client.cc
index df391b64..1918fbd 100644
--- a/content/public/renderer/content_renderer_client.cc
+++ b/content/public/renderer/content_renderer_client.cc
@@ -4,6 +4,7 @@
#include "content/public/renderer/content_renderer_client.h"
+#include "content/public/renderer/media_stream_renderer_factory.h"
#include "media/base/renderer_factory.h"
#include "third_party/WebKit/public/platform/modules/app_banner/WebAppBannerClient.h"
#include "third_party/WebKit/public/web/WebPluginPlaceholder.h"
@@ -182,6 +183,11 @@ ContentRendererClient::CreateMediaRendererFactory(
return nullptr;
}
+scoped_ptr<MediaStreamRendererFactory>
+ContentRendererClient::CreateMediaStreamRendererFactory() {
+ return nullptr;
+}
+
bool ContentRendererClient::ShouldReportDetailedMessageForSource(
const base::string16& source) const {
return false;
diff --git a/content/public/renderer/content_renderer_client.h b/content/public/renderer/content_renderer_client.h
index 1d4a47e..db82fb3 100644
--- a/content/public/renderer/content_renderer_client.h
+++ b/content/public/renderer/content_renderer_client.h
@@ -64,6 +64,7 @@ struct KeySystemInfo;
namespace content {
class BrowserPluginDelegate;
class DocumentState;
+class MediaStreamRendererFactory;
class RenderFrame;
class RenderView;
class SynchronousCompositor;
@@ -261,6 +262,10 @@ class CONTENT_EXPORT ContentRendererClient {
RenderFrame* render_frame,
const scoped_refptr<media::MediaLog>& media_log);
+ // Allows an embedder to provide a MediaStreamRendererFactory.
+ virtual scoped_ptr<MediaStreamRendererFactory>
+ CreateMediaStreamRendererFactory();
+
// Gives the embedder a chance to register the key system(s) it supports by
// populating |key_systems|.
virtual void AddKeySystems(std::vector<media::KeySystemInfo>* key_systems);
diff --git a/content/renderer/media/media_stream_audio_renderer.h b/content/public/renderer/media_stream_audio_renderer.h
index 41e3223..21479b9 100644
--- a/content/renderer/media/media_stream_audio_renderer.h
+++ b/content/public/renderer/media_stream_audio_renderer.h
@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef CONTENT_RENDERER_MEDIA_MEDIA_STREAM_AUDIO_RENDERER_H_
-#define CONTENT_RENDERER_MEDIA_MEDIA_STREAM_AUDIO_RENDERER_H_
+#ifndef CONTENT_PUBLIC_RENDERER_MEDIA_STREAM_AUDIO_RENDERER_H_
+#define CONTENT_PUBLIC_RENDERER_MEDIA_STREAM_AUDIO_RENDERER_H_
#include "base/memory/ref_counted.h"
#include "base/time/time.h"
@@ -40,13 +40,9 @@ class MediaStreamAudioRenderer
protected:
friend class base::RefCountedThreadSafe<MediaStreamAudioRenderer>;
- MediaStreamAudioRenderer();
- virtual ~MediaStreamAudioRenderer();
-
- private:
- DISALLOW_COPY_AND_ASSIGN(MediaStreamAudioRenderer);
+ virtual ~MediaStreamAudioRenderer() {}
};
} // namespace content
-#endif // CONTENT_RENDERER_MEDIA_MEDIA_STREAM_AUDIO_RENDERER_H_
+#endif // CONTENT_PUBLIC_RENDERER_MEDIA_STREAM_AUDIO_RENDERER_H_
diff --git a/content/renderer/media/media_stream_renderer_factory.h b/content/public/renderer/media_stream_renderer_factory.h
index 86a644e..f4cc79e 100644
--- a/content/renderer/media/media_stream_renderer_factory.h
+++ b/content/public/renderer/media_stream_renderer_factory.h
@@ -2,14 +2,13 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef CONTENT_RENDERER_MEDIA_MEDIA_STREAM_RENDERER_FACTORY_H_
-#define CONTENT_RENDERER_MEDIA_MEDIA_STREAM_RENDERER_FACTORY_H_
+#ifndef CONTENT_PUBLIC_RENDERER_MEDIA_STREAM_RENDERER_FACTORY_H_
+#define CONTENT_PUBLIC_RENDERER_MEDIA_STREAM_RENDERER_FACTORY_H_
#include "base/callback.h"
#include "base/memory/ref_counted.h"
-#include "content/common/content_export.h"
-#include "content/renderer/media/media_stream_audio_renderer.h"
-#include "content/renderer/media/video_frame_provider.h"
+#include "content/public/renderer/media_stream_audio_renderer.h"
+#include "content/public/renderer/video_frame_provider.h"
#include "url/gurl.h"
namespace content {
@@ -18,24 +17,20 @@ namespace content {
// video feeds from a MediaStream provided an URL.
// The factory methods are virtual in order for blink layouttests to be able to
// override them.
-class CONTENT_EXPORT MediaStreamRendererFactory {
+class MediaStreamRendererFactory {
public:
- MediaStreamRendererFactory();
- virtual ~MediaStreamRendererFactory();
+ virtual ~MediaStreamRendererFactory() {}
virtual scoped_refptr<VideoFrameProvider> GetVideoFrameProvider(
const GURL& url,
const base::Closure& error_cb,
- const VideoFrameProvider::RepaintCB& repaint_cb);
+ const VideoFrameProvider::RepaintCB& repaint_cb) = 0;
virtual scoped_refptr<MediaStreamAudioRenderer> GetAudioRenderer(
const GURL& url,
- int render_frame_id);
-
- private:
- DISALLOW_COPY_AND_ASSIGN(MediaStreamRendererFactory);
+ int render_frame_id) = 0;
};
} // namespace content
-#endif // CONTENT_RENDERER_MEDIA_MEDIA_STREAM_RENDERER_FACTORY_H_
+#endif // CONTENT_PUBLIC_RENDERER_MEDIA_STREAM_RENDERER_FACTORY_H_
diff --git a/content/renderer/media/video_frame_provider.h b/content/public/renderer/video_frame_provider.h
index 8d9278f..08e51da 100644
--- a/content/renderer/media/video_frame_provider.h
+++ b/content/public/renderer/video_frame_provider.h
@@ -2,12 +2,11 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef CONTENT_RENDERER_MEDIA_VIDEO_FRAME_PROVIDER_H_
-#define CONTENT_RENDERER_MEDIA_VIDEO_FRAME_PROVIDER_H_
+#ifndef CONTENT_PUBLIC_RENDERER_VIDEO_FRAME_PROVIDER_H_
+#define CONTENT_PUBLIC_RENDERER_VIDEO_FRAME_PROVIDER_H_
#include "base/callback.h"
#include "base/memory/ref_counted.h"
-#include "content/common/content_export.h"
namespace media {
class VideoFrame;
@@ -18,7 +17,7 @@ namespace content {
// Define an interface to provide a sequence of video frames to clients.
// TODO(wjia): remove ref count.
// TODO(wjia): rename interface so it doesn't clash with cc::VideoFrameProvider.
-class CONTENT_EXPORT VideoFrameProvider
+class VideoFrameProvider
: public base::RefCountedThreadSafe<VideoFrameProvider> {
public:
typedef base::Callback<void(const scoped_refptr<media::VideoFrame>&)>
@@ -41,13 +40,10 @@ class CONTENT_EXPORT VideoFrameProvider
protected:
friend class base::RefCountedThreadSafe<VideoFrameProvider>;
- VideoFrameProvider();
- virtual ~VideoFrameProvider();
+ virtual ~VideoFrameProvider() {}
- private:
- DISALLOW_COPY_AND_ASSIGN(VideoFrameProvider);
};
} // namespace content
-#endif // CONTENT_RENDERER_MEDIA_VIDEO_FRAME_PROVIDER_H_
+#endif // CONTENT_PUBLIC_RENDERER_VIDEO_FRAME_PROVIDER_H_
diff --git a/content/renderer/BUILD.gn b/content/renderer/BUILD.gn
index bba336d..6bd5180 100644
--- a/content/renderer/BUILD.gn
+++ b/content/renderer/BUILD.gn
@@ -110,8 +110,6 @@ source_set("renderer") {
sources -= [
"media/media_stream_audio_level_calculator.cc",
"media/media_stream_audio_level_calculator.h",
- "media/media_stream_audio_renderer.cc",
- "media/media_stream_audio_renderer.h",
"media/media_stream_center.h",
"media/media_stream_constraints_util.cc",
"media/media_stream_constraints_util.h",
diff --git a/content/renderer/media/media_stream_audio_renderer.cc b/content/renderer/media/media_stream_audio_renderer.cc
deleted file mode 100644
index 0d9f1dd..0000000
--- a/content/renderer/media/media_stream_audio_renderer.cc
+++ /dev/null
@@ -1,12 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "content/renderer/media/media_stream_audio_renderer.h"
-
-namespace content {
-
-MediaStreamAudioRenderer::MediaStreamAudioRenderer() {}
-MediaStreamAudioRenderer::~MediaStreamAudioRenderer() {}
-
-} // namespace content
diff --git a/content/renderer/media/media_stream_renderer_factory.cc b/content/renderer/media/media_stream_renderer_factory_impl.cc
index 20ee8ad..cfc37a7 100644
--- a/content/renderer/media/media_stream_renderer_factory.cc
+++ b/content/renderer/media/media_stream_renderer_factory_impl.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "content/renderer/media/media_stream_renderer_factory.h"
+#include "content/renderer/media/media_stream_renderer_factory_impl.h"
#include "base/strings/utf_string_conversions.h"
#include "content/renderer/media/media_stream.h"
@@ -62,7 +62,7 @@ scoped_refptr<WebRtcAudioRenderer> CreateRemoteAudioRenderer(
if (stream->GetAudioTracks().empty())
return NULL;
- DVLOG(1) << "MediaStreamRendererFactory::CreateRemoteAudioRenderer label:"
+ DVLOG(1) << "MediaStreamRendererFactoryImpl::CreateRemoteAudioRenderer label:"
<< stream->label();
// TODO(tommi): Change the default value of session_id to be
@@ -83,7 +83,7 @@ scoped_refptr<WebRtcAudioRenderer> CreateRemoteAudioRenderer(
scoped_refptr<WebRtcLocalAudioRenderer> CreateLocalAudioRenderer(
const blink::WebMediaStreamTrack& audio_track,
int render_frame_id) {
- DVLOG(1) << "MediaStreamRendererFactory::CreateLocalAudioRenderer";
+ DVLOG(1) << "MediaStreamRendererFactoryImpl::CreateLocalAudioRenderer";
int session_id = 0, sample_rate = 0, buffer_size = 0;
if (!GetAuthorizedDeviceInfoForAudioRenderer(&session_id,
@@ -104,14 +104,14 @@ scoped_refptr<WebRtcLocalAudioRenderer> CreateLocalAudioRenderer(
} // namespace
-MediaStreamRendererFactory::MediaStreamRendererFactory() {
+MediaStreamRendererFactoryImpl::MediaStreamRendererFactoryImpl() {
}
-MediaStreamRendererFactory::~MediaStreamRendererFactory() {
+MediaStreamRendererFactoryImpl::~MediaStreamRendererFactoryImpl() {
}
scoped_refptr<VideoFrameProvider>
-MediaStreamRendererFactory::GetVideoFrameProvider(
+MediaStreamRendererFactoryImpl::GetVideoFrameProvider(
const GURL& url,
const base::Closure& error_cb,
const VideoFrameProvider::RepaintCB& repaint_cb) {
@@ -119,7 +119,7 @@ MediaStreamRendererFactory::GetVideoFrameProvider(
blink::WebMediaStreamRegistry::lookupMediaStreamDescriptor(url);
DCHECK(!web_stream.isNull());
- DVLOG(1) << "MediaStreamRendererFactory::GetVideoFrameProvider stream:"
+ DVLOG(1) << "MediaStreamRendererFactoryImpl::GetVideoFrameProvider stream:"
<< base::UTF16ToUTF8(web_stream.id());
blink::WebVector<blink::WebMediaStreamTrack> video_tracks;
@@ -133,7 +133,7 @@ MediaStreamRendererFactory::GetVideoFrameProvider(
}
scoped_refptr<MediaStreamAudioRenderer>
-MediaStreamRendererFactory::GetAudioRenderer(const GURL& url,
+MediaStreamRendererFactoryImpl::GetAudioRenderer(const GURL& url,
int render_frame_id) {
blink::WebMediaStream web_stream =
blink::WebMediaStreamRegistry::lookupMediaStreamDescriptor(url);
@@ -141,7 +141,7 @@ MediaStreamRendererFactory::GetAudioRenderer(const GURL& url,
if (web_stream.isNull() || !web_stream.extraData())
return NULL; // This is not a valid stream.
- DVLOG(1) << "MediaStreamRendererFactory::GetAudioRenderer stream:"
+ DVLOG(1) << "MediaStreamRendererFactoryImpl::GetAudioRenderer stream:"
<< base::UTF16ToUTF8(web_stream.id());
MediaStream* native_stream = MediaStream::GetMediaStream(web_stream);
diff --git a/content/renderer/media/media_stream_renderer_factory_impl.h b/content/renderer/media/media_stream_renderer_factory_impl.h
new file mode 100644
index 0000000..3bfad63
--- /dev/null
+++ b/content/renderer/media/media_stream_renderer_factory_impl.h
@@ -0,0 +1,32 @@
+// Copyright 2014 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CONTENT_RENDERER_MEDIA_MEDIA_STREAM_RENDERER_FACTORY_IMPL_H_
+#define CONTENT_RENDERER_MEDIA_MEDIA_STREAM_RENDERER_FACTORY_IMPL_H_
+
+#include "content/public/renderer/media_stream_renderer_factory.h"
+
+namespace content {
+
+class MediaStreamRendererFactoryImpl : public MediaStreamRendererFactory {
+ public:
+ MediaStreamRendererFactoryImpl();
+ ~MediaStreamRendererFactoryImpl() override;
+
+ scoped_refptr<VideoFrameProvider> GetVideoFrameProvider(
+ const GURL& url,
+ const base::Closure& error_cb,
+ const VideoFrameProvider::RepaintCB& repaint_cb) override;
+
+ scoped_refptr<MediaStreamAudioRenderer> GetAudioRenderer(
+ const GURL& url,
+ int render_frame_id) override;
+
+ private:
+ DISALLOW_COPY_AND_ASSIGN(MediaStreamRendererFactoryImpl);
+};
+
+} // namespace content
+
+#endif // CONTENT_RENDERER_MEDIA_MEDIA_STREAM_RENDERER_FACTORY_IMPL_H_
diff --git a/content/renderer/media/rtc_video_renderer.h b/content/renderer/media/rtc_video_renderer.h
index edaec04..67a62af 100644
--- a/content/renderer/media/rtc_video_renderer.h
+++ b/content/renderer/media/rtc_video_renderer.h
@@ -10,7 +10,7 @@
#include "content/common/content_export.h"
#include "content/common/media/video_capture.h"
#include "content/public/renderer/media_stream_video_sink.h"
-#include "content/renderer/media/video_frame_provider.h"
+#include "content/public/renderer/video_frame_provider.h"
#include "third_party/WebKit/public/platform/WebMediaStreamTrack.h"
#include "ui/gfx/geometry/size.h"
diff --git a/content/renderer/media/video_frame_provider.cc b/content/renderer/media/video_frame_provider.cc
deleted file mode 100644
index 48f50e0..0000000
--- a/content/renderer/media/video_frame_provider.cc
+++ /dev/null
@@ -1,13 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "content/renderer/media/video_frame_provider.h"
-
-namespace content {
-
-VideoFrameProvider::VideoFrameProvider() {}
-
-VideoFrameProvider::~VideoFrameProvider() {}
-
-} // namespace content
diff --git a/content/renderer/media/webmediaplayer_ms.cc b/content/renderer/media/webmediaplayer_ms.cc
index bbf65b7..3bf82bb 100644
--- a/content/renderer/media/webmediaplayer_ms.cc
+++ b/content/renderer/media/webmediaplayer_ms.cc
@@ -13,10 +13,10 @@
#include "cc/blink/context_provider_web_context.h"
#include "cc/blink/web_layer_impl.h"
#include "cc/layers/video_layer.h"
+#include "content/public/renderer/media_stream_audio_renderer.h"
+#include "content/public/renderer/media_stream_renderer_factory.h"
#include "content/public/renderer/render_view.h"
-#include "content/renderer/media/media_stream_audio_renderer.h"
-#include "content/renderer/media/media_stream_renderer_factory.h"
-#include "content/renderer/media/video_frame_provider.h"
+#include "content/public/renderer/video_frame_provider.h"
#include "content/renderer/render_frame_impl.h"
#include "content/renderer/render_thread_impl.h"
#include "gpu/blink/webgraphicscontext3d_impl.h"
diff --git a/content/renderer/media/webrtc_audio_renderer.h b/content/renderer/media/webrtc_audio_renderer.h
index 6d718e4..86a00a2f 100644
--- a/content/renderer/media/webrtc_audio_renderer.h
+++ b/content/renderer/media/webrtc_audio_renderer.h
@@ -9,7 +9,7 @@
#include "base/synchronization/lock.h"
#include "base/threading/non_thread_safe.h"
#include "base/threading/thread_checker.h"
-#include "content/renderer/media/media_stream_audio_renderer.h"
+#include "content/public/renderer/media_stream_audio_renderer.h"
#include "content/renderer/media/webrtc_audio_device_impl.h"
#include "media/base/audio_decoder.h"
#include "media/base/audio_pull_fifo.h"
diff --git a/content/renderer/media/webrtc_audio_renderer_unittest.cc b/content/renderer/media/webrtc_audio_renderer_unittest.cc
index 2d97f1f..06238dc 100644
--- a/content/renderer/media/webrtc_audio_renderer_unittest.cc
+++ b/content/renderer/media/webrtc_audio_renderer_unittest.cc
@@ -5,9 +5,9 @@
#include <vector>
#include "base/single_thread_task_runner.h"
+#include "content/public/renderer/media_stream_audio_renderer.h"
#include "content/renderer/media/audio_device_factory.h"
#include "content/renderer/media/audio_message_filter.h"
-#include "content/renderer/media/media_stream_audio_renderer.h"
#include "content/renderer/media/webrtc/mock_peer_connection_dependency_factory.h"
#include "content/renderer/media/webrtc_audio_device_impl.h"
#include "content/renderer/media/webrtc_audio_renderer.h"
diff --git a/content/renderer/media/webrtc_local_audio_renderer.h b/content/renderer/media/webrtc_local_audio_renderer.h
index 86147a4..3ee17f0 100644
--- a/content/renderer/media/webrtc_local_audio_renderer.h
+++ b/content/renderer/media/webrtc_local_audio_renderer.h
@@ -13,8 +13,8 @@
#include "base/synchronization/lock.h"
#include "base/threading/thread_checker.h"
#include "content/common/content_export.h"
+#include "content/public/renderer/media_stream_audio_renderer.h"
#include "content/public/renderer/media_stream_audio_sink.h"
-#include "content/renderer/media/media_stream_audio_renderer.h"
#include "content/renderer/media/webrtc_audio_device_impl.h"
#include "content/renderer/media/webrtc_local_audio_track.h"
#include "third_party/WebKit/public/platform/WebMediaStreamTrack.h"
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
index c548fe0..6c1cf84 100644
--- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc
@@ -80,7 +80,7 @@
#include "content/renderer/media/crypto/render_cdm_factory.h"
#include "content/renderer/media/media_permission_dispatcher.h"
#include "content/renderer/media/media_stream_dispatcher.h"
-#include "content/renderer/media/media_stream_renderer_factory.h"
+#include "content/renderer/media/media_stream_renderer_factory_impl.h"
#include "content/renderer/media/midi_dispatcher.h"
#include "content/renderer/media/render_media_log.h"
#include "content/renderer/media/user_media_client_impl.h"
@@ -4569,9 +4569,13 @@ WebMediaPlayer* RenderFrameImpl::CreateWebMediaPlayerForMediaStream(
scoped_ptr<MediaStreamRendererFactory>
RenderFrameImpl::CreateRendererFactory() {
+ scoped_ptr<MediaStreamRendererFactory> factory =
+ GetContentClient()->renderer()->CreateMediaStreamRendererFactory();
+ if (factory.get())
+ return factory.Pass();
#if defined(ENABLE_WEBRTC)
return scoped_ptr<MediaStreamRendererFactory>(
- new MediaStreamRendererFactory());
+ new MediaStreamRendererFactoryImpl());
#else
return scoped_ptr<MediaStreamRendererFactory>(
static_cast<MediaStreamRendererFactory*>(NULL));
diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h
index a394bef..69a9439 100644
--- a/content/renderer/render_frame_impl.h
+++ b/content/renderer/render_frame_impl.h
@@ -742,8 +742,7 @@ class CONTENT_EXPORT RenderFrameImpl
blink::WebMediaPlayerClient* client);
// Creates a factory object used for creating audio and video renderers.
- // The method is virtual so that layouttests can override it.
- virtual scoped_ptr<MediaStreamRendererFactory> CreateRendererFactory();
+ scoped_ptr<MediaStreamRendererFactory> CreateRendererFactory();
// Checks that the RenderView is ready to display the navigation to |url|. If
// the return value is false, the navigation should be abandoned.
diff --git a/content/shell/BUILD.gn b/content/shell/BUILD.gn
index f263c20..5f00dde 100644
--- a/content/shell/BUILD.gn
+++ b/content/shell/BUILD.gn
@@ -162,6 +162,10 @@ static_library("content_shell_lib") {
"renderer/layout_test/layout_test_render_process_observer.h",
"renderer/layout_test/leak_detector.cc",
"renderer/layout_test/leak_detector.h",
+ "renderer/layout_test/test_media_stream_renderer_factory.cc",
+ "renderer/layout_test/test_media_stream_renderer_factory.h",
+ "renderer/layout_test/test_video_frame_provider.cc",
+ "renderer/layout_test/test_video_frame_provider.h",
"renderer/shell_content_renderer_client.cc",
"renderer/shell_content_renderer_client.h",
"renderer/shell_render_view_observer.cc",
diff --git a/content/shell/renderer/DEPS b/content/shell/renderer/DEPS
index 8b18709..97240fd 100644
--- a/content/shell/renderer/DEPS
+++ b/content/shell/renderer/DEPS
@@ -1,4 +1,5 @@
include_rules = [
"+gin",
"+components/web_cache/renderer",
+ "+media",
]
diff --git a/content/shell/renderer/layout_test/layout_test_content_renderer_client.cc b/content/shell/renderer/layout_test/layout_test_content_renderer_client.cc
index c4fbdf7..ff01415 100644
--- a/content/shell/renderer/layout_test/layout_test_content_renderer_client.cc
+++ b/content/shell/renderer/layout_test/layout_test_content_renderer_client.cc
@@ -17,6 +17,7 @@
#include "content/shell/renderer/layout_test/blink_test_runner.h"
#include "content/shell/renderer/layout_test/layout_test_render_frame_observer.h"
#include "content/shell/renderer/layout_test/layout_test_render_process_observer.h"
+#include "content/shell/renderer/layout_test/test_media_stream_renderer_factory.h"
#include "content/shell/renderer/shell_render_view_observer.h"
#include "content/shell/renderer/test_runner/app_banner_client.h"
#include "content/shell/renderer/test_runner/mock_credential_manager_client.h"
@@ -171,6 +172,16 @@ LayoutTestContentRendererClient::CreateAppBannerClient(
return interfaces->CreateAppBannerClient();
}
+scoped_ptr<MediaStreamRendererFactory>
+LayoutTestContentRendererClient::CreateMediaStreamRendererFactory() {
+#if defined(ENABLE_WEBRTC)
+ return scoped_ptr<MediaStreamRendererFactory>(
+ new TestMediaStreamRendererFactory());
+#else
+ return nullptr;
+#endif
+}
+
void LayoutTestContentRendererClient::WebTestProxyCreated(
RenderView* render_view,
WebTestProxyBase* proxy) {
diff --git a/content/shell/renderer/layout_test/layout_test_content_renderer_client.h b/content/shell/renderer/layout_test/layout_test_content_renderer_client.h
index a20db61..a1ae6a9 100644
--- a/content/shell/renderer/layout_test/layout_test_content_renderer_client.h
+++ b/content/shell/renderer/layout_test/layout_test_content_renderer_client.h
@@ -45,6 +45,8 @@ class LayoutTestContentRendererClient : public ShellContentRendererClient {
blink::WebThemeEngine* OverrideThemeEngine() override;
scoped_ptr<blink::WebAppBannerClient> CreateAppBannerClient(
RenderFrame* render_frame) override;
+ scoped_ptr<MediaStreamRendererFactory> CreateMediaStreamRendererFactory()
+ override;
private:
void WebTestProxyCreated(RenderView* render_view, WebTestProxyBase* proxy);
diff --git a/content/test/test_media_stream_renderer_factory.cc b/content/shell/renderer/layout_test/test_media_stream_renderer_factory.cc
index 1f4ccda..0c07c5a 100644
--- a/content/test/test_media_stream_renderer_factory.cc
+++ b/content/shell/renderer/layout_test/test_media_stream_renderer_factory.cc
@@ -2,10 +2,9 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "content/test/test_media_stream_renderer_factory.h"
+#include "content/shell/renderer/layout_test/test_media_stream_renderer_factory.h"
-#include "content/renderer/media/media_stream_audio_renderer.h"
-#include "content/test/test_video_frame_provider.h"
+#include "content/shell/renderer/layout_test/test_video_frame_provider.h"
#include "third_party/WebKit/public/platform/WebMediaStream.h"
#include "third_party/WebKit/public/platform/WebMediaStreamTrack.h"
#include "third_party/WebKit/public/web/WebMediaStreamRegistry.h"
diff --git a/content/test/test_media_stream_renderer_factory.h b/content/shell/renderer/layout_test/test_media_stream_renderer_factory.h
index a2bb0d7..2b9a294 100644
--- a/content/test/test_media_stream_renderer_factory.h
+++ b/content/shell/renderer/layout_test/test_media_stream_renderer_factory.h
@@ -2,11 +2,11 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef CONTENT_TEST_TEST_MEDIA_STREAM_RENDERER_FACTORY_H_
-#define CONTENT_TEST_TEST_MEDIA_STREAM_RENDERER_FACTORY_H_
+#ifndef CONTENT_SHELL_RENDERER_LAYOUT_TEST_TEST_MEDIA_STREAM_RENDERER_FACTORY_H_
+#define CONTENT_SHELL_RENDERER_LAYOUT_TEST_TEST_MEDIA_STREAM_RENDERER_FACTORY_H_
#include "base/callback_forward.h"
-#include "content/renderer/media/media_stream_renderer_factory.h"
+#include "content/public/renderer/media_stream_renderer_factory.h"
#include "third_party/WebKit/public/platform/WebURL.h"
namespace content {
@@ -31,4 +31,4 @@ class TestMediaStreamRendererFactory : public MediaStreamRendererFactory {
} // namespace content
-#endif // CONTENT_TEST_TEST_MEDIA_STREAM_RENDERER_FACTORY_H_
+#endif // CONTENT_SHELL_RENDERER_LAYOUT_TEST_TEST_MEDIA_STREAM_RENDERER_FACTORY_H_
diff --git a/content/test/test_video_frame_provider.cc b/content/shell/renderer/layout_test/test_video_frame_provider.cc
index d568359..0989572 100644
--- a/content/test/test_video_frame_provider.cc
+++ b/content/shell/renderer/layout_test/test_video_frame_provider.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "content/test/test_video_frame_provider.h"
+#include "content/shell/renderer/layout_test/test_video_frame_provider.h"
#include "base/bind.h"
#include "base/location.h"
diff --git a/content/test/test_video_frame_provider.h b/content/shell/renderer/layout_test/test_video_frame_provider.h
index d3a4590..00ee3c8 100644
--- a/content/test/test_video_frame_provider.h
+++ b/content/shell/renderer/layout_test/test_video_frame_provider.h
@@ -2,11 +2,11 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef CONTENT_TEST_TEST_VIDEO_FRAME_PROVIDER_H_
-#define CONTENT_TEST_TEST_VIDEO_FRAME_PROVIDER_H_
+#ifndef CONTENT_SHELL_RENDERER_LAYOUT_TEST_TEST_VIDEO_FRAME_PROVIDER_H_
+#define CONTENT_SHELL_RENDERER_LAYOUT_TEST_TEST_VIDEO_FRAME_PROVIDER_H_
#include "base/time/time.h"
-#include "content/renderer/media/video_frame_provider.h"
+#include "content/public/renderer/video_frame_provider.h"
#include "ui/gfx/geometry/size.h"
namespace base {
@@ -60,4 +60,4 @@ class TestVideoFrameProvider : public VideoFrameProvider {
} // namespace content
-#endif // CONTENT_TEST_TEST_VIDEO_FRAME_PROVIDER_H_
+#endif // CONTENT_SHELL_RENDERER_LAYOUT_TEST_TEST_VIDEO_FRAME_PROVIDER_H_
diff --git a/content/shell/renderer/test_runner/web_frame_test_proxy.h b/content/shell/renderer/test_runner/web_frame_test_proxy.h
index 058a273..8045f28 100644
--- a/content/shell/renderer/test_runner/web_frame_test_proxy.h
+++ b/content/shell/renderer/test_runner/web_frame_test_proxy.h
@@ -11,7 +11,6 @@
#include "content/shell/renderer/test_runner/test_runner.h"
#include "content/shell/renderer/test_runner/web_test_delegate.h"
#include "content/shell/renderer/test_runner/web_test_proxy.h"
-#include "content/test/test_media_stream_renderer_factory.h"
#include "third_party/WebKit/public/platform/WebString.h"
namespace content {
@@ -283,13 +282,6 @@ class WebFrameTestProxy : public Base {
}
private:
-#if defined(ENABLE_WEBRTC)
- scoped_ptr<MediaStreamRendererFactory> CreateRendererFactory() override {
- return scoped_ptr<MediaStreamRendererFactory>(
- new TestMediaStreamRendererFactory());
- }
-#endif
-
WebTestProxyBase* base_proxy_;
DISALLOW_COPY_AND_ASSIGN(WebFrameTestProxy);
diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn
index 7fd7144..987b075 100644
--- a/content/test/BUILD.gn
+++ b/content/test/BUILD.gn
@@ -228,13 +228,6 @@ if (!is_ios) {
if (is_android) {
deps += [ ":jni" ]
}
-
- if (!enable_webrtc) {
- sources -= [
- "test_media_stream_renderer_factory.cc",
- "test_media_stream_renderer_factory.h",
- ]
- }
}
if (is_android) {