OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2012 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 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
63 class AudioCodingModule { | 63 class AudioCodingModule { |
64 protected: | 64 protected: |
65 AudioCodingModule() {} | 65 AudioCodingModule() {} |
66 | 66 |
67 public: | 67 public: |
68 struct Config { | 68 struct Config { |
69 Config(); | 69 Config(); |
70 Config(const Config&); | 70 Config(const Config&); |
71 ~Config(); | 71 ~Config(); |
72 | 72 |
| 73 int id; |
73 NetEq::Config neteq_config; | 74 NetEq::Config neteq_config; |
74 Clock* clock; | 75 Clock* clock; |
75 rtc::scoped_refptr<AudioDecoderFactory> decoder_factory; | 76 rtc::scoped_refptr<AudioDecoderFactory> decoder_factory; |
76 }; | 77 }; |
77 | 78 |
78 /////////////////////////////////////////////////////////////////////////// | 79 /////////////////////////////////////////////////////////////////////////// |
79 // Creation and destruction of a ACM. | 80 // Creation and destruction of a ACM. |
80 // | 81 // |
81 // The second method is used for testing where a simulated clock can be | 82 // The second method is used for testing where a simulated clock can be |
82 // injected into ACM. ACM will take the ownership of the object clock and | 83 // injected into ACM. ACM will take the ownership of the object clock and |
83 // delete it when destroyed. | 84 // delete it when destroyed. |
84 // | 85 // |
85 static AudioCodingModule* Create(); | 86 static AudioCodingModule* Create(int id); |
86 static AudioCodingModule* Create(Clock* clock); | 87 static AudioCodingModule* Create(int id, Clock* clock); |
87 static AudioCodingModule* Create(const Config& config); | 88 static AudioCodingModule* Create(const Config& config); |
88 virtual ~AudioCodingModule() = default; | 89 virtual ~AudioCodingModule() = default; |
89 | 90 |
90 /////////////////////////////////////////////////////////////////////////// | 91 /////////////////////////////////////////////////////////////////////////// |
91 // Utility functions | 92 // Utility functions |
92 // | 93 // |
93 | 94 |
94 /////////////////////////////////////////////////////////////////////////// | 95 /////////////////////////////////////////////////////////////////////////// |
95 // uint8_t NumberOfCodecs() | 96 // uint8_t NumberOfCodecs() |
96 // Returns number of supported codecs. | 97 // Returns number of supported codecs. |
(...skipping 725 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
822 | 823 |
823 virtual void GetDecodingCallStatistics( | 824 virtual void GetDecodingCallStatistics( |
824 AudioDecodingCallStats* call_stats) const = 0; | 825 AudioDecodingCallStats* call_stats) const = 0; |
825 | 826 |
826 virtual ANAStats GetANAStats() const = 0; | 827 virtual ANAStats GetANAStats() const = 0; |
827 }; | 828 }; |
828 | 829 |
829 } // namespace webrtc | 830 } // namespace webrtc |
830 | 831 |
831 #endif // MODULES_AUDIO_CODING_INCLUDE_AUDIO_CODING_MODULE_H_ | 832 #endif // MODULES_AUDIO_CODING_INCLUDE_AUDIO_CODING_MODULE_H_ |
OLD | NEW |