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

Side by Side Diff: webrtc/audio/audio_receive_stream_unittest.cc

Issue 1454073002: Move some receive stream configuration into webrtc::AudioReceiveStream. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: reabse+comments Created 5 years, 1 month 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
« no previous file with comments | « webrtc/audio/audio_receive_stream.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 20 matching lines...) Expand all
31 audio_decode_stats.decoded_plc = 123; 31 audio_decode_stats.decoded_plc = 123;
32 audio_decode_stats.decoded_cng = 456; 32 audio_decode_stats.decoded_cng = 456;
33 audio_decode_stats.decoded_plc_cng = 789; 33 audio_decode_stats.decoded_plc_cng = 789;
34 return audio_decode_stats; 34 return audio_decode_stats;
35 } 35 }
36 36
37 const int kChannelId = 2; 37 const int kChannelId = 2;
38 const uint32_t kRemoteSsrc = 1234; 38 const uint32_t kRemoteSsrc = 1234;
39 const uint32_t kLocalSsrc = 5678; 39 const uint32_t kLocalSsrc = 5678;
40 const size_t kAbsoluteSendTimeLength = 4; 40 const size_t kAbsoluteSendTimeLength = 4;
41 const int kAbsSendTimeId = 3; 41 const int kAbsSendTimeId = 2;
42 const int kAudioLevelId = 3;
42 const int kJitterBufferDelay = -7; 43 const int kJitterBufferDelay = -7;
43 const int kPlayoutBufferDelay = 302; 44 const int kPlayoutBufferDelay = 302;
44 const unsigned int kSpeechOutputLevel = 99; 45 const unsigned int kSpeechOutputLevel = 99;
45 const CallStatistics kCallStats = { 46 const CallStatistics kCallStats = {
46 345, 678, 901, 234, -12, 3456, 7890, 567, 890, 123}; 47 345, 678, 901, 234, -12, 3456, 7890, 567, 890, 123};
47 const CodecInst kCodecInst = { 48 const CodecInst kCodecInst = {
48 123, "codec_name_recv", 96000, -187, -198, -103}; 49 123, "codec_name_recv", 96000, -187, -198, -103};
49 const NetworkStatistics kNetworkStats = { 50 const NetworkStatistics kNetworkStats = {
50 123, 456, false, 0, 0, 789, 12, 345, 678, 901, -1, -1, -1, -1, -1, 0}; 51 123, 456, false, 0, 0, 789, 12, 345, 678, 901, -1, -1, -1, -1, -1, 0};
51 const AudioDecodingCallStats kAudioDecodeStats = MakeAudioDecodeStatsForTest(); 52 const AudioDecodingCallStats kAudioDecodeStats = MakeAudioDecodeStatsForTest();
52 53
53 struct ConfigHelper { 54 struct ConfigHelper {
54 ConfigHelper() { 55 ConfigHelper() {
55 EXPECT_CALL(voice_engine_, 56 EXPECT_CALL(voice_engine_,
56 RegisterVoiceEngineObserver(_)).WillOnce(Return(0)); 57 RegisterVoiceEngineObserver(_)).WillOnce(Return(0));
57 EXPECT_CALL(voice_engine_, 58 EXPECT_CALL(voice_engine_,
58 DeRegisterVoiceEngineObserver()).WillOnce(Return(0)); 59 DeRegisterVoiceEngineObserver()).WillOnce(Return(0));
59 AudioState::Config config; 60 AudioState::Config config;
60 config.voice_engine = &voice_engine_; 61 config.voice_engine = &voice_engine_;
61 audio_state_ = AudioState::Create(config); 62 audio_state_ = AudioState::Create(config);
63
64 EXPECT_CALL(voice_engine_, SetLocalSSRC(kChannelId, kLocalSsrc))
65 .WillOnce(Return(0));
66 EXPECT_CALL(voice_engine_,
67 SetReceiveAbsoluteSenderTimeStatus(kChannelId, true, kAbsSendTimeId))
68 .WillOnce(Return(0));
69 EXPECT_CALL(voice_engine_,
70 SetReceiveAudioLevelIndicationStatus(kChannelId, true, kAudioLevelId))
71 .WillOnce(Return(0));
62 stream_config_.voe_channel_id = kChannelId; 72 stream_config_.voe_channel_id = kChannelId;
63 stream_config_.rtp.local_ssrc = kLocalSsrc; 73 stream_config_.rtp.local_ssrc = kLocalSsrc;
64 stream_config_.rtp.remote_ssrc = kRemoteSsrc; 74 stream_config_.rtp.remote_ssrc = kRemoteSsrc;
65 } 75 stream_config_.rtp.extensions.push_back(
76 RtpExtension(RtpExtension::kAbsSendTime, kAbsSendTimeId));
77 stream_config_.rtp.extensions.push_back(
78 RtpExtension(RtpExtension::kAudioLevel, kAudioLevelId));
79 }
66 80
67 MockRemoteBitrateEstimator* remote_bitrate_estimator() { 81 MockRemoteBitrateEstimator* remote_bitrate_estimator() {
68 return &remote_bitrate_estimator_; 82 return &remote_bitrate_estimator_;
69 } 83 }
70 AudioReceiveStream::Config& config() { return stream_config_; } 84 AudioReceiveStream::Config& config() { return stream_config_; }
71 rtc::scoped_refptr<AudioState> audio_state() { return audio_state_; } 85 rtc::scoped_refptr<AudioState> audio_state() { return audio_state_; }
72 MockVoiceEngine& voice_engine() { return voice_engine_; } 86 MockVoiceEngine& voice_engine() { return voice_engine_; }
73 87
74 void SetupMockForGetStats() { 88 void SetupMockForGetStats() {
75 using testing::DoAll; 89 using testing::DoAll;
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
137 TEST(AudioReceiveStreamTest, ConfigToString) { 151 TEST(AudioReceiveStreamTest, ConfigToString) {
138 AudioReceiveStream::Config config; 152 AudioReceiveStream::Config config;
139 config.rtp.remote_ssrc = kRemoteSsrc; 153 config.rtp.remote_ssrc = kRemoteSsrc;
140 config.rtp.local_ssrc = kLocalSsrc; 154 config.rtp.local_ssrc = kLocalSsrc;
141 config.rtp.extensions.push_back( 155 config.rtp.extensions.push_back(
142 RtpExtension(RtpExtension::kAbsSendTime, kAbsSendTimeId)); 156 RtpExtension(RtpExtension::kAbsSendTime, kAbsSendTimeId));
143 config.voe_channel_id = kChannelId; 157 config.voe_channel_id = kChannelId;
144 config.combined_audio_video_bwe = true; 158 config.combined_audio_video_bwe = true;
145 EXPECT_EQ( 159 EXPECT_EQ(
146 "{rtp: {remote_ssrc: 1234, local_ssrc: 5678, extensions: [{name: " 160 "{rtp: {remote_ssrc: 1234, local_ssrc: 5678, extensions: [{name: "
147 "http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time, id: 3}]}, " 161 "http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time, id: 2}]}, "
148 "receive_transport: nullptr, rtcp_send_transport: nullptr, " 162 "receive_transport: nullptr, rtcp_send_transport: nullptr, "
149 "voe_channel_id: 2, combined_audio_video_bwe: true}", 163 "voe_channel_id: 2, combined_audio_video_bwe: true}",
150 config.ToString()); 164 config.ToString());
151 } 165 }
152 166
153 TEST(AudioReceiveStreamTest, ConstructDestruct) { 167 TEST(AudioReceiveStreamTest, ConstructDestruct) {
154 ConfigHelper helper; 168 ConfigHelper helper;
155 internal::AudioReceiveStream recv_stream( 169 internal::AudioReceiveStream recv_stream(
156 helper.remote_bitrate_estimator(), helper.config(), helper.audio_state()); 170 helper.remote_bitrate_estimator(), helper.config(), helper.audio_state());
157 } 171 }
158 172
159 TEST(AudioReceiveStreamTest, AudioPacketUpdatesBweWithTimestamp) { 173 TEST(AudioReceiveStreamTest, AudioPacketUpdatesBweWithTimestamp) {
160 ConfigHelper helper; 174 ConfigHelper helper;
161 helper.config().combined_audio_video_bwe = true; 175 helper.config().combined_audio_video_bwe = true;
162 helper.config().rtp.extensions.push_back(
163 RtpExtension(RtpExtension::kAbsSendTime, kAbsSendTimeId));
164 internal::AudioReceiveStream recv_stream( 176 internal::AudioReceiveStream recv_stream(
165 helper.remote_bitrate_estimator(), helper.config(), helper.audio_state()); 177 helper.remote_bitrate_estimator(), helper.config(), helper.audio_state());
166 uint8_t rtp_packet[30]; 178 uint8_t rtp_packet[30];
167 const int kAbsSendTimeValue = 1234; 179 const int kAbsSendTimeValue = 1234;
168 CreateRtpHeaderWithAbsSendTime(rtp_packet, kAbsSendTimeId, kAbsSendTimeValue); 180 CreateRtpHeaderWithAbsSendTime(rtp_packet, kAbsSendTimeId, kAbsSendTimeValue);
169 PacketTime packet_time(5678000, 0); 181 PacketTime packet_time(5678000, 0);
170 const size_t kExpectedHeaderLength = 20; 182 const size_t kExpectedHeaderLength = 20;
171 EXPECT_CALL(*helper.remote_bitrate_estimator(), 183 EXPECT_CALL(*helper.remote_bitrate_estimator(),
172 IncomingPacket(packet_time.timestamp / 1000, 184 IncomingPacket(packet_time.timestamp / 1000,
173 sizeof(rtp_packet) - kExpectedHeaderLength, 185 sizeof(rtp_packet) - kExpectedHeaderLength,
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
213 EXPECT_EQ(kAudioDecodeStats.calls_to_neteq, stats.decoding_calls_to_neteq); 225 EXPECT_EQ(kAudioDecodeStats.calls_to_neteq, stats.decoding_calls_to_neteq);
214 EXPECT_EQ(kAudioDecodeStats.decoded_normal, stats.decoding_normal); 226 EXPECT_EQ(kAudioDecodeStats.decoded_normal, stats.decoding_normal);
215 EXPECT_EQ(kAudioDecodeStats.decoded_plc, stats.decoding_plc); 227 EXPECT_EQ(kAudioDecodeStats.decoded_plc, stats.decoding_plc);
216 EXPECT_EQ(kAudioDecodeStats.decoded_cng, stats.decoding_cng); 228 EXPECT_EQ(kAudioDecodeStats.decoded_cng, stats.decoding_cng);
217 EXPECT_EQ(kAudioDecodeStats.decoded_plc_cng, stats.decoding_plc_cng); 229 EXPECT_EQ(kAudioDecodeStats.decoded_plc_cng, stats.decoding_plc_cng);
218 EXPECT_EQ(kCallStats.capture_start_ntp_time_ms_, 230 EXPECT_EQ(kCallStats.capture_start_ntp_time_ms_,
219 stats.capture_start_ntp_time_ms); 231 stats.capture_start_ntp_time_ms);
220 } 232 }
221 } // namespace test 233 } // namespace test
222 } // namespace webrtc 234 } // namespace webrtc
OLDNEW
« no previous file with comments | « webrtc/audio/audio_receive_stream.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698