| /* | |
| * Copyright (c) 2011 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. | |
| */ | |
| #ifndef MODULES_AUDIO_CODING_TEST_TESTREDFEC_H_ | |
| #define MODULES_AUDIO_CODING_TEST_TESTREDFEC_H_ | |
| #include <memory> | |
| #include <string> | |
| #include "modules/audio_coding/test/ACMTest.h" | |
| #include "modules/audio_coding/test/Channel.h" | |
| #include "modules/audio_coding/test/PCMFile.h" | |
| namespace webrtc { | |
| class TestRedFec : public ACMTest { | |
| public: | |
| explicit TestRedFec(); | |
| ~TestRedFec(); | |
| void Perform(); | |
| private: | |
| // The default value of '-1' indicates that the registration is based only on | |
| // codec name and a sampling frequency matching is not required. This is | |
| // useful for codecs which support several sampling frequency. | |
| int16_t RegisterSendCodec(char side, const char* codecName, | |
| int32_t sampFreqHz = -1); | |
| void Run(); | |
| void OpenOutFile(int16_t testNumber); | |
| int32_t SetVAD(bool enableDTX, bool enableVAD, ACMVADMode vadMode); | |
| std::unique_ptr<AudioCodingModule> _acmA; | |
| std::unique_ptr<AudioCodingModule> _acmB; | |
| Channel* _channelA2B; | |
| PCMFile _inFileA; | |
| PCMFile _outFileB; | |
| int16_t _testCntr; | |
| }; | |
| } // namespace webrtc | |
| #endif // MODULES_AUDIO_CODING_TEST_TESTREDFEC_H_ |