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

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

Issue 1966043006: Revert of MediaStream audio: Refactor 3 separate "glue" implementations into one. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 7 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 (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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/mock_media_stream_registry.h" 5 #include "content/renderer/media/mock_media_stream_registry.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/strings/utf_string_conversions.h" 9 #include "base/strings/utf_string_conversions.h"
10 #include "content/renderer/media/media_stream.h" 10 #include "content/renderer/media/media_stream.h"
11 #include "content/renderer/media/media_stream_audio_source.h" 11 #include "content/renderer/media/media_stream_audio_source.h"
12 #include "content/renderer/media/media_stream_video_track.h" 12 #include "content/renderer/media/media_stream_video_track.h"
13 #include "content/renderer/media/mock_media_stream_video_source.h" 13 #include "content/renderer/media/mock_media_stream_video_source.h"
14 #include "content/renderer/media/webrtc/webrtc_local_audio_track_adapter.h"
15 #include "content/renderer/media/webrtc_local_audio_track.h"
14 #include "third_party/WebKit/public/platform/WebMediaStreamSource.h" 16 #include "third_party/WebKit/public/platform/WebMediaStreamSource.h"
15 #include "third_party/WebKit/public/platform/WebMediaStreamTrack.h" 17 #include "third_party/WebKit/public/platform/WebMediaStreamTrack.h"
16 #include "third_party/WebKit/public/platform/WebString.h" 18 #include "third_party/WebKit/public/platform/WebString.h"
17 #include "third_party/WebKit/public/platform/WebVector.h" 19 #include "third_party/WebKit/public/platform/WebVector.h"
18 20
19 namespace content { 21 namespace content {
20 22
21 namespace { 23 static const char kTestStreamLabel[] = "stream_label";
22
23 const char kTestStreamLabel[] = "stream_label";
24
25 class MockCDQualityAudioSource : public MediaStreamAudioSource {
26 public:
27 MockCDQualityAudioSource() : MediaStreamAudioSource(true) {
28 MediaStreamAudioSource::SetFormat(media::AudioParameters(
29 media::AudioParameters::AUDIO_PCM_LOW_LATENCY,
30 media::CHANNEL_LAYOUT_STEREO,
31 media::AudioParameters::kAudioCDSampleRate,
32 16,
33 media::AudioParameters::kAudioCDSampleRate / 100));
34 MediaStreamAudioSource::SetDeviceInfo(StreamDeviceInfo(
35 MEDIA_DEVICE_AUDIO_CAPTURE, "Mock audio device", "mock_audio_device_id",
36 media::AudioParameters::kAudioCDSampleRate,
37 media::CHANNEL_LAYOUT_STEREO,
38 media::AudioParameters::kAudioCDSampleRate / 100));
39 }
40
41 private:
42 DISALLOW_COPY_AND_ASSIGN(MockCDQualityAudioSource);
43 };
44
45 } // namespace
46 24
47 MockMediaStreamRegistry::MockMediaStreamRegistry() {} 25 MockMediaStreamRegistry::MockMediaStreamRegistry() {}
48 26
49 void MockMediaStreamRegistry::Init(const std::string& stream_url) { 27 void MockMediaStreamRegistry::Init(const std::string& stream_url) {
50 stream_url_ = stream_url; 28 stream_url_ = stream_url;
51 const blink::WebVector<blink::WebMediaStreamTrack> webkit_audio_tracks; 29 const blink::WebVector<blink::WebMediaStreamTrack> webkit_audio_tracks;
52 const blink::WebVector<blink::WebMediaStreamTrack> webkit_video_tracks; 30 const blink::WebVector<blink::WebMediaStreamTrack> webkit_video_tracks;
53 const blink::WebString label(kTestStreamLabel); 31 const blink::WebString label(kTestStreamLabel);
54 test_stream_.initialize(label, webkit_audio_tracks, webkit_video_tracks); 32 test_stream_.initialize(label, webkit_audio_tracks, webkit_video_tracks);
55 test_stream_.setExtraData(new MediaStream()); 33 test_stream_.setExtraData(new MediaStream());
(...skipping 14 matching lines...) Expand all
70 constraints.initialize(); 48 constraints.initialize();
71 49
72 MediaStreamVideoTrack* native_track = new MediaStreamVideoTrack( 50 MediaStreamVideoTrack* native_track = new MediaStreamVideoTrack(
73 native_source, constraints, MediaStreamVideoSource::ConstraintsCallback(), 51 native_source, constraints, MediaStreamVideoSource::ConstraintsCallback(),
74 true /* enabled */); 52 true /* enabled */);
75 blink_track.setExtraData(native_track); 53 blink_track.setExtraData(native_track);
76 test_stream_.addTrack(blink_track); 54 test_stream_.addTrack(blink_track);
77 } 55 }
78 56
79 void MockMediaStreamRegistry::AddAudioTrack(const std::string& track_id) { 57 void MockMediaStreamRegistry::AddAudioTrack(const std::string& track_id) {
80 blink::WebMediaStreamSource blink_source; 58 blink::WebMediaStreamSource audio_source;
81 blink_source.initialize( 59 audio_source.initialize(
82 "mock audio source id", blink::WebMediaStreamSource::TypeAudio, 60 "mock audio source id", blink::WebMediaStreamSource::TypeAudio,
83 "mock audio source name", false /* remote */); 61 "mock audio source name", false /* remote */);
84 MediaStreamAudioSource* const source = new MockCDQualityAudioSource(); 62 audio_source.setExtraData(new MediaStreamAudioSource());
85 blink_source.setExtraData(source); // Takes ownership.
86
87 blink::WebMediaStreamTrack blink_track; 63 blink::WebMediaStreamTrack blink_track;
88 blink_track.initialize(blink_source); 64 blink_track.initialize(audio_source);
89 CHECK(source->ConnectToTrack(blink_track)); 65 const scoped_refptr<WebRtcLocalAudioTrackAdapter> adapter(
90 66 WebRtcLocalAudioTrackAdapter::Create(track_id,
67 nullptr /* track source */));
68 std::unique_ptr<WebRtcLocalAudioTrack> native_track(
69 new WebRtcLocalAudioTrack(adapter.get()));
70 blink_track.setExtraData(native_track.release());
91 test_stream_.addTrack(blink_track); 71 test_stream_.addTrack(blink_track);
92 } 72 }
93 73
94 blink::WebMediaStream MockMediaStreamRegistry::GetMediaStream( 74 blink::WebMediaStream MockMediaStreamRegistry::GetMediaStream(
95 const std::string& url) { 75 const std::string& url) {
96 return (url != stream_url_) ? blink::WebMediaStream() : test_stream_; 76 return (url != stream_url_) ? blink::WebMediaStream() : test_stream_;
97 } 77 }
98 78
99 } // namespace content 79 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/media/mock_media_stream_dispatcher.cc ('k') | content/renderer/media/remote_media_stream_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698