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

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

Issue 83023005: Add VideoTrackSink interface to content/public (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Added AddToVideoTrack Created 7 years 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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_dependency_factory.h" 5 #include "content/renderer/media/media_stream_dependency_factory.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/strings/utf_string_conversions.h" 10 #include "base/strings/utf_string_conversions.h"
11 #include "base/synchronization/waitable_event.h" 11 #include "base/synchronization/waitable_event.h"
12 #include "content/public/common/content_switches.h" 12 #include "content/public/common/content_switches.h"
13 #include "content/renderer/media/media_stream_source_extra_data.h" 13 #include "content/renderer/media/media_stream_source_extra_data.h"
14 #include "content/renderer/media/media_stream_track_extra_data.h" 14 #include "content/renderer/media/media_stream_track_extra_data.h"
15 #include "content/renderer/media/media_stream_video_track.h"
15 #include "content/renderer/media/peer_connection_identity_service.h" 16 #include "content/renderer/media/peer_connection_identity_service.h"
16 #include "content/renderer/media/rtc_media_constraints.h" 17 #include "content/renderer/media/rtc_media_constraints.h"
17 #include "content/renderer/media/rtc_peer_connection_handler.h" 18 #include "content/renderer/media/rtc_peer_connection_handler.h"
18 #include "content/renderer/media/rtc_video_capturer.h" 19 #include "content/renderer/media/rtc_video_capturer.h"
19 #include "content/renderer/media/rtc_video_decoder_factory.h" 20 #include "content/renderer/media/rtc_video_decoder_factory.h"
20 #include "content/renderer/media/rtc_video_encoder_factory.h" 21 #include "content/renderer/media/rtc_video_encoder_factory.h"
21 #include "content/renderer/media/video_capture_impl_manager.h" 22 #include "content/renderer/media/video_capture_impl_manager.h"
22 #include "content/renderer/media/webaudio_capturer_source.h" 23 #include "content/renderer/media/webaudio_capturer_source.h"
23 #include "content/renderer/media/webrtc_audio_device_impl.h" 24 #include "content/renderer/media/webrtc_audio_device_impl.h"
24 #include "content/renderer/media/webrtc_local_audio_track.h" 25 #include "content/renderer/media/webrtc_local_audio_track.h"
(...skipping 882 matching lines...) Expand 10 before | Expand all | Expand 10 after
907 GetWebRtcAudioDevice()->AddAudioCapturer(capturer); 908 GetWebRtcAudioDevice()->AddAudioCapturer(capturer);
908 909
909 return capturer; 910 return capturer;
910 } 911 }
911 912
912 void MediaStreamDependencyFactory::AddNativeTrackToBlinkTrack( 913 void MediaStreamDependencyFactory::AddNativeTrackToBlinkTrack(
913 webrtc::MediaStreamTrackInterface* native_track, 914 webrtc::MediaStreamTrackInterface* native_track,
914 const blink::WebMediaStreamTrack& webkit_track) { 915 const blink::WebMediaStreamTrack& webkit_track) {
915 DCHECK(!webkit_track.isNull() && !webkit_track.extraData()); 916 DCHECK(!webkit_track.isNull() && !webkit_track.extraData());
916 blink::WebMediaStreamTrack track = webkit_track; 917 blink::WebMediaStreamTrack track = webkit_track;
917 track.setExtraData(new MediaStreamTrackExtraData(native_track)); 918
919 if (track.source().type() == blink::WebMediaStreamSource::TypeVideo) {
920 track.setExtraData(new MediaStreamVideoTrack(
921 static_cast<webrtc::VideoTrackInterface*> (native_track)));
tommi (sloooow) - chröme 2013/11/27 16:53:07 no space after >
perkj_chrome 2013/11/28 13:32:45 Done.
922 } else {
923 track.setExtraData(new MediaStreamTrackExtraData(native_track));
924 }
918 } 925 }
919 926
920 webrtc::MediaStreamInterface* 927 webrtc::MediaStreamInterface*
921 MediaStreamDependencyFactory::GetNativeMediaStream( 928 MediaStreamDependencyFactory::GetNativeMediaStream(
922 const blink::WebMediaStream& stream) { 929 const blink::WebMediaStream& stream) {
923 if (stream.isNull()) 930 if (stream.isNull())
924 return NULL; 931 return NULL;
925 MediaStreamExtraData* extra_data = 932 MediaStreamExtraData* extra_data =
926 static_cast<MediaStreamExtraData*>(stream.extraData()); 933 static_cast<MediaStreamExtraData*>(stream.extraData());
927 return extra_data ? extra_data->stream().get() : NULL; 934 return extra_data ? extra_data->stream().get() : NULL;
928 } 935 }
929 936
930 webrtc::MediaStreamTrackInterface* 937 webrtc::MediaStreamTrackInterface*
931 MediaStreamDependencyFactory::GetNativeMediaStreamTrack( 938 MediaStreamDependencyFactory::GetNativeMediaStreamTrack(
932 const blink::WebMediaStreamTrack& track) { 939 const blink::WebMediaStreamTrack& track) {
933 if (track.isNull()) 940 if (track.isNull())
934 return NULL; 941 return NULL;
935 MediaStreamTrackExtraData* extra_data = 942 MediaStreamTrackExtraData* extra_data =
936 static_cast<MediaStreamTrackExtraData*>(track.extraData()); 943 static_cast<MediaStreamTrackExtraData*>(track.extraData());
937 return extra_data ? extra_data->track().get() : NULL; 944 return extra_data ? extra_data->track().get() : NULL;
938 } 945 }
939 946
940 } // namespace content 947 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698