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

Side by Side Diff: webrtc/modules/audio_coding/codecs/mock/mock_audio_encoder.h

Issue 1883543002: Revert of Remove the deprecated EncodeInternal interface from AudioEncoder (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 4 years, 8 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 /* 1 /*
2 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2014 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 #ifndef WEBRTC_MODULES_AUDIO_CODING_CODECS_MOCK_MOCK_AUDIO_ENCODER_H_ 11 #ifndef WEBRTC_MODULES_AUDIO_CODING_CODECS_MOCK_MOCK_AUDIO_ENCODER_H_
12 #define WEBRTC_MODULES_AUDIO_CODING_CODECS_MOCK_MOCK_AUDIO_ENCODER_H_ 12 #define WEBRTC_MODULES_AUDIO_CODING_CODECS_MOCK_MOCK_AUDIO_ENCODER_H_
13 13
14 #include "webrtc/base/array_view.h" 14 #include "webrtc/base/array_view.h"
15 #include "webrtc/modules/audio_coding/codecs/audio_encoder.h" 15 #include "webrtc/modules/audio_coding/codecs/audio_encoder.h"
16 16
17 #include "testing/gmock/include/gmock/gmock.h" 17 #include "testing/gmock/include/gmock/gmock.h"
18 18
19 namespace webrtc { 19 namespace webrtc {
20 20
21 class MockAudioEncoder : public AudioEncoder { 21 class MockAudioEncoderBase : public AudioEncoder {
22 public: 22 public:
23 ~MockAudioEncoder() override { Die(); } 23 ~MockAudioEncoderBase() override { Die(); }
24 MOCK_METHOD0(Die, void()); 24 MOCK_METHOD0(Die, void());
25 MOCK_METHOD1(Mark, void(std::string desc)); 25 MOCK_METHOD1(Mark, void(std::string desc));
26 MOCK_CONST_METHOD0(MaxEncodedBytes, size_t());
26 MOCK_CONST_METHOD0(SampleRateHz, int()); 27 MOCK_CONST_METHOD0(SampleRateHz, int());
27 MOCK_CONST_METHOD0(NumChannels, size_t()); 28 MOCK_CONST_METHOD0(NumChannels, size_t());
28 MOCK_CONST_METHOD0(RtpTimestampRateHz, int()); 29 MOCK_CONST_METHOD0(RtpTimestampRateHz, int());
29 MOCK_CONST_METHOD0(Num10MsFramesInNextPacket, size_t()); 30 MOCK_CONST_METHOD0(Num10MsFramesInNextPacket, size_t());
30 MOCK_CONST_METHOD0(Max10MsFramesInAPacket, size_t()); 31 MOCK_CONST_METHOD0(Max10MsFramesInAPacket, size_t());
31 MOCK_CONST_METHOD0(GetTargetBitrate, int()); 32 MOCK_CONST_METHOD0(GetTargetBitrate, int());
32 MOCK_METHOD0(Reset, void()); 33 MOCK_METHOD0(Reset, void());
33 MOCK_METHOD1(SetFec, bool(bool enable)); 34 MOCK_METHOD1(SetFec, bool(bool enable));
34 MOCK_METHOD1(SetDtx, bool(bool enable)); 35 MOCK_METHOD1(SetDtx, bool(bool enable));
35 MOCK_METHOD1(SetApplication, bool(Application application)); 36 MOCK_METHOD1(SetApplication, bool(Application application));
36 MOCK_METHOD1(SetMaxPlaybackRate, void(int frequency_hz)); 37 MOCK_METHOD1(SetMaxPlaybackRate, void(int frequency_hz));
37 MOCK_METHOD1(SetProjectedPacketLossRate, void(double fraction)); 38 MOCK_METHOD1(SetProjectedPacketLossRate, void(double fraction));
38 MOCK_METHOD1(SetTargetBitrate, void(int target_bps)); 39 MOCK_METHOD1(SetTargetBitrate, void(int target_bps));
39 MOCK_METHOD1(SetMaxBitrate, void(int max_bps)); 40 MOCK_METHOD1(SetMaxBitrate, void(int max_bps));
40 MOCK_METHOD1(SetMaxPayloadSize, void(int max_payload_size_bytes)); 41 MOCK_METHOD1(SetMaxPayloadSize, void(int max_payload_size_bytes));
42 };
41 43
44 class MockAudioEncoder final : public MockAudioEncoderBase {
45 public:
42 // Note, we explicitly chose not to create a mock for the Encode method. 46 // Note, we explicitly chose not to create a mock for the Encode method.
43 MOCK_METHOD3(EncodeImpl, 47 MOCK_METHOD3(EncodeImpl,
44 EncodedInfo(uint32_t timestamp, 48 EncodedInfo(uint32_t timestamp,
45 rtc::ArrayView<const int16_t> audio, 49 rtc::ArrayView<const int16_t> audio,
46 rtc::Buffer* encoded)); 50 rtc::Buffer* encoded));
47 51
48 class FakeEncoding { 52 class FakeEncoding {
49 public: 53 public:
50 // Creates a functor that will return |info| and adjust the rtc::Buffer 54 // Creates a functor that will return |info| and adjust the rtc::Buffer
51 // given as input to it, so it is info.encoded_bytes larger. 55 // given as input to it, so it is info.encoded_bytes larger.
(...skipping 26 matching lines...) Expand all
78 // than encoded_bytes. 82 // than encoded_bytes.
79 CopyEncoding(rtc::ArrayView<const uint8_t> payload); 83 CopyEncoding(rtc::ArrayView<const uint8_t> payload);
80 84
81 AudioEncoder::EncodedInfo operator()(uint32_t timestamp, 85 AudioEncoder::EncodedInfo operator()(uint32_t timestamp,
82 rtc::ArrayView<const int16_t> audio, 86 rtc::ArrayView<const int16_t> audio,
83 rtc::Buffer* encoded); 87 rtc::Buffer* encoded);
84 private: 88 private:
85 AudioEncoder::EncodedInfo info_; 89 AudioEncoder::EncodedInfo info_;
86 rtc::ArrayView<const uint8_t> payload_; 90 rtc::ArrayView<const uint8_t> payload_;
87 }; 91 };
92
93 };
94
95 class MockAudioEncoderDeprecated final : public MockAudioEncoderBase {
96 public:
97 // Note, we explicitly chose not to create a mock for the Encode method.
98 MOCK_METHOD4(EncodeInternal,
99 EncodedInfo(uint32_t timestamp,
100 rtc::ArrayView<const int16_t> audio,
101 size_t max_encoded_bytes,
102 uint8_t* encoded));
103
104 // A functor like MockAudioEncoder::CopyEncoding above, but which has the
105 // deprecated Encode signature. Currently only used in one test and should be
106 // removed once that backwards compatibility is.
107 class CopyEncoding {
108 public:
109 CopyEncoding(AudioEncoder::EncodedInfo info,
110 rtc::ArrayView<const uint8_t> payload);
111
112 CopyEncoding(rtc::ArrayView<const uint8_t> payload);
113
114 AudioEncoder::EncodedInfo operator()(uint32_t timestamp,
115 rtc::ArrayView<const int16_t> audio,
116 size_t max_bytes_encoded,
117 uint8_t* encoded);
118 private:
119 AudioEncoder::EncodedInfo info_;
120 rtc::ArrayView<const uint8_t> payload_;
121 };
88 }; 122 };
89 123
90 } // namespace webrtc 124 } // namespace webrtc
91 125
92 #endif // WEBRTC_MODULES_AUDIO_CODING_CODECS_MOCK_MOCK_AUDIO_ENCODER_H_ 126 #endif // WEBRTC_MODULES_AUDIO_CODING_CODECS_MOCK_MOCK_AUDIO_ENCODER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698