diff --git a/spa/plugins/aec/aec-webrtc.cpp b/spa/plugins/aec/aec-webrtc.cpp index 6ad3a92e0..7b8cafcde 100644 --- a/spa/plugins/aec/aec-webrtc.cpp +++ b/spa/plugins/aec/aec-webrtc.cpp @@ -119,6 +119,9 @@ static int webrtc_init2(void *object, const struct spa_dict *args, #elif defined(HAVE_WEBRTC1) bool voice_detection = webrtc_get_spa_bool(args, "webrtc.voice_detection", true); bool transient_suppression = webrtc_get_spa_bool(args, "webrtc.transient_suppression", true); + bool mobile_mode = webrtc_get_spa_bool(args, "webrtc.mobile_mode", false); +#elif defined(HAVE_WEBRTC2) + bool mobile_mode = webrtc_get_spa_bool(args, "webrtc.mobile_mode", false); #endif // Note: AGC seems to mess up with Agnostic Delay Detection, especially with speech, // result in very poor performance, disable by default @@ -171,6 +174,7 @@ static int webrtc_init2(void *object, const struct spa_dict *args, #elif defined(HAVE_WEBRTC1) webrtc::AudioProcessing::Config config; config.echo_canceller.enabled = true; + config.echo_canceller.mobile_mode = mobile_mode; config.pipeline.multi_channel_capture = rec_info->channels > 1; config.pipeline.multi_channel_render = play_info->channels > 1; // FIXME: Example code enables both gain controllers, but that seems sus @@ -188,6 +192,7 @@ static int webrtc_init2(void *object, const struct spa_dict *args, #elif defined(HAVE_WEBRTC2) webrtc::AudioProcessing::Config config; config.echo_canceller.enabled = true; + config.echo_canceller.mobile_mode = mobile_mode; config.pipeline.multi_channel_capture = rec_info->channels > 1; config.pipeline.multi_channel_render = play_info->channels > 1; // FIXME: Example code enables both gain controllers, but that seems sus