Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(76)

Side by Side Diff: content/renderer/media/media_stream_renderer_factory_impl.cc

Issue 1259673002: Make UTF16ToASCII and UTF16TOUTF8 take a StringPiece (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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_track.h" 9 #include "content/renderer/media/media_stream_video_track.h"
10 #include "content/renderer/media/rtc_video_renderer.h" 10 #include "content/renderer/media/rtc_video_renderer.h"
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
113 scoped_refptr<VideoFrameProvider> 113 scoped_refptr<VideoFrameProvider>
114 MediaStreamRendererFactoryImpl::GetVideoFrameProvider( 114 MediaStreamRendererFactoryImpl::GetVideoFrameProvider(
115 const GURL& url, 115 const GURL& url,
116 const base::Closure& error_cb, 116 const base::Closure& error_cb,
117 const VideoFrameProvider::RepaintCB& repaint_cb) { 117 const VideoFrameProvider::RepaintCB& repaint_cb) {
118 blink::WebMediaStream web_stream = 118 blink::WebMediaStream web_stream =
119 blink::WebMediaStreamRegistry::lookupMediaStreamDescriptor(url); 119 blink::WebMediaStreamRegistry::lookupMediaStreamDescriptor(url);
120 DCHECK(!web_stream.isNull()); 120 DCHECK(!web_stream.isNull());
121 121
122 DVLOG(1) << "MediaStreamRendererFactoryImpl::GetVideoFrameProvider stream:" 122 DVLOG(1) << "MediaStreamRendererFactoryImpl::GetVideoFrameProvider stream:"
123 << base::UTF16ToUTF8(web_stream.id()); 123 << base::UTF16ToUTF8(base::StringPiece16(web_stream.id()));
124 124
125 blink::WebVector<blink::WebMediaStreamTrack> video_tracks; 125 blink::WebVector<blink::WebMediaStreamTrack> video_tracks;
126 web_stream.videoTracks(video_tracks); 126 web_stream.videoTracks(video_tracks);
127 if (video_tracks.isEmpty() || 127 if (video_tracks.isEmpty() ||
128 !MediaStreamVideoTrack::GetTrack(video_tracks[0])) { 128 !MediaStreamVideoTrack::GetTrack(video_tracks[0])) {
129 return NULL; 129 return NULL;
130 } 130 }
131 131
132 return new RTCVideoRenderer(video_tracks[0], error_cb, repaint_cb); 132 return new RTCVideoRenderer(video_tracks[0], error_cb, repaint_cb);
133 } 133 }
134 134
135 scoped_refptr<MediaStreamAudioRenderer> 135 scoped_refptr<MediaStreamAudioRenderer>
136 MediaStreamRendererFactoryImpl::GetAudioRenderer(const GURL& url, 136 MediaStreamRendererFactoryImpl::GetAudioRenderer(const GURL& url,
137 int render_frame_id) { 137 int render_frame_id) {
138 blink::WebMediaStream web_stream = 138 blink::WebMediaStream web_stream =
139 blink::WebMediaStreamRegistry::lookupMediaStreamDescriptor(url); 139 blink::WebMediaStreamRegistry::lookupMediaStreamDescriptor(url);
140 140
141 if (web_stream.isNull() || !web_stream.extraData()) 141 if (web_stream.isNull() || !web_stream.extraData())
142 return NULL; // This is not a valid stream. 142 return NULL; // This is not a valid stream.
143 143
144 DVLOG(1) << "MediaStreamRendererFactoryImpl::GetAudioRenderer stream:" 144 DVLOG(1) << "MediaStreamRendererFactoryImpl::GetAudioRenderer stream:"
145 << base::UTF16ToUTF8(web_stream.id()); 145 << base::UTF16ToUTF8(base::StringPiece16(web_stream.id()));
146 146
147 MediaStream* native_stream = MediaStream::GetMediaStream(web_stream); 147 MediaStream* native_stream = MediaStream::GetMediaStream(web_stream);
148 148
149 // TODO(tommi): MediaStreams do not have a 'local or not' concept. 149 // TODO(tommi): MediaStreams do not have a 'local or not' concept.
150 // Tracks _might_, but even so, we need to fix the data flow so that 150 // Tracks _might_, but even so, we need to fix the data flow so that
151 // it works the same way for all track implementations, local, remote or what 151 // it works the same way for all track implementations, local, remote or what
152 // have you. 152 // have you.
153 // In this function, we should simply create a renderer object that receives 153 // In this function, we should simply create a renderer object that receives
154 // and mixes audio from all the tracks that belong to the media stream. 154 // and mixes audio from all the tracks that belong to the media stream.
155 // We need to remove the |is_local| property from MediaStreamExtraData since 155 // We need to remove the |is_local| property from MediaStreamExtraData since
(...skipping 27 matching lines...) Expand all
183 183
184 if (renderer.get() && !audio_device->SetAudioRenderer(renderer.get())) 184 if (renderer.get() && !audio_device->SetAudioRenderer(renderer.get()))
185 renderer = NULL; 185 renderer = NULL;
186 } 186 }
187 187
188 return renderer.get() ? 188 return renderer.get() ?
189 renderer->CreateSharedAudioRendererProxy(stream) : NULL; 189 renderer->CreateSharedAudioRendererProxy(stream) : NULL;
190 } 190 }
191 191
192 } // namespace content 192 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698