diff options
Diffstat (limited to 'third_party/libjingle/overrides/init_webrtc.cc')
-rw-r--r-- | third_party/libjingle/overrides/init_webrtc.cc | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/third_party/libjingle/overrides/init_webrtc.cc b/third_party/libjingle/overrides/init_webrtc.cc index ab89d58..6db34f6 100644 --- a/third_party/libjingle/overrides/init_webrtc.cc +++ b/third_party/libjingle/overrides/init_webrtc.cc @@ -11,6 +11,8 @@ #include "base/metrics/field_trial.h" #include "base/native_library.h" #include "base/path_service.h" +#include "third_party/webrtc/common.h" +#include "third_party/webrtc/modules/audio_processing/include/audio_processing.h" #include "webrtc/base/basictypes.h" #include "webrtc/base/logging.h" @@ -53,6 +55,13 @@ bool InitializeWebRtcModule() { return true; } +webrtc::AudioProcessing* CreateWebRtcAudioProcessing( + const webrtc::Config& config) { + // libpeerconnection is being compiled as a static lib, use + // webrtc::AudioProcessing directly. + return webrtc::AudioProcessing::Create(config); +} + #else // !LIBPEERCONNECTION_LIB // When being compiled as a shared library, we need to bridge the gap between @@ -62,6 +71,7 @@ bool InitializeWebRtcModule() { // Global function pointers to the factory functions in the shared library. CreateWebRtcMediaEngineFunction g_create_webrtc_media_engine = NULL; DestroyWebRtcMediaEngineFunction g_destroy_webrtc_media_engine = NULL; +CreateWebRtcAudioProcessingFunction g_create_webrtc_audio_processing = NULL; // Returns the full or relative path to the libpeerconnection module depending // on what platform we're on. @@ -135,7 +145,8 @@ bool InitializeWebRtcModule() { &AddTraceEvent, &g_create_webrtc_media_engine, &g_destroy_webrtc_media_engine, - &init_diagnostic_logging); + &init_diagnostic_logging, + &g_create_webrtc_audio_processing); if (init_ok) rtc::SetExtraLoggingInit(init_diagnostic_logging); @@ -160,4 +171,12 @@ void DestroyWebRtcMediaEngine(cricket::MediaEngineInterface* media_engine) { g_destroy_webrtc_media_engine(media_engine); } +webrtc::AudioProcessing* CreateWebRtcAudioProcessing( + const webrtc::Config& config) { + // The same as CreateWebRtcMediaEngine(), we call InitializeWebRtcModule here + // for convenience of tests. + InitializeWebRtcModule(); + return g_create_webrtc_audio_processing(config); +} + #endif // LIBPEERCONNECTION_LIB |