diff --git a/Classes/LinphoneCoreSettingsStore.m b/Classes/LinphoneCoreSettingsStore.m index 0832178db..15caf27fe 100644 --- a/Classes/LinphoneCoreSettingsStore.m +++ b/Classes/LinphoneCoreSettingsStore.m @@ -187,8 +187,9 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); [self setBool:linphone_core_adaptive_rate_control_enabled(lc) forKey:@"adaptive_rate_control_preference"]; [self setString:linphone_core_get_adaptive_rate_algorithm(lc) forKey:@"adaptive_rate_algorithm_preference"]; - [self setInteger:lp_config_get_int(conf, "audio", "codec_bitrate_limit", kLinphoneAudioVbrCodecDefaultBitrate) forKey:@"audio_codec_bitrate_limit_preference"]; - [self setInteger:lp_config_get_int(conf, LINPHONERC_APPLICATION_KEY, "disable_voiceproc", 0) forKey:@"disable_voiceproc"]; + [self setInteger:lp_config_get_int(conf, "audio", "codec_bitrate_limit", kLinphoneAudioVbrCodecDefaultBitrate) forKey:@"audio_codec_bitrate_limit_preference"]; + [self setInteger:lp_config_get_int(conf, LINPHONERC_APPLICATION_KEY, "voiceproc_preference", 1) forKey:@"voiceproc_preference"]; + [self setInteger:lp_config_get_int(conf, "sound", "eq_active", 0) forKey:@"eq_active"]; } [self setBool:lp_config_get_int(conf, LINPHONERC_APPLICATION_KEY, "advanced_account_preference", 0) forKey:@"advanced_account_preference"]; @@ -543,7 +544,16 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); [self stringForKey:@"adaptive_rate_algorithm_preference"] cStringUsingEncoding:[NSString defaultCStringEncoding] ]); - lp_config_set_int(config, LINPHONERC_APPLICATION_KEY, "disable_voiceproc", [self boolForKey:@"disable_voiceproc"]); + // Voice processing + BOOL voice_processing = [self boolForKey:@"voiceproc_preference"]; + lp_config_set_int(config, LINPHONERC_APPLICATION_KEY, "voiceproc_preference", voice_processing); + NSString* au_device = @"AU: Audio Unit Receiver"; + if( !voice_processing ){ au_device = @"AU: Audio Unit NoVoiceProc"; } + linphone_core_set_capture_device(lc, [au_device UTF8String]); + linphone_core_set_playback_device(lc, [au_device UTF8String]); + + BOOL equalizer = [self boolForKey:@"eq_active"]; + lp_config_set_int(config, "sound", "eq_active", equalizer); linphone_core_set_use_info_for_dtmf(lc, [self boolForKey:@"sipinfo_dtmf_preference"]); linphone_core_set_use_rfc2833_for_dtmf(lc, [self boolForKey:@"rfc_dtmf_preference"]); diff --git a/Resources/linphonerc b/Resources/linphonerc index 314bb41c4..360d286b7 100644 --- a/Resources/linphonerc +++ b/Resources/linphonerc @@ -23,6 +23,11 @@ firewall_policy=0 download_bw=380 upload_bw=380 +[sound] +playback_dev_id=AU: Audio Unit Receiver +capture_dev_id=AU: Audio Unit Receiver +eq_active=0 + [app] rotation_preference=auto animations_preference=1 @@ -31,7 +36,7 @@ use_system_contacts=0 start_at_boot_preference=1 backgroundmode_preference=1 autoanswer_notif_preference=1 - +voiceproc_preference=1 [default_values] reg_expires=600 \ No newline at end of file diff --git a/Resources/linphonerc-factory b/Resources/linphonerc-factory index 09882a861..67ca24af6 100644 --- a/Resources/linphonerc-factory +++ b/Resources/linphonerc-factory @@ -26,12 +26,9 @@ video_jitt_comp=60 nortp_timeout=30 [sound] -playback_dev_id=AU: Audio Unit Receiver ringer_dev_id=AQ: Audio Queue Device -capture_dev_id=AU: Audio Unit Receiver echocancellation=0 dtmf_player_amp=0.007 -eq_active=1 eq_location=mic eq_gains=50:2:50 100:2:50 diff --git a/Resources/linphonerc-factory~ipad b/Resources/linphonerc-factory~ipad index 2cb9a3139..7ab44ac65 100644 --- a/Resources/linphonerc-factory~ipad +++ b/Resources/linphonerc-factory~ipad @@ -26,12 +26,9 @@ video_jitt_comp=60 nortp_timeout=30 [sound] -playback_dev_id=AU: Audio Unit Receiver ringer_dev_id=AQ: Audio Queue Device -capture_dev_id=AU: Audio Unit Receiver echocancellation=0 dtmf_player_amp=0.007 -eq_active=1 eq_location=mic eq_gains=50:2:50 100:2:50 diff --git a/Resources/linphonerc~ipad b/Resources/linphonerc~ipad index 89537baaa..2f010650c 100644 --- a/Resources/linphonerc~ipad +++ b/Resources/linphonerc~ipad @@ -23,6 +23,11 @@ firewall_policy=0 download_bw=512 upload_bw=512 +[sound] +playback_dev_id=AU: Audio Unit Receiver +capture_dev_id=AU: Audio Unit Receiver +eq_active=0 + [app] rotation_preference=auto animations_preference=1 @@ -31,6 +36,7 @@ use_system_contacts=0 start_at_boot_preference=1 backgroundmode_preference=1 autoanswer_notif_preference=1 +voiceproc_preference=1 [default_values] reg_expires=600 diff --git a/Settings/InAppSettings.bundle/Audio.plist b/Settings/InAppSettings.bundle/Audio.plist index 64d1cecba..1121dd229 100644 --- a/Settings/InAppSettings.bundle/Audio.plist +++ b/Settings/InAppSettings.bundle/Audio.plist @@ -246,13 +246,23 @@ 128 + + DefaultValue + + Key + voiceproc_preference + Title + Enable Voice Processing + Type + PSToggleSwitchSpecifier + DefaultValue Key - disable_voiceproc + eq_active Title - Disable VoiceProc and Equalizer + Enable Bass Boost Type PSToggleSwitchSpecifier diff --git a/Settings/InAppSettings.bundle/en.lproj/Audio.strings b/Settings/InAppSettings.bundle/en.lproj/Audio.strings index 4384de768..db5389c2a 100644 --- a/Settings/InAppSettings.bundle/en.lproj/Audio.strings +++ b/Settings/InAppSettings.bundle/en.lproj/Audio.strings @@ -48,3 +48,9 @@ /* Codec bitrate limit */ "Codec bitrate limit" = "Codec bitrate limit"; + +/* Voice processing */ +"Enable Voice Processing"="Enable Voice Processing"; + +/* Bass Boost / equalizer */ +"Enable Bass Boost"="Enable Bass Boost"; \ No newline at end of file diff --git a/Settings/InAppSettings.bundle/fr.lproj/Audio.strings b/Settings/InAppSettings.bundle/fr.lproj/Audio.strings index c90dc9783..5295f9cc3 100644 --- a/Settings/InAppSettings.bundle/fr.lproj/Audio.strings +++ b/Settings/InAppSettings.bundle/fr.lproj/Audio.strings @@ -48,3 +48,16 @@ /* Codec bitrate limit */ "Codec bitrate limit" = "Limite de débit du codec"; + +/* Voice processing */ +"Enable Voice Processing"="Optimiser le son pour la VoIP"; + +/* Bass Boost / equalizer */ +"Enable Bass Boost"="Activer Bass Boost"; + +/* Adaptative */ +"Adaptive rate algorithm"="Adaptation du débit"; + +"Simple"="Simple"; + +"Stateful"="Stateful"; \ No newline at end of file diff --git a/Settings/InAppSettings.bundle/ru.lproj/Audio.strings b/Settings/InAppSettings.bundle/ru.lproj/Audio.strings index 2b325e3ae..05456dfcd 100644 --- a/Settings/InAppSettings.bundle/ru.lproj/Audio.strings +++ b/Settings/InAppSettings.bundle/ru.lproj/Audio.strings @@ -48,3 +48,9 @@ /* Codec bitrate limit */ "Codec bitrate limit" = "Codec bitrate limit"; + +/* Voice processing */ +"Enable Voice Processing"="Enable Voice Processing"; + +/* Bass Boost / equalizer */ +"Enable Bass Boost"="Enable Bass Boost"; \ No newline at end of file diff --git a/submodules/linphone b/submodules/linphone index df58cddb5..ebdc286d6 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit df58cddb5d09bba69802ee33aee5385607fd1a68 +Subproject commit ebdc286d6d9e9b6b90f0096f9932a6d25642a0a3