OLD | NEW |
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 |
| 11 #include <memory> |
| 12 |
11 #include "testing/gtest/include/gtest/gtest.h" | 13 #include "testing/gtest/include/gtest/gtest.h" |
12 #include "webrtc/base/checks.h" | 14 #include "webrtc/base/checks.h" |
13 #include "webrtc/base/scoped_ptr.h" | |
14 #include "webrtc/common_types.h" | 15 #include "webrtc/common_types.h" |
15 #include "webrtc/modules/audio_coding/codecs/opus/audio_encoder_opus.h" | 16 #include "webrtc/modules/audio_coding/codecs/opus/audio_encoder_opus.h" |
16 | 17 |
17 namespace webrtc { | 18 namespace webrtc { |
18 | 19 |
19 namespace { | 20 namespace { |
20 const CodecInst kOpusSettings = {105, "opus", 48000, 960, 1, 32000}; | 21 const CodecInst kOpusSettings = {105, "opus", 48000, 960, 1, 32000}; |
21 } // namespace | 22 } // namespace |
22 | 23 |
23 class AudioEncoderOpusTest : public ::testing::Test { | 24 class AudioEncoderOpusTest : public ::testing::Test { |
24 protected: | 25 protected: |
25 void CreateCodec(int num_channels) { | 26 void CreateCodec(int num_channels) { |
26 codec_inst_.channels = num_channels; | 27 codec_inst_.channels = num_channels; |
27 encoder_.reset(new AudioEncoderOpus(codec_inst_)); | 28 encoder_.reset(new AudioEncoderOpus(codec_inst_)); |
28 auto expected_app = | 29 auto expected_app = |
29 num_channels == 1 ? AudioEncoderOpus::kVoip : AudioEncoderOpus::kAudio; | 30 num_channels == 1 ? AudioEncoderOpus::kVoip : AudioEncoderOpus::kAudio; |
30 EXPECT_EQ(expected_app, encoder_->application()); | 31 EXPECT_EQ(expected_app, encoder_->application()); |
31 } | 32 } |
32 | 33 |
33 CodecInst codec_inst_ = kOpusSettings; | 34 CodecInst codec_inst_ = kOpusSettings; |
34 rtc::scoped_ptr<AudioEncoderOpus> encoder_; | 35 std::unique_ptr<AudioEncoderOpus> encoder_; |
35 }; | 36 }; |
36 | 37 |
37 TEST_F(AudioEncoderOpusTest, DefaultApplicationModeMono) { | 38 TEST_F(AudioEncoderOpusTest, DefaultApplicationModeMono) { |
38 CreateCodec(1); | 39 CreateCodec(1); |
39 } | 40 } |
40 | 41 |
41 TEST_F(AudioEncoderOpusTest, DefaultApplicationModeStereo) { | 42 TEST_F(AudioEncoderOpusTest, DefaultApplicationModeStereo) { |
42 CreateCodec(2); | 43 CreateCodec(2); |
43 } | 44 } |
44 | 45 |
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
143 | 144 |
144 TestSetPacketLossRate(encoder_.get(), I(1.00 , 0.18 + eps), 0.20); | 145 TestSetPacketLossRate(encoder_.get(), I(1.00 , 0.18 + eps), 0.20); |
145 TestSetPacketLossRate(encoder_.get(), I(0.18 - eps, 0.09 + eps), 0.10); | 146 TestSetPacketLossRate(encoder_.get(), I(0.18 - eps, 0.09 + eps), 0.10); |
146 TestSetPacketLossRate(encoder_.get(), I(0.09 - eps, 0.04 + eps), 0.05); | 147 TestSetPacketLossRate(encoder_.get(), I(0.09 - eps, 0.04 + eps), 0.05); |
147 TestSetPacketLossRate(encoder_.get(), I(0.04 - eps, 0.01 + eps), 0.01); | 148 TestSetPacketLossRate(encoder_.get(), I(0.04 - eps, 0.01 + eps), 0.01); |
148 TestSetPacketLossRate(encoder_.get(), I(0.01 - eps, 0.00 ), 0.00); | 149 TestSetPacketLossRate(encoder_.get(), I(0.01 - eps, 0.00 ), 0.00); |
149 // clang-format on | 150 // clang-format on |
150 } | 151 } |
151 | 152 |
152 } // namespace webrtc | 153 } // namespace webrtc |
OLD | NEW |