OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/renderer/media/media_stream_renderer_factory_impl.h" | 5 #include "content/renderer/media/media_stream_renderer_factory_impl.h" |
6 | 6 |
7 #include "base/strings/utf_string_conversions.h" | 7 #include "base/strings/utf_string_conversions.h" |
8 #include "content/renderer/media/media_stream.h" | 8 #include "content/renderer/media/media_stream.h" |
9 #include "content/renderer/media/media_stream_video_renderer_sink.h" | 9 #include "content/renderer/media/media_stream_video_renderer_sink.h" |
10 #include "content/renderer/media/media_stream_video_track.h" | 10 #include "content/renderer/media/media_stream_video_track.h" |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
88 MediaStreamRendererFactoryImpl::MediaStreamRendererFactoryImpl() { | 88 MediaStreamRendererFactoryImpl::MediaStreamRendererFactoryImpl() { |
89 } | 89 } |
90 | 90 |
91 MediaStreamRendererFactoryImpl::~MediaStreamRendererFactoryImpl() { | 91 MediaStreamRendererFactoryImpl::~MediaStreamRendererFactoryImpl() { |
92 } | 92 } |
93 | 93 |
94 scoped_refptr<VideoFrameProvider> | 94 scoped_refptr<VideoFrameProvider> |
95 MediaStreamRendererFactoryImpl::GetVideoFrameProvider( | 95 MediaStreamRendererFactoryImpl::GetVideoFrameProvider( |
96 const GURL& url, | 96 const GURL& url, |
97 const base::Closure& error_cb, | 97 const base::Closure& error_cb, |
98 const VideoFrameProvider::RepaintCB& repaint_cb) { | 98 const VideoFrameProvider::RepaintCB& repaint_cb, |
| 99 const scoped_refptr<base::SingleThreadTaskRunner>& media_task_runner, |
| 100 const scoped_refptr<base::TaskRunner>& worker_task_runner, |
| 101 const scoped_refptr<media::GpuVideoAcceleratorFactories>& gpu_factories) { |
99 blink::WebMediaStream web_stream = | 102 blink::WebMediaStream web_stream = |
100 blink::WebMediaStreamRegistry::lookupMediaStreamDescriptor(url); | 103 blink::WebMediaStreamRegistry::lookupMediaStreamDescriptor(url); |
101 DCHECK(!web_stream.isNull()); | 104 DCHECK(!web_stream.isNull()); |
102 | 105 |
103 DVLOG(1) << "MediaStreamRendererFactoryImpl::GetVideoFrameProvider stream:" | 106 DVLOG(1) << "MediaStreamRendererFactoryImpl::GetVideoFrameProvider stream:" |
104 << base::UTF16ToUTF8(base::StringPiece16(web_stream.id())); | 107 << base::UTF16ToUTF8(base::StringPiece16(web_stream.id())); |
105 | 108 |
106 blink::WebVector<blink::WebMediaStreamTrack> video_tracks; | 109 blink::WebVector<blink::WebMediaStreamTrack> video_tracks; |
107 web_stream.videoTracks(video_tracks); | 110 web_stream.videoTracks(video_tracks); |
108 if (video_tracks.isEmpty() || | 111 if (video_tracks.isEmpty() || |
109 !MediaStreamVideoTrack::GetTrack(video_tracks[0])) { | 112 !MediaStreamVideoTrack::GetTrack(video_tracks[0])) { |
110 return NULL; | 113 return NULL; |
111 } | 114 } |
112 | 115 |
113 return new MediaStreamVideoRendererSink(video_tracks[0], error_cb, | 116 return new MediaStreamVideoRendererSink(video_tracks[0], error_cb, repaint_cb, |
114 repaint_cb); | 117 media_task_runner, worker_task_runner, |
| 118 gpu_factories); |
115 } | 119 } |
116 | 120 |
117 scoped_refptr<MediaStreamAudioRenderer> | 121 scoped_refptr<MediaStreamAudioRenderer> |
118 MediaStreamRendererFactoryImpl::GetAudioRenderer( | 122 MediaStreamRendererFactoryImpl::GetAudioRenderer( |
119 const GURL& url, | 123 const GURL& url, |
120 int render_frame_id, | 124 int render_frame_id, |
121 const std::string& device_id, | 125 const std::string& device_id, |
122 const url::Origin& security_origin) { | 126 const url::Origin& security_origin) { |
123 blink::WebMediaStream web_stream = | 127 blink::WebMediaStream web_stream = |
124 blink::WebMediaStreamRegistry::lookupMediaStreamDescriptor(url); | 128 blink::WebMediaStreamRegistry::lookupMediaStreamDescriptor(url); |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
170 | 174 |
171 if (renderer.get() && !audio_device->SetAudioRenderer(renderer.get())) | 175 if (renderer.get() && !audio_device->SetAudioRenderer(renderer.get())) |
172 renderer = NULL; | 176 renderer = NULL; |
173 } | 177 } |
174 | 178 |
175 return renderer.get() ? | 179 return renderer.get() ? |
176 renderer->CreateSharedAudioRendererProxy(stream) : NULL; | 180 renderer->CreateSharedAudioRendererProxy(stream) : NULL; |
177 } | 181 } |
178 | 182 |
179 } // namespace content | 183 } // namespace content |
OLD | NEW |