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

Unified Diff: content/renderer/media/rtc_peer_connection_handler_unittest.cc

Issue 1647773002: MediaStream audio sourcing: Bypass audio processing for non-WebRTC cases. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: NOT FOR REVIEW -- This will be broken-up across multiple CLs. Created 4 years, 10 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 side-by-side diff with in-line comments
Download patch
Index: content/renderer/media/rtc_peer_connection_handler_unittest.cc
diff --git a/content/renderer/media/rtc_peer_connection_handler_unittest.cc b/content/renderer/media/rtc_peer_connection_handler_unittest.cc
index 697f484bdca7930138aed5519bc73a3a05f16904..a8eaf00d8e1fe7722089571d744d31dd4840fc2d 100644
--- a/content/renderer/media/rtc_peer_connection_handler_unittest.cc
+++ b/content/renderer/media/rtc_peer_connection_handler_unittest.cc
@@ -16,7 +16,6 @@
#include "base/values.h"
#include "content/child/child_process.h"
#include "content/renderer/media/media_stream.h"
-#include "content/renderer/media/media_stream_audio_source.h"
#include "content/renderer/media/media_stream_source.h"
#include "content/renderer/media/media_stream_video_track.h"
#include "content/renderer/media/mock_data_channel_impl.h"
@@ -28,8 +27,8 @@
#include "content/renderer/media/rtc_media_constraints.h"
#include "content/renderer/media/rtc_peer_connection_handler.h"
#include "content/renderer/media/webrtc/mock_peer_connection_dependency_factory.h"
+#include "content/renderer/media/webrtc/processed_local_audio_source.h"
#include "content/renderer/media/webrtc/webrtc_local_audio_track_adapter.h"
-#include "content/renderer/media/webrtc_local_audio_track.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/WebKit/public/platform/WebMediaConstraints.h"
@@ -250,12 +249,28 @@ class RTCPeerConnectionHandlerTest : public ::testing::Test {
const std::string& stream_label) {
std::string video_track_label("video-label");
std::string audio_track_label("audio-label");
- blink::WebMediaStreamSource audio_source;
- audio_source.initialize(blink::WebString::fromUTF8(audio_track_label),
- blink::WebMediaStreamSource::TypeAudio,
- blink::WebString::fromUTF8("audio_track"),
- false /* remote */, true /* readonly */);
- audio_source.setExtraData(new MediaStreamAudioSource());
+
+ blink::WebMediaStreamSource blink_audio_source;
+ blink_audio_source.initialize(blink::WebString::fromUTF8(audio_track_label),
+ blink::WebMediaStreamSource::TypeAudio,
+ blink::WebString::fromUTF8("audio_track"),
+ false /* remote */, true /* readonly */);
+ ProcessedLocalAudioSource* const audio_source =
+ new ProcessedLocalAudioSource(
+ -1 /* consumer_render_frame_id is N/A for non-browser tests */,
+ StreamDeviceInfo(MEDIA_DEVICE_AUDIO_CAPTURE, "Mock device",
+ "mock_device_id"),
+ mock_dependency_factory_.get());
+ audio_source->SetAllowInvalidRenderFrameIdForTesting(true);
+ audio_source->SetSourceConstraints(
+ MockMediaConstraintFactory().CreateWebMediaConstraints());
+ blink_audio_source.setExtraData(audio_source); // Takes ownership.
+
+ blink::WebVector<blink::WebMediaStreamTrack> audio_tracks(
+ static_cast<size_t>(1));
+ audio_tracks[0].initialize(blink_audio_source.id(), blink_audio_source);
+ CHECK(audio_source->ConnectToTrack(audio_tracks[0]));
+
blink::WebMediaStreamSource video_source;
video_source.initialize(blink::WebString::fromUTF8(video_track_label),
blink::WebMediaStreamSource::TypeVideo,
@@ -265,22 +280,6 @@ class RTCPeerConnectionHandlerTest : public ::testing::Test {
new MockMediaStreamVideoSource(false);
video_source.setExtraData(native_video_source);
- blink::WebVector<blink::WebMediaStreamTrack> audio_tracks(
- static_cast<size_t>(1));
- audio_tracks[0].initialize(audio_source.id(), audio_source);
- StreamDeviceInfo device_info(MEDIA_DEVICE_AUDIO_CAPTURE, "Mock device",
- "mock_device_id");
- MockMediaConstraintFactory constraint_factory;
- const blink::WebMediaConstraints constraints =
- constraint_factory.CreateWebMediaConstraints();
- scoped_refptr<WebRtcAudioCapturer> capturer(
- WebRtcAudioCapturer::CreateCapturer(-1, device_info, constraints,
- nullptr, nullptr));
- scoped_refptr<WebRtcLocalAudioTrackAdapter> adapter(
- WebRtcLocalAudioTrackAdapter::Create(audio_track_label, nullptr));
- scoped_ptr<WebRtcLocalAudioTrack> native_track(
- new WebRtcLocalAudioTrack(adapter.get(), capturer, nullptr));
- audio_tracks[0].setExtraData(native_track.release());
blink::WebVector<blink::WebMediaStreamTrack> video_tracks(
static_cast<size_t>(1));
blink::WebMediaConstraints video_constraints;
@@ -313,7 +312,8 @@ class RTCPeerConnectionHandlerTest : public ::testing::Test {
}
if (!audio_track_label.empty()) {
scoped_refptr<webrtc::AudioTrackInterface> audio_track(
- WebRtcLocalAudioTrackAdapter::Create(audio_track_label, NULL));
+ WebRtcLocalAudioTrackAdapter::Create(
+ audio_track_label, nullptr, pc_handler_->signaling_thread()));
stream->AddTrack(audio_track.get());
}
mock_peer_connection_->AddRemoteStream(stream.get());

Powered by Google App Engine
This is Rietveld 408576698