Chromium Code Reviews| Index: webrtc/voice_engine/include/voe_base.h |
| diff --git a/webrtc/voice_engine/include/voe_base.h b/webrtc/voice_engine/include/voe_base.h |
| index 4001b945774892123a60f260300b301579f906d2..c7d31742539711d371bf710a0806ad70456e3dcc 100644 |
| --- a/webrtc/voice_engine/include/voe_base.h |
| +++ b/webrtc/voice_engine/include/voe_base.h |
| @@ -34,10 +34,13 @@ |
| #ifndef WEBRTC_VOICE_ENGINE_VOE_BASE_H |
| #define WEBRTC_VOICE_ENGINE_VOE_BASE_H |
| +#include <memory> |
| + |
| #include "webrtc/common_types.h" |
| namespace webrtc { |
| +class AudioDecoderFactory; |
| class AudioDeviceModule; |
| class AudioProcessing; |
| class AudioTransport; |
| @@ -123,11 +126,14 @@ class WEBRTC_DLLEXPORT VoEBase { |
| // functionality in a separate (reference counted) module. |
| // - The AudioProcessing module handles capture-side processing. VoiceEngine |
| // takes ownership of this object. |
| + // - An AudioDecoderFactory - used to create audio decoders. |
| // If NULL is passed for any of these, VoiceEngine will create its own. |
| // Returns -1 in case of an error, 0 otherwise. |
| // TODO(ajm): Remove default NULLs. |
| virtual int Init(AudioDeviceModule* external_adm = NULL, |
| - AudioProcessing* audioproc = NULL) = 0; |
| + AudioProcessing* audioproc = NULL, |
| + std::shared_ptr<AudioDecoderFactory> decoder_factory = |
| + std::shared_ptr<AudioDecoderFactory>()) = 0; |
|
kwiberg-webrtc
2016/05/17 13:33:48
Ew! Default values for a virtual method...
Also,
ossu
2016/05/17 14:25:35
I was just following orders! (i.e. there were alre
kwiberg-webrtc
2016/05/18 03:06:35
Yes, I didn't mean to imply you were at fault. It
|
| // Returns NULL before Init() is called. |
| virtual AudioProcessing* audio_processing() = 0; |