| Index: webrtc/modules/audio_coding/codecs/mock/mock_audio_encoder.cc
|
| diff --git a/webrtc/modules/audio_coding/codecs/mock/mock_audio_encoder.cc b/webrtc/modules/audio_coding/codecs/mock/mock_audio_encoder.cc
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..7ad52b1b9b1c0b588f973a0f1add24dfba44d79d
|
| --- /dev/null
|
| +++ b/webrtc/modules/audio_coding/codecs/mock/mock_audio_encoder.cc
|
| @@ -0,0 +1,73 @@
|
| +/*
|
| + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
|
| + *
|
| + * Use of this source code is governed by a BSD-style license
|
| + * that can be found in the LICENSE file in the root of the source
|
| + * tree. An additional intellectual property rights grant can be found
|
| + * in the file PATENTS. All contributing project authors may
|
| + * be found in the AUTHORS file in the root of the source tree.
|
| + */
|
| +
|
| +#include "webrtc/modules/audio_coding/codecs/mock/mock_audio_encoder.h"
|
| +
|
| +namespace webrtc {
|
| +
|
| +namespace MockAudioEncoderHelper {
|
| +
|
| +EncodeFunction FakeEncoding(AudioEncoder::EncodedInfo info) {
|
| + return [info] (uint32_t timestamp,
|
| + rtc::ArrayView<const int16_t> audio,
|
| + rtc::Buffer* encoded) {
|
| + encoded->SetSize(encoded->size() + info.encoded_bytes);
|
| + return info;
|
| + };
|
| +}
|
| +
|
| +EncodeFunction FakeEncoding(size_t encoded_bytes) {
|
| + AudioEncoder::EncodedInfo info;
|
| + info.encoded_bytes = encoded_bytes;
|
| + return FakeEncoding(info);
|
| +}
|
| +
|
| +EncodeFunction CopyEncoding(AudioEncoder::EncodedInfo info,
|
| + rtc::ArrayView<const uint8_t> payload) {
|
| + return [info, payload] (uint32_t timestamp,
|
| + rtc::ArrayView<const int16_t> audio,
|
| + rtc::Buffer* encoded) {
|
| + RTC_CHECK(encoded);
|
| + RTC_CHECK_LE(info.encoded_bytes, payload.size());
|
| + encoded->AppendData(payload.data(), info.encoded_bytes);
|
| + return info;
|
| + };
|
| +}
|
| +
|
| +EncodeFunction CopyEncoding(rtc::ArrayView<const uint8_t> payload) {
|
| + AudioEncoder::EncodedInfo info;
|
| + info.encoded_bytes = payload.size();
|
| + return CopyEncoding(info, payload);
|
| +}
|
| +
|
| +DeprecatedEncodeFunction DEPRECATED_CopyEncoding(
|
| + AudioEncoder::EncodedInfo info,
|
| + rtc::ArrayView<const uint8_t> payload) {
|
| + return [info, payload] (uint32_t timestamp,
|
| + rtc::ArrayView<const int16_t> audio,
|
| + size_t max_encoded_bytes,
|
| + uint8_t* encoded) {
|
| + RTC_CHECK(encoded);
|
| + RTC_CHECK_LE(info.encoded_bytes, payload.size());
|
| + std::memcpy(encoded, payload.data(), info.encoded_bytes);
|
| + return info;
|
| + };
|
| +}
|
| +
|
| +DeprecatedEncodeFunction DEPRECATED_CopyEncoding(
|
| + rtc::ArrayView<const uint8_t> payload) {
|
| + AudioEncoder::EncodedInfo info;
|
| + info.encoded_bytes = payload.size();
|
| + return DEPRECATED_CopyEncoding(info, payload);
|
| +}
|
| +
|
| +} // namespace MockAudioEncoderHelper
|
| +
|
| +} // namespace webrtc
|
|
|