Add adaptive rate algorithm setting

This commit is contained in:
Gautier Pelloux-Prayer 2014-09-09 11:15:14 +02:00
parent 36e2f77076
commit 5a7ef0aab0
8 changed files with 237 additions and 196 deletions

1
.gitignore vendored
View file

@ -28,3 +28,4 @@ submodules/externals/build/libvpx/x86
submodules/externals/build/libvpx/arm submodules/externals/build/libvpx/arm
submodules/externals/build/openh264/arm submodules/externals/build/openh264/arm
submodules/externals/build/openh264/x86 submodules/externals/build/openh264/x86
submodules/externals/build/cunit/CUnit/

View file

@ -17,7 +17,7 @@
<item >@string/tunnel_mode_entry_value_3G_only</item> <item >@string/tunnel_mode_entry_value_3G_only</item>
<item>@string/tunnel_mode_entry_value_always</item> <item>@string/tunnel_mode_entry_value_always</item>
<item>@string/tunnel_mode_entry_value_auto</item> <item>@string/tunnel_mode_entry_value_auto</item>
</string-array> </string-array>
<string name="pref_tunnel_host_key">pref_tunnel_host_key</string> <string name="pref_tunnel_host_key">pref_tunnel_host_key</string>
<string name="pref_tunnel_port_key">pref_tunnel_port_key</string> <string name="pref_tunnel_port_key">pref_tunnel_port_key</string>
<string name="tunnel_mode_entry_value_auto">auto</string> <string name="tunnel_mode_entry_value_auto">auto</string>
@ -27,9 +27,9 @@
<string name="pref_audio_hacks_use_routing_api_key">pref_audio_hacks_use_routing_api_key</string> <string name="pref_audio_hacks_use_routing_api_key">pref_audio_hacks_use_routing_api_key</string>
<string name="pref_audio_soft_volume_key">pref_audio_soft_volume_key</string> <string name="pref_audio_soft_volume_key">pref_audio_soft_volume_key</string>
<string name="pref_audio_ringtone">pref_audio_ringtone</string> <string name="pref_audio_ringtone">pref_audio_ringtone</string>
<string name="pref_ipv6_key">pref_ipv6_key</string> <string name="pref_ipv6_key">pref_ipv6_key</string>
<string name="menu_about_key">menu_about_key</string> <string name="menu_about_key">menu_about_key</string>
<string name="pref_sipaccounts_key">pref_sipaccounts_key</string> <string name="pref_sipaccounts_key">pref_sipaccounts_key</string>
<string name="setup_key">setup_key</string> <string name="setup_key">setup_key</string>
@ -57,7 +57,7 @@
<string name="first_launch_suceeded_once_key">first_launch_suceeded_once_key</string> <string name="first_launch_suceeded_once_key">first_launch_suceeded_once_key</string>
<string name="pref_wifi_only_key">pref_wifi_only_key</string> <string name="pref_wifi_only_key">pref_wifi_only_key</string>
<string name="pref_video_use_front_camera_key">pref_video_use_front_camera_key</string> <string name="pref_video_use_front_camera_key">pref_video_use_front_camera_key</string>
<string name="pref_video_codec_h263_key">pref_video_codec_h263_key</string> <string name="pref_video_codec_h263_key">pref_video_codec_h263_key</string>
<string name="pref_video_codec_mpeg4_key">pref_video_codec_mpeg4_key</string> <string name="pref_video_codec_mpeg4_key">pref_video_codec_mpeg4_key</string>
@ -98,33 +98,35 @@
<string name="pref_media_encryption_key_zrtp">zrtp</string> <string name="pref_media_encryption_key_zrtp">zrtp</string>
<string name="pref_background_mode_key">pref_background_mode_key</string> <string name="pref_background_mode_key">pref_background_mode_key</string>
<string name="pref_codec_bitrate_limit_key">pref_codec_bitrate_limit_key</string> <string name="pref_codec_bitrate_limit_key">pref_codec_bitrate_limit_key</string>
<string name="pref_adaptative_rate_control_key">pref_adaptative_rate_control_key</string> <string name="pref_adaptive_rate_control_key">pref_adaptive_rate_control_key</string>
<string name="pref_adaptive_rate_algorithm_key">pref_adaptive_rate_algorithm</string>
<string name="pref_adaptive_rate_algorithm_simple_key">pref_adaptive_rate_algorithm_simple_key</string>
<string name="pref_adaptive_rate_algorithm_stateful_key">pref_adaptive_rate_algorithm_stateful_key</string>
<string name="push_reg_id_key">push_reg_id_key</string> <string name="push_reg_id_key">push_reg_id_key</string>
<string name="push_sender_id_key">push_sender_id_key</string> <string name="push_sender_id_key">push_sender_id_key</string>
<string name="pref_push_notification_key">pref_push_notification_key</string> <string name="pref_push_notification_key">pref_push_notification_key</string>
<string name="pref_auto_accept_friends_key">pref_auto_accept_friends_key</string> <string name="pref_auto_accept_friends_key">pref_auto_accept_friends_key</string>
<string name="pref_image_sharing_server_key">pref_image_sharing_server_key</string> <string name="pref_image_sharing_server_key">pref_image_sharing_server_key</string>
<string name="pref_remote_provisioning_key">pref_remote_provisioning_key</string> <string name="pref_remote_provisioning_key">pref_remote_provisioning_key</string>
<string name="pref_video_port_key">pref_video_port_key</string> <string name="pref_video_port_key">pref_video_port_key</string>
<string name="pref_audio_port_key">pref_audio_port_key</string> <string name="pref_audio_port_key">pref_audio_port_key</string>
<string name="pref_incoming_call_timeout_key">pref_incoming_expire_key</string> <string name="pref_incoming_call_timeout_key">pref_incoming_expire_key</string>
<string name="pref_display_name_key">pref_display_name_key</string> <string name="pref_display_name_key">pref_display_name_key</string>
<string name="pref_user_name_key">pref_user_name_key</string> <string name="pref_user_name_key">pref_user_name_key</string>
<string name="pref_expire_key">pref_expire_key</string> <string name="pref_expire_key">pref_expire_key</string>
<string name="pref_avpf_key">pref_avpf_key</string> <string name="pref_avpf_key">pref_avpf_key</string>
<string name="pref_avpf_rr_interval_key">pref_avpf_rr_interval_key</string> <string name="pref_avpf_rr_interval_key">pref_avpf_rr_interval_key</string>
<string name="pref_rfc2833_dtmf_key">pref_rfc2833_dtmf_key</string> <string name="pref_rfc2833_dtmf_key">pref_rfc2833_dtmf_key</string>
<string name="pref_sipinfo_dtmf_key">pref_sipinfo_dtmf_key</string> <string name="pref_sipinfo_dtmf_key">pref_sipinfo_dtmf_key</string>
<string name="pref_upnp_enable_key">pref_upnp_enable_key</string> <string name="pref_upnp_enable_key">pref_upnp_enable_key</string>
<string name="pref_first_time_linphone_chat_storage">pref_first_time_linphone_chat_storage</string> <string name="pref_first_time_linphone_chat_storage">pref_first_time_linphone_chat_storage</string>
<string name="pref_sipaccount_key">pref_sipaccount_key</string> <string name="pref_sipaccount_key">pref_sipaccount_key</string>
<string name="pref_advanced_key">pref_advanced_key</string> <string name="pref_advanced_key">pref_advanced_key</string>
<string name="pref_manage_key">pref_manage_key</string> <string name="pref_manage_key">pref_manage_key</string>

View file

@ -1,30 +1,30 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<string name="pref_disable_account">Disable</string> <string name="pref_disable_account">Disable</string>
<string name="pref_tunnel">Tunnel</string> <string name="pref_tunnel">Tunnel</string>
<string name="pref_tunnel_host">Hostname</string> <string name="pref_tunnel_host">Hostname</string>
<string name="pref_tunnel_port">Port</string> <string name="pref_tunnel_port">Port</string>
<string name="pref_tunnel_mode">Mode</string> <string name="pref_tunnel_mode">Mode</string>
<!-- do not change order without changing corresponding entry_values in non_localizable_strings.xml --> <!-- do not change order without changing corresponding entry_values in non_localizable_strings.xml -->
<string-array name="tunnel_mode_entries"> <string-array name="tunnel_mode_entries">
<item>disabled</item> <item>disabled</item>
<item>3G only</item> <item>3G only</item>
<item>always</item> <item>always</item>
<item>auto</item> <item>auto</item>
</string-array> </string-array>
<string name="incall_notif_active">Audio call ongoing</string> <string name="incall_notif_active">Audio call ongoing</string>
<string name="incall_notif_paused">Paused call ongoing</string> <string name="incall_notif_paused">Paused call ongoing</string>
<string name="incall_notif_video">Video capturing call ongoing</string> <string name="incall_notif_video">Video capturing call ongoing</string>
<string name="not_ready_to_make_new_call">Not ready for a new call</string> <string name="not_ready_to_make_new_call">Not ready for a new call</string>
<string name="bad_target_uri">Bad contact : %s</string> <string name="bad_target_uri">Bad contact : %s</string>
<string name="reset_sas_fmt">Reset verified %s</string> <string name="reset_sas_fmt">Reset verified %s</string>
<string name="verify_sas_fmt">Verify %s</string> <string name="verify_sas_fmt">Verify %s</string>
<string name="communication_encrypted">Encrypted</string> <string name="communication_encrypted">Encrypted</string>
<string name="waiting_for_startup">Starting up&#8230;</string> <string name="waiting_for_startup">Starting up&#8230;</string>
<string name="couldnt_accept_call">An error occurred while accepting call</string> <string name="couldnt_accept_call">An error occurred while accepting call</string>
@ -39,7 +39,7 @@
<string name="skipable_error_service_not_ready">Warning: service is not ready</string> <string name="skipable_error_service_not_ready">Warning: service is not ready</string>
<string name="close_button_text">Close</string> <string name="close_button_text">Close</string>
<string name="status_conf_call">conf</string> <string name="status_conf_call">conf</string>
<string name="status_active_call">active</string> <string name="status_active_call">active</string>
<string name="state_paused">paused</string> <string name="state_paused">paused</string>
@ -48,7 +48,7 @@
<string name="state_incoming_received">incoming</string> <string name="state_incoming_received">incoming</string>
<string name="state_outgoing_ringing">ringing</string> <string name="state_outgoing_ringing">ringing</string>
<string name="state_outgoing_progress">calling</string> <string name="state_outgoing_progress">calling</string>
<string name="mutemic_button_txt">Mute</string> <string name="mutemic_button_txt">Mute</string>
<string name="speaker_button_txt">Speaker</string> <string name="speaker_button_txt">Speaker</string>
<string name="bluetooth_button_txt">Bluetooth</string> <string name="bluetooth_button_txt">Bluetooth</string>
@ -89,7 +89,7 @@
<string name="accept">Accept</string> <string name="accept">Accept</string>
<string name="decline">Decline</string> <string name="decline">Decline</string>
<string name="unknown_incoming_call_name">Unknown</string> <string name="unknown_incoming_call_name">Unknown</string>
<string name="pref_network_title">Network</string> <string name="pref_network_title">Network</string>
<string name="pref_transport">Transport</string> <string name="pref_transport">Transport</string>
<string name="pref_transport_udp">UDP</string> <string name="pref_transport_udp">UDP</string>
@ -166,9 +166,15 @@
<string name="pref_audio_port_description">Audio port or port range (minport-maxport)</string> <string name="pref_audio_port_description">Audio port or port range (minport-maxport)</string>
<string name="pref_incoming_call_timeout_title">Incoming call timeout (in seconds)</string> <string name="pref_incoming_call_timeout_title">Incoming call timeout (in seconds)</string>
<string name="place_call_chooser">Place a call</string> <string name="place_call_chooser">Place a call</string>
<string name="pref_adaptative_rate_control">Adaptative rate control</string> <string name="pref_adaptive_rate_control">Adaptive rate control</string>
<string name="pref_adaptive_rate_algorithm">Adaptive rate algorithm</string>
<string-array name="adaptive_rate_algorithm_entries">
<item>Simple</item>
<item>Stateful</item>
</string-array>
<string name="pref_codec_bitrate_limit">Codec bitrate limit</string> <string name="pref_codec_bitrate_limit">Codec bitrate limit</string>
<string-array name="limit_bitrate_entries"> <string-array name="limit_bitrate_entries">
<item>10 kbits/s</item> <item>10 kbits/s</item>
<item>15 kbits/s</item> <item>15 kbits/s</item>
@ -184,8 +190,8 @@
<item>36</item> <item>36</item>
<item>64</item> <item>64</item>
<item>128</item> <item>128</item>
</string-array> </string-array>
<string name="pref_debug">Debug</string> <string name="pref_debug">Debug</string>
<string name="about_report_issue">Report issue</string> <string name="about_report_issue">Report issue</string>
<string name="about_bugreport_email_text">Describe problem here</string> <string name="about_bugreport_email_text">Describe problem here</string>
@ -225,7 +231,7 @@
<string name="error_cannot_get_call_parameters">Cannot get call parameters</string> <string name="error_cannot_get_call_parameters">Cannot get call parameters</string>
<string name="error_cannot_create_default_parameters">Cannot create default call parameters</string> <string name="error_cannot_create_default_parameters">Cannot create default call parameters</string>
<string name="error_cannot_invite_address">Cannot invite destination address [%s]</string> <string name="error_cannot_invite_address">Cannot invite destination address [%s]</string>
<string name="notification_started">started</string> <string name="notification_started">started</string>
<string name="pref_echo_cancellation_summary">Removes the echo heard by other end</string> <string name="pref_echo_cancellation_summary">Removes the echo heard by other end</string>
<string name="pref_stun_server">Stun server</string> <string name="pref_stun_server">Stun server</string>
@ -240,21 +246,21 @@
<string name="first_login_connect">Connect</string> <string name="first_login_connect">Connect</string>
<string name="first_launch_no_login_password">Please enter your login and password</string> <string name="first_launch_no_login_password">Please enter your login and password</string>
<string name="first_launch_bad_login_password">Couldn\'t connect; check your login and password and start again</string> <string name="first_launch_bad_login_password">Couldn\'t connect; check your login and password and start again</string>
<string name="pref_amr_summary">AMR codec might not be present on your phone</string> <string name="pref_amr_summary">AMR codec might not be present on your phone</string>
<string name="pref_video_codec_vp8_title">VP8</string> <string name="pref_video_codec_vp8_title">VP8</string>
<string name="pref_media_encryption">Media encryption</string> <string name="pref_media_encryption">Media encryption</string>
<string name="media_encryption_none">None</string> <string name="media_encryption_none">None</string>
<string name="media_encryption_srtp">SRTP</string> <string name="media_encryption_srtp">SRTP</string>
<string name="media_encryption_zrtp">ZRTP</string> <string name="media_encryption_zrtp">ZRTP</string>
<string name="pref_video_codec_h264_unavailable">Codec disabled, build the app from source code to enable it</string> <string name="pref_video_codec_h264_unavailable">Codec disabled, build the app from source code to enable it</string>
<string name="pref_video_codec_mpeg4_unavailable">Codec disabled, build the app from source code to enable it</string> <string name="pref_video_codec_mpeg4_unavailable">Codec disabled, build the app from source code to enable it</string>
<string name="pref_sipaccounts">SIP Accounts</string> <string name="pref_sipaccounts">SIP Accounts</string>
<string name="pref_wifi_only">Use wifi only</string> <string name="pref_wifi_only">Use wifi only</string>
<string name="pref_push_notification">Enable push notifications</string> <string name="pref_push_notification">Enable push notifications</string>
<string name="wizard_failed">An error occurred, try again later.</string> <string name="wizard_failed">An error occurred, try again later.</string>
<string name="wizard_server_unavailable">Server unreachable, verify your internet connection.</string> <string name="wizard_server_unavailable">Server unreachable, verify your internet connection.</string>
<string name="wizard_username_unavailable">This username is already in use.</string> <string name="wizard_username_unavailable">This username is already in use.</string>
@ -262,13 +268,13 @@
<string name="wizard_email_incorrect">Your email is not valid.</string> <string name="wizard_email_incorrect">Your email is not valid.</string>
<string name="wizard_password_incorrect">Your password is not valid (6 characters min).</string> <string name="wizard_password_incorrect">Your password is not valid (6 characters min).</string>
<string name="wizard_passwords_unmatched">Passwords entered are different.</string> <string name="wizard_passwords_unmatched">Passwords entered are different.</string>
<string name="pref_help_proxy">SIP proxy hostname or ip address (optional)</string> <string name="pref_help_proxy">SIP proxy hostname or ip address (optional)</string>
<string name="pref_help_outbound_proxy">Route all calls through SIP proxy</string> <string name="pref_help_outbound_proxy">Route all calls through SIP proxy</string>
<string name="pref_help_username">Example: john if your account is john@sip.example.org</string> <string name="pref_help_username">Example: john if your account is john@sip.example.org</string>
<string name="pref_help_domain">sip.example.org if your account is john@sip.example.org</string> <string name="pref_help_domain">sip.example.org if your account is john@sip.example.org</string>
<string name="pref_help_password">You have to re-enter your password if you edit your username and/or the domain</string> <string name="pref_help_password">You have to re-enter your password if you edit your username and/or the domain</string>
<string name="delete">Delete</string> <string name="delete">Delete</string>
<string name="chat">Chat</string> <string name="chat">Chat</string>
<string name="call">Call</string> <string name="call">Call</string>
@ -277,7 +283,7 @@
<string name="status_not_connected">Not Registered</string> <string name="status_not_connected">Not Registered</string>
<string name="status_in_progress">Registration in progress</string> <string name="status_in_progress">Registration in progress</string>
<string name="status_error">Registration failed</string> <string name="status_error">Registration failed</string>
<string name="addressHint">Number or address</string> <string name="addressHint">Number or address</string>
<string name="conference">Conference</string> <string name="conference">Conference</string>
<string name="incoming">Incoming call</string> <string name="incoming">Incoming call</string>
@ -288,7 +294,7 @@
<string name="no_contact">No contact in your address book.</string> <string name="no_contact">No contact in your address book.</string>
<string name="no_sip_contact">No SIP contact in your address book.</string> <string name="no_sip_contact">No SIP contact in your address book.</string>
<string name="no_chat_history">No chat history.</string> <string name="no_chat_history">No chat history.</string>
<string name="call_stats_audio">Audio</string> <string name="call_stats_audio">Audio</string>
<string name="call_stats_video">Video</string> <string name="call_stats_video">Video</string>
<string name="call_stats_codec">Codec:</string> <string name="call_stats_codec">Codec:</string>
@ -296,7 +302,7 @@
<string name="call_stats_download">Download bandwidth:</string> <string name="call_stats_download">Download bandwidth:</string>
<string name="call_stats_ice">ICE connectivity:</string> <string name="call_stats_ice">ICE connectivity:</string>
<string name="call_stats_video_resolution">Video size:</string> <string name="call_stats_video_resolution">Video size:</string>
<!-- Used by Android to help blind people by describing them images --> <!-- Used by Android to help blind people by describing them images -->
<string name="content_description_add_contact">Add to contacts button</string> <string name="content_description_add_contact">Add to contacts button</string>
<string name="content_description_about"></string> <string name="content_description_about"></string>
@ -337,7 +343,7 @@
<string name="content_description_message_status"></string> <string name="content_description_message_status"></string>
<string name="content_description_conference"></string> <string name="content_description_conference"></string>
<string name="content_description_mark"></string> <string name="content_description_mark"></string>
<string name="setup_title">Account Setup Assistant</string> <string name="setup_title">Account Setup Assistant</string>
<string name="setup_apply">Apply</string> <string name="setup_apply">Apply</string>
<string name="setup_password_hint">password</string> <string name="setup_password_hint">password</string>
@ -349,17 +355,17 @@
<string name="setup_check_account_validation">Check</string> <string name="setup_check_account_validation">Check</string>
<string name="setup_account_not_validated">Your account has not been validated yet.</string> <string name="setup_account_not_validated">Your account has not been validated yet.</string>
<string name="setup_account_validated">Your account has been validated.</string> <string name="setup_account_validated">Your account has been validated.</string>
<string name="button_history">History</string> <string name="button_history">History</string>
<string name="button_contacts">Contacts</string> <string name="button_contacts">Contacts</string>
<string name="button_settings">Settings</string> <string name="button_settings">Settings</string>
<string name="button_chat">Chat</string> <string name="button_chat">Chat</string>
<string name="button_about">About</string> <string name="button_about">About</string>
<string name="button_setup_cancel">Cancel</string> <string name="button_setup_cancel">Cancel</string>
<string name="button_setup_back">Back</string> <string name="button_setup_back">Back</string>
<string name="button_setup_next">Let\'s go</string> <string name="button_setup_next">Let\'s go</string>
<string name="button_new_chat">New conversation</string> <string name="button_new_chat">New conversation</string>
<string name="button_edit">Edit</string> <string name="button_edit">Edit</string>
<string name="button_cancel">Cancel</string> <string name="button_cancel">Cancel</string>
@ -370,7 +376,7 @@
<string name="button_all_call">All</string> <string name="button_all_call">All</string>
<string name="button_missed_call">Missed</string> <string name="button_missed_call">Missed</string>
<string name="button_delete_all">Delete</string> <string name="button_delete_all">Delete</string>
<string name="button_transfer">Transfer</string> <string name="button_transfer">Transfer</string>
<string name="button_add_call">Add call</string> <string name="button_add_call">Add call</string>
<string name="button_video">Video</string> <string name="button_video">Video</string>
@ -380,11 +386,11 @@
<string name="button_receiver">Receiver</string> <string name="button_receiver">Receiver</string>
<string name="button_bluetooth">Bluetooth</string> <string name="button_bluetooth">Bluetooth</string>
<string name="button_options">Options</string> <string name="button_options">Options</string>
<string name="button_send_message">Send</string> <string name="button_send_message">Send</string>
<string name="button_send_picture">Pic</string> <string name="button_send_picture">Pic</string>
<string name="uploading_image">Uploading&#8230;</string> <string name="uploading_image">Uploading&#8230;</string>
<string name="call_update_title">Call update requested</string> <string name="call_update_title">Call update requested</string>
<string name="call_update_desc">Your correspondent would like to add video to the current call.</string> <string name="call_update_desc">Your correspondent would like to add video to the current call.</string>
<string name="call_update_yes">Accept</string> <string name="call_update_yes">Accept</string>
@ -400,7 +406,7 @@
<string name="image_picker_title">Select source</string> <string name="image_picker_title">Select source</string>
<string name="image_saved">Image saved</string> <string name="image_saved">Image saved</string>
<string name="image_not_saved">Error, image not saved</string> <string name="image_not_saved">Error, image not saved</string>
<string name="pref_linphone_friend_title">Friends</string> <string name="pref_linphone_friend_title">Friends</string>
<string name="pref_auto_accept_friends_title">New friends</string> <string name="pref_auto_accept_friends_title">New friends</string>
<string name="pref_auto_accept_friends_desc">utomatically accept new friend requests</string> <string name="pref_auto_accept_friends_desc">utomatically accept new friend requests</string>
@ -409,69 +415,69 @@
<string name="setup_ec_calibration">Echo canceller calibration in progress</string> <string name="setup_ec_calibration">Echo canceller calibration in progress</string>
<string name="pref_image_sharing_server_title">Sharing server</string> <string name="pref_image_sharing_server_title">Sharing server</string>
<string name="pref_remote_provisioning_title">Remote provisioning</string> <string name="pref_remote_provisioning_title">Remote provisioning</string>
<string name="delete_contact">Delete contact</string> <string name="delete_contact">Delete contact</string>
<string name="sip_address">SIP address</string> <string name="sip_address">SIP address</string>
<string name="phone_number">Phone number</string> <string name="phone_number">Phone number</string>
<string name="contact_first_name">First name</string> <string name="contact_first_name">First name</string>
<string name="contact_last_name">Last name</string> <string name="contact_last_name">Last name</string>
<string name="pref_primary_account_title">Primary account</string> <string name="pref_primary_account_title">Primary account</string>
<string name="pref_display_name_title">Display name</string> <string name="pref_display_name_title">Display name</string>
<string name="pref_user_name_title">Username</string> <string name="pref_user_name_title">Username</string>
<string name="pref_expire_title">Expire</string> <string name="pref_expire_title">Expire</string>
<string name="pref_avpf">AVPF</string> <string name="pref_avpf">AVPF</string>
<string name="pref_avpf_rr_interval"> AVPF regular RTCP interval in seconds (between 1 and 5)</string> <string name="pref_avpf_rr_interval"> AVPF regular RTCP interval in seconds (between 1 and 5)</string>
<string name="pref_rfc2833_dtmf">Send RFC2833 DTMFs</string> <string name="pref_rfc2833_dtmf">Send RFC2833 DTMFs</string>
<string name="pref_sipinfo_dtmf">Send SIP INFO DTMFs</string> <string name="pref_sipinfo_dtmf">Send SIP INFO DTMFs</string>
<string name="error_call_declined">Call declined</string> <string name="error_call_declined">Call declined</string>
<string name="error_user_not_found">User not found</string> <string name="error_user_not_found">User not found</string>
<string name="error_incompatible_media">Incompatible media parameters</string> <string name="error_incompatible_media">Incompatible media parameters</string>
<string name="error_low_bandwidth">Your correspondent has low bandwidth, video can\'t be started</string> <string name="error_low_bandwidth">Your correspondent has low bandwidth, video can\'t be started</string>
<string name="error_network_unreachable">Network is unreachable</string> <string name="error_network_unreachable">Network is unreachable</string>
<string name="today">Today</string> <string name="today">Today</string>
<string name="yesterday">Yesterday</string> <string name="yesterday">Yesterday</string>
<string name="call_state_missed">Missed</string> <string name="call_state_missed">Missed</string>
<string name="call_state_outgoing">Outgoing</string> <string name="call_state_outgoing">Outgoing</string>
<string name="call_state_incoming">Incoming</string> <string name="call_state_incoming">Incoming</string>
<string name="pref_background_mode">Background mode</string> <string name="pref_background_mode">Background mode</string>
<string name="show_image">Show</string> <string name="show_image">Show</string>
<string name="download_image">Download</string> <string name="download_image">Download</string>
<string name="download_image_failed">Download failed. Please check your internet access or try again later.</string> <string name="download_image_failed">Download failed. Please check your internet access or try again later.</string>
<string name="pref_auth_userid">Auth userid</string> <string name="pref_auth_userid">Auth userid</string>
<string name="pref_help_auth_userid">Enter authentication userid (optionnal)</string> <string name="pref_help_auth_userid">Enter authentication userid (optionnal)</string>
<string name="pref_display_name">Display name</string> <string name="pref_display_name">Display name</string>
<string name="pref_help_display_name">Enter display name (optionnal)</string> <string name="pref_help_display_name">Enter display name (optionnal)</string>
<string name="pref_upnp_enable">Enable UPNP</string> <string name="pref_upnp_enable">Enable UPNP</string>
<string name="pref_manage">Manage</string> <string name="pref_manage">Manage</string>
<string name="wait">Please wait...</string> <string name="wait">Please wait...</string>
<string name="importing_messages">Updating messages database</string> <string name="importing_messages">Updating messages database</string>
<string name="default_account_flag">Default account</string> <string name="default_account_flag">Default account</string>
<string name="setup_remote_provisioning">Download provisioning</string> <string name="setup_remote_provisioning">Download provisioning</string>
<string name="setup_remote_provisioning_hint">This assistant will download an existing configuration.</string> <string name="setup_remote_provisioning_hint">This assistant will download an existing configuration.</string>
<string name="setup_remote_provisioning_url_hint">provisioning url</string> <string name="setup_remote_provisioning_url_hint">provisioning url</string>
<string name="setup_remote_provisioning_login_hint">The configuration you downloaded doesn\'t include your account. Please fill it in.</string> <string name="setup_remote_provisioning_login_hint">The configuration you downloaded doesn\'t include your account. Please fill it in.</string>
<string name="setup_confirm_username">Your username will be %s (uppercase characters are not allowed). Do you accept ?</string> <string name="setup_confirm_username">Your username will be %s (uppercase characters are not allowed). Do you accept ?</string>
<string name="zrtp_accept">Accept</string> <string name="zrtp_accept">Accept</string>
<string name="zrtp_deny">Deny</string> <string name="zrtp_deny">Deny</string>
<string name="zrtp_help">You should only accept if you have the same code (see above) as your correspondent</string> <string name="zrtp_help">You should only accept if you have the same code (see above) as your correspondent</string>
<string name="remote_composing">Remote is writing...</string> <string name="remote_composing">Remote is writing...</string>
<string name="unread_messages">%i unread messages</string> <string name="unread_messages">%i unread messages</string>
<string name="retry">Retry</string> <string name="retry">Retry</string>
<string name="remote_provisioning_failure">Failed to download or apply remote provisioning profile...</string> <string name="remote_provisioning_failure">Failed to download or apply remote provisioning profile...</string>
<string name="remote_provisioning_again_title">Remote provisioning</string> <string name="remote_provisioning_again_title">Remote provisioning</string>
<string name="remote_provisioning_again_message">Do you want to change the provisioning URI ?</string> <string name="remote_provisioning_again_message">Do you want to change the provisioning URI ?</string>

View file

@ -4,96 +4,102 @@
<Preference <Preference
android:title="@string/menu_about" android:title="@string/menu_about"
android:key="@string/menu_about_key"/> android:key="@string/menu_about_key"/>
<PreferenceCategory <PreferenceCategory
android:title="@string/pref_sipaccounts" android:title="@string/pref_sipaccounts"
android:key="@string/pref_sipaccounts_key"/> android:key="@string/pref_sipaccounts_key"/>
<Preference <Preference
android:title="@string/setup_title" android:title="@string/setup_title"
android:key="@string/setup_key"/> android:key="@string/setup_key"/>
<PreferenceCategory <PreferenceCategory
android:title="@string/pref_tunnel" android:title="@string/pref_tunnel"
android:key="@string/pref_tunnel_key"> android:key="@string/pref_tunnel_key">
<EditTextPreference <EditTextPreference
android:title="@string/pref_tunnel_host" android:title="@string/pref_tunnel_host"
android:key="@string/pref_tunnel_host_key"/> android:key="@string/pref_tunnel_host_key"/>
<EditTextPreference <EditTextPreference
android:title="@string/pref_tunnel_port" android:title="@string/pref_tunnel_port"
android:key="@string/pref_tunnel_port_key" android:key="@string/pref_tunnel_port_key"
android:numeric="integer"/> android:numeric="integer"/>
<ListPreference <ListPreference
android:title="@string/pref_tunnel_mode" android:title="@string/pref_tunnel_mode"
android:key="@string/pref_tunnel_mode_key" android:key="@string/pref_tunnel_mode_key"
android:entries="@array/tunnel_mode_entries" android:entries="@array/tunnel_mode_entries"
android:entryValues="@array/tunnel_mode_entry_values"/> android:entryValues="@array/tunnel_mode_entry_values"/>
</PreferenceCategory> </PreferenceCategory>
<PreferenceCategory <PreferenceCategory
android:title="@string/pref_preferences"> android:title="@string/pref_preferences">
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_video_enable_title" android:title="@string/pref_video_enable_title"
android:key="@string/pref_video_enable_key"/> android:key="@string/pref_video_enable_key"/>
<PreferenceScreen <PreferenceScreen
android:title="@string/pref_audio"> android:title="@string/pref_audio">
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_echo_cancellation" android:title="@string/pref_echo_cancellation"
android:key="@string/pref_echo_cancellation_key" android:key="@string/pref_echo_cancellation_key"
android:summary="@string/pref_echo_cancellation_summary"/> android:summary="@string/pref_echo_cancellation_summary"/>
<Preference <Preference
android:title="@string/pref_echo_canceller_calibration" android:title="@string/pref_echo_canceller_calibration"
android:key="@string/pref_echo_canceller_calibration_key"/> android:key="@string/pref_echo_canceller_calibration_key"/>
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_adaptative_rate_control" android:title="@string/pref_adaptive_rate_control"
android:key="@string/pref_adaptative_rate_control_key" /> android:key="@string/pref_adaptive_rate_control_key" />
<ListPreference <ListPreference
android:title="@string/pref_adaptive_rate_algorithm"
android:key="@string/pref_adaptive_rate_algorithm_key"
android:entries="@array/adaptive_rate_algorithm_entries"
android:entryValues="@array/adaptive_rate_algorithm_entries" />
<ListPreference
android:title="@string/pref_codec_bitrate_limit" android:title="@string/pref_codec_bitrate_limit"
android:key="@string/pref_codec_bitrate_limit_key" android:key="@string/pref_codec_bitrate_limit_key"
android:entries="@array/limit_bitrate_entries" android:entries="@array/limit_bitrate_entries"
android:entryValues="@array/limit_bitrate_entry_values" /> android:entryValues="@array/limit_bitrate_entry_values" />
<PreferenceCategory <PreferenceCategory
android:title="@string/pref_codecs" android:title="@string/pref_codecs"
android:key="@string/pref_codecs_key"/> android:key="@string/pref_codecs_key"/>
</PreferenceScreen> </PreferenceScreen>
<PreferenceScreen <PreferenceScreen
android:title="@string/pref_video" android:title="@string/pref_video"
android:key="@string/pref_video_key" android:key="@string/pref_video_key"
android:dependency="@string/pref_video_enable_key" android:dependency="@string/pref_video_enable_key"
android:shouldDisableView="true"> android:shouldDisableView="true">
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_video_use_front_camera_title" android:title="@string/pref_video_use_front_camera_title"
android:key="@string/pref_video_use_front_camera_key" android:key="@string/pref_video_use_front_camera_key"
android:dependency="@string/pref_video_enable_key" android:dependency="@string/pref_video_enable_key"
android:layout="@layout/hidden"/> android:layout="@layout/hidden"/>
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_video_initiate_call_with_video_title" android:title="@string/pref_video_initiate_call_with_video_title"
android:key="@string/pref_video_initiate_call_with_video_key" android:key="@string/pref_video_initiate_call_with_video_key"
android:summary="@string/pref_video_initiate_call_with_video" android:summary="@string/pref_video_initiate_call_with_video"
android:dependency="@string/pref_video_enable_key"/> android:dependency="@string/pref_video_enable_key"/>
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_video_automatically_share_my_video_title" android:title="@string/pref_video_automatically_share_my_video_title"
android:key="@string/pref_video_automatically_share_my_video_key" android:key="@string/pref_video_automatically_share_my_video_key"
android:summary="@string/pref_video_automatically_share_my_video" android:summary="@string/pref_video_automatically_share_my_video"
android:dependency="@string/pref_video_enable_key" android:dependency="@string/pref_video_enable_key"
android:layout="@layout/hidden"/> android:layout="@layout/hidden"/>
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_video_automatically_accept_video_title" android:title="@string/pref_video_automatically_accept_video_title"
android:key="@string/pref_video_automatically_accept_video_key" android:key="@string/pref_video_automatically_accept_video_key"
@ -109,154 +115,154 @@
android:key="@string/pref_video_codecs_key" android:key="@string/pref_video_codecs_key"
android:dependency="@string/pref_video_enable_key" android:dependency="@string/pref_video_enable_key"
android:shouldDisableView="true"/> android:shouldDisableView="true"/>
</PreferenceScreen> </PreferenceScreen>
<PreferenceScreen <PreferenceScreen
android:title="@string/call"> android:title="@string/call">
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_sipinfo_dtmf" android:title="@string/pref_sipinfo_dtmf"
android:key="@string/pref_sipinfo_dtmf_key"/> android:key="@string/pref_sipinfo_dtmf_key"/>
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_rfc2833_dtmf" android:title="@string/pref_rfc2833_dtmf"
android:key="@string/pref_rfc2833_dtmf_key"/> android:key="@string/pref_rfc2833_dtmf_key"/>
</PreferenceScreen> </PreferenceScreen>
<PreferenceScreen <PreferenceScreen
android:title="@string/pref_network_title"> android:title="@string/pref_network_title">
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_wifi_only" android:title="@string/pref_wifi_only"
android:key="@string/pref_wifi_only_key"/> android:key="@string/pref_wifi_only_key"/>
<EditTextPreference <EditTextPreference
android:title="@string/pref_stun_server" android:title="@string/pref_stun_server"
android:key="@string/pref_stun_server_key"/> android:key="@string/pref_stun_server_key"/>
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_ice_enable" android:title="@string/pref_ice_enable"
android:key="@string/pref_ice_enable_key"/> android:key="@string/pref_ice_enable_key"/>
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_upnp_enable" android:title="@string/pref_upnp_enable"
android:key="@string/pref_upnp_enable_key"/> android:key="@string/pref_upnp_enable_key"/>
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_transport_use_random_ports" android:title="@string/pref_transport_use_random_ports"
android:key="@string/pref_transport_use_random_ports_key"/> android:key="@string/pref_transport_use_random_ports_key"/>
<EditTextPreference <EditTextPreference
android:title="@string/pref_sip_port_title" android:title="@string/pref_sip_port_title"
android:key="@string/pref_sip_port_key" android:key="@string/pref_sip_port_key"
android:numeric="integer"/> android:numeric="integer"/>
<EditTextPreference <EditTextPreference
android:title="@string/pref_audio_port_title" android:title="@string/pref_audio_port_title"
android:key="@string/pref_audio_port_key" android:key="@string/pref_audio_port_key"
android:summary="@string/pref_audio_port_description" android:summary="@string/pref_audio_port_description"
android:layout="@layout/hidden"/> android:layout="@layout/hidden"/>
<EditTextPreference <EditTextPreference
android:title="@string/pref_video_port_title" android:title="@string/pref_video_port_title"
android:key="@string/pref_video_port_key" android:key="@string/pref_video_port_key"
android:summary="@string/pref_video_port_description" android:summary="@string/pref_video_port_description"
android:layout="@layout/hidden"/> android:layout="@layout/hidden"/>
<ListPreference <ListPreference
android:title="@string/pref_media_encryption" android:title="@string/pref_media_encryption"
android:key="@string/pref_media_encryption_key"/> android:key="@string/pref_media_encryption_key"/>
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_push_notification" android:title="@string/pref_push_notification"
android:key="@string/pref_push_notification_key"/> android:key="@string/pref_push_notification_key"/>
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_ipv6_title" android:title="@string/pref_ipv6_title"
android:key="@string/pref_ipv6_key"/> android:key="@string/pref_ipv6_key"/>
</PreferenceScreen> </PreferenceScreen>
<PreferenceScreen <PreferenceScreen
android:title="@string/pref_advanced"> android:title="@string/pref_advanced">
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_debug" android:title="@string/pref_debug"
android:key="@string/pref_debug_key"/> android:key="@string/pref_debug_key"/>
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_background_mode" android:title="@string/pref_background_mode"
android:key="@string/pref_background_mode_key"/> android:key="@string/pref_background_mode_key"/>
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_animation_enable_title" android:title="@string/pref_animation_enable_title"
android:key="@string/pref_animation_enable_key"/> android:key="@string/pref_animation_enable_key"/>
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_autostart" android:title="@string/pref_autostart"
android:key="@string/pref_autostart_key"/> android:key="@string/pref_autostart_key"/>
<EditTextPreference <EditTextPreference
android:title="@string/pref_incoming_call_timeout_title" android:title="@string/pref_incoming_call_timeout_title"
android:key="@string/pref_incoming_call_timeout_key" android:key="@string/pref_incoming_call_timeout_key"
android:layout="@layout/hidden"/> android:layout="@layout/hidden"/>
<EditTextPreference <EditTextPreference
android:title="@string/pref_image_sharing_server_title" android:title="@string/pref_image_sharing_server_title"
android:key="@string/pref_image_sharing_server_key"/> android:key="@string/pref_image_sharing_server_key"/>
<EditTextPreference <EditTextPreference
android:title="@string/pref_remote_provisioning_title" android:title="@string/pref_remote_provisioning_title"
android:key="@string/pref_remote_provisioning_key"/> android:key="@string/pref_remote_provisioning_key"/>
<PreferenceCategory <PreferenceCategory
android:title="@string/pref_primary_account_title"> android:title="@string/pref_primary_account_title">
<EditTextPreference <EditTextPreference
android:title="@string/pref_display_name_title" android:title="@string/pref_display_name_title"
android:key="@string/pref_display_name_key"/> android:key="@string/pref_display_name_key"/>
<EditTextPreference <EditTextPreference
android:title="@string/pref_user_name_title" android:title="@string/pref_user_name_title"
android:key="@string/pref_user_name_key"/> android:key="@string/pref_user_name_key"/>
</PreferenceCategory> </PreferenceCategory>
<PreferenceScreen <PreferenceScreen
android:title="@string/pref_audio_hacks_title" android:title="@string/pref_audio_hacks_title"
android:layout="@layout/hidden"> android:layout="@layout/hidden">
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_audio_hacks_use_routing_api_title" android:title="@string/pref_audio_hacks_use_routing_api_title"
android:key="@string/pref_audio_hacks_use_routing_api_key"/> android:key="@string/pref_audio_hacks_use_routing_api_key"/>
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_audio_hacks_use_galaxys_hack_title" android:title="@string/pref_audio_hacks_use_galaxys_hack_title"
android:key="@string/pref_audio_hacks_use_galaxys_hack_key"/> android:key="@string/pref_audio_hacks_use_galaxys_hack_key"/>
<EditTextPreference <EditTextPreference
android:title="@string/pref_audio_use_specific_mode_title" android:title="@string/pref_audio_use_specific_mode_title"
android:key="@string/pref_audio_use_specific_mode_key" android:key="@string/pref_audio_use_specific_mode_key"
android:summary="@string/pref_audio_use_specific_mode_summary" android:summary="@string/pref_audio_use_specific_mode_summary"
android:numeric="integer" /> android:numeric="integer" />
</PreferenceScreen> </PreferenceScreen>
</PreferenceScreen> </PreferenceScreen>
</PreferenceCategory> </PreferenceCategory>
<PreferenceCategory <PreferenceCategory
android:title="@string/pref_linphone_friend_title" android:title="@string/pref_linphone_friend_title"
android:key="@string/pref_linphone_friend_key"> android:key="@string/pref_linphone_friend_key">
<CheckBoxPreference <CheckBoxPreference
android:title="@string/pref_auto_accept_friends_title" android:title="@string/pref_auto_accept_friends_title"
android:key="@string/pref_auto_accept_friends_key" android:key="@string/pref_auto_accept_friends_key"
android:summary="@string/pref_auto_accept_friends_desc"/> android:summary="@string/pref_auto_accept_friends_desc"/>
</PreferenceCategory> </PreferenceCategory>
</PreferenceScreen> </PreferenceScreen>

View file

@ -23,6 +23,7 @@ import org.linphone.core.LinphoneAddress;
import org.linphone.core.LinphoneAuthInfo; import org.linphone.core.LinphoneAuthInfo;
import org.linphone.core.LinphoneCore; import org.linphone.core.LinphoneCore;
import org.linphone.core.LinphoneAddress.TransportType; import org.linphone.core.LinphoneAddress.TransportType;
import org.linphone.core.LinphoneCore.AdaptiveRateAlgorithm;
import org.linphone.core.LinphoneCore.FirewallPolicy; import org.linphone.core.LinphoneCore.FirewallPolicy;
import org.linphone.core.LinphoneCore.MediaEncryption; import org.linphone.core.LinphoneCore.MediaEncryption;
import org.linphone.core.LinphoneCore.RegistrationState; import org.linphone.core.LinphoneCore.RegistrationState;
@ -246,7 +247,7 @@ public class LinphonePreferences {
tempAvpfRRInterval = interval; tempAvpfRRInterval = interval;
return this; return this;
} }
public AccountBuilder setRealm(String realm) { public AccountBuilder setRealm(String realm) {
tempRealm = realm; tempRealm = realm;
return this; return this;
@ -322,7 +323,7 @@ public class LinphonePreferences {
prxCfg.enableQualityReporting(tempQualityReportingEnabled); prxCfg.enableQualityReporting(tempQualityReportingEnabled);
prxCfg.setQualityReportingCollector(tempQualityReportingCollector); prxCfg.setQualityReportingCollector(tempQualityReportingCollector);
prxCfg.setQualityReportingInterval(tempQualityReportingInterval); prxCfg.setQualityReportingInterval(tempQualityReportingInterval);
if(tempRealm != null) if(tempRealm != null)
prxCfg.setRealm(tempRealm); prxCfg.setRealm(tempRealm);
@ -680,7 +681,7 @@ public class LinphonePreferences {
public void deleteAccount(int n) { public void deleteAccount(int n) {
final LinphoneProxyConfig proxyCfg = getProxyConfig(n); final LinphoneProxyConfig proxyCfg = getProxyConfig(n);
if (proxyCfg != null) if (proxyCfg != null)
getLc().removeProxyConfig(proxyCfg); getLc().removeProxyConfig(proxyCfg);
if (getLc().getProxyConfigList().length == 0) { if (getLc().getProxyConfigList().length == 0) {
@ -1016,7 +1017,7 @@ public class LinphonePreferences {
// Tunnel settings // Tunnel settings
private TunnelConfig tunnelConfig = null; private TunnelConfig tunnelConfig = null;
public TunnelConfig getTunnelConfig() { public TunnelConfig getTunnelConfig() {
if(getLc().isTunnelAvailable()) { if(getLc().isTunnelAvailable()) {
if(tunnelConfig == null) { if(tunnelConfig == null) {
@ -1033,7 +1034,7 @@ public class LinphonePreferences {
return null; return null;
} }
} }
public String getTunnelHost() { public String getTunnelHost() {
TunnelConfig config = getTunnelConfig(); TunnelConfig config = getTunnelConfig();
if(config != null) { if(config != null) {
@ -1042,7 +1043,7 @@ public class LinphonePreferences {
return null; return null;
} }
} }
public void setTunnelHost(String host) { public void setTunnelHost(String host) {
TunnelConfig config = getTunnelConfig(); TunnelConfig config = getTunnelConfig();
if(config != null) { if(config != null) {
@ -1050,7 +1051,7 @@ public class LinphonePreferences {
LinphoneManager.getInstance().initTunnelFromConf(); LinphoneManager.getInstance().initTunnelFromConf();
} }
} }
public int getTunnelPort() { public int getTunnelPort() {
TunnelConfig config = getTunnelConfig(); TunnelConfig config = getTunnelConfig();
if(config != null) { if(config != null) {
@ -1059,7 +1060,7 @@ public class LinphonePreferences {
return -1; return -1;
} }
} }
public void setTunnelPort(int port) { public void setTunnelPort(int port) {
TunnelConfig config = getTunnelConfig(); TunnelConfig config = getTunnelConfig();
if(config != null) { if(config != null) {
@ -1067,7 +1068,7 @@ public class LinphonePreferences {
LinphoneManager.getInstance().initTunnelFromConf(); LinphoneManager.getInstance().initTunnelFromConf();
} }
} }
public String getTunnelMode() { public String getTunnelMode() {
return getConfig().getString("app", "tunnel", null); return getConfig().getString("app", "tunnel", null);
} }
@ -1098,18 +1099,26 @@ public class LinphonePreferences {
return getConfig().getBool("app", "first_remote_provisioning", true); return getConfig().getBool("app", "first_remote_provisioning", true);
} }
public boolean isAdaptativeRateControlEnabled() { public boolean isAdaptiveRateControlEnabled() {
return getLc().isAdaptiveRateControlEnabled(); return getLc().isAdaptiveRateControlEnabled();
} }
public void enableAdaptativeRateControl(boolean enabled) { public void enableAdaptiveRateControl(boolean enabled) {
getLc().enableAdaptiveRateControl(enabled); getLc().enableAdaptiveRateControl(enabled);
} }
public AdaptiveRateAlgorithm getAdaptiveRateAlgorithm() {
return getLc().getAdaptiveRateAlgorithm();
}
public void setAdaptiveRateAlgorithm(AdaptiveRateAlgorithm alg) {
getLc().setAdaptiveRateAlgorithm(alg);
}
public int getCodecBitrateLimit() { public int getCodecBitrateLimit() {
return getConfig().getInt("audio", "codec_bitrate_limit", 36); return getConfig().getInt("audio", "codec_bitrate_limit", 36);
} }
public void setCodecBitrateLimit(int bitrate) { public void setCodecBitrateLimit(int bitrate) {
getConfig().setInt("audio", "codec_bitrate_limit", bitrate); getConfig().setInt("audio", "codec_bitrate_limit", bitrate);
} }

View file

@ -25,6 +25,7 @@ import java.util.List;
import org.linphone.LinphoneManager.EcCalibrationListener; import org.linphone.LinphoneManager.EcCalibrationListener;
import org.linphone.core.LinphoneAddress; import org.linphone.core.LinphoneAddress;
import org.linphone.core.LinphoneCore; import org.linphone.core.LinphoneCore;
import org.linphone.core.LinphoneCore.AdaptiveRateAlgorithm;
import org.linphone.core.LinphoneCore.EcCalibratorStatus; import org.linphone.core.LinphoneCore.EcCalibratorStatus;
import org.linphone.core.LinphoneCore.MediaEncryption; import org.linphone.core.LinphoneCore.MediaEncryption;
import org.linphone.core.LinphoneCoreException; import org.linphone.core.LinphoneCoreException;
@ -440,11 +441,14 @@ public class SettingsFragment extends PreferencesListFragment implements EcCalib
Preference echoCalibration = findPreference(getString(R.string.pref_echo_canceller_calibration_key)); Preference echoCalibration = findPreference(getString(R.string.pref_echo_canceller_calibration_key));
echoCalibration.setSummary(String.format(getString(R.string.ec_calibrated), mPrefs.getEchoCalibration())); echoCalibration.setSummary(String.format(getString(R.string.ec_calibrated), mPrefs.getEchoCalibration()));
} }
CheckBoxPreference adaptativeRateControl = (CheckBoxPreference) findPreference(getString(R.string.pref_adaptative_rate_control_key)); CheckBoxPreference adaptiveRateControl = (CheckBoxPreference) findPreference(getString(R.string.pref_adaptive_rate_control_key));
adaptativeRateControl.setChecked(mPrefs.isAdaptativeRateControlEnabled()); adaptiveRateControl.setChecked(mPrefs.isAdaptiveRateControlEnabled());
ListPreference adaptiveRateAlgorithm = (ListPreference) findPreference(getString(R.string.pref_adaptive_rate_algorithm_key));
adaptiveRateAlgorithm.setSummary(String.valueOf(mPrefs.getAdaptiveRateAlgorithm()));
adaptiveRateAlgorithm.setValue(String.valueOf(mPrefs.getAdaptiveRateAlgorithm()));
ListPreference bitrateLimit = (ListPreference) findPreference(getString(R.string.pref_codec_bitrate_limit_key)); ListPreference bitrateLimit = (ListPreference) findPreference(getString(R.string.pref_codec_bitrate_limit_key));
bitrateLimit.setSummary(String.valueOf(mPrefs.getCodecBitrateLimit())); bitrateLimit.setSummary(String.valueOf(mPrefs.getCodecBitrateLimit()));
bitrateLimit.setValue(String.valueOf(mPrefs.getCodecBitrateLimit())); bitrateLimit.setValue(String.valueOf(mPrefs.getCodecBitrateLimit()));
@ -459,16 +463,29 @@ public class SettingsFragment extends PreferencesListFragment implements EcCalib
return true; return true;
} }
}); });
findPreference(getString(R.string.pref_adaptative_rate_control_key)).setOnPreferenceChangeListener(new OnPreferenceChangeListener() { findPreference(getString(R.string.pref_adaptive_rate_control_key)).setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override @Override
public boolean onPreferenceChange(Preference preference, Object newValue) { public boolean onPreferenceChange(Preference preference, Object newValue) {
boolean enabled = (Boolean) newValue; boolean enabled = (Boolean) newValue;
mPrefs.enableAdaptativeRateControl(enabled); mPrefs.enableAdaptiveRateControl(enabled);
return true; return true;
} }
}); });
findPreference(getString(R.string.pref_adaptive_rate_algorithm_key)).setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
ListPreference listPreference = (ListPreference) preference;
int index = listPreference.findIndexOfValue((String)newValue);
mPrefs.setAdaptiveRateAlgorithm(AdaptiveRateAlgorithm.fromInt(index));
preference.setSummary(String.valueOf(mPrefs.getAdaptiveRateAlgorithm()));
return true;
}
});
findPreference(getString(R.string.pref_codec_bitrate_limit_key)).setOnPreferenceChangeListener(new OnPreferenceChangeListener() { findPreference(getString(R.string.pref_codec_bitrate_limit_key)).setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override @Override
public boolean onPreferenceChange(Preference preference, Object newValue) { public boolean onPreferenceChange(Preference preference, Object newValue) {
@ -481,12 +498,12 @@ public class SettingsFragment extends PreferencesListFragment implements EcCalib
lc.setPayloadTypeBitrate(pt, bitrate); lc.setPayloadTypeBitrate(pt, bitrate);
} }
} }
preference.setSummary(String.valueOf(mPrefs.getCodecBitrateLimit())); preference.setSummary(String.valueOf(mPrefs.getCodecBitrateLimit()));
return true; return true;
} }
}); });
findPreference(getString(R.string.pref_echo_canceller_calibration_key)).setOnPreferenceClickListener(new OnPreferenceClickListener() { findPreference(getString(R.string.pref_echo_canceller_calibration_key)).setOnPreferenceClickListener(new OnPreferenceClickListener() {
@Override @Override
public boolean onPreferenceClick(Preference preference) { public boolean onPreferenceClick(Preference preference) {

@ -1 +1 @@
Subproject commit 3b4ef4e2faa9b382df35579c0d9444ba8feac828 Subproject commit fa1c112cb33d2c0a42b351652a4779a8aea77c56

@ -1 +1 @@
Subproject commit 7563ab148ae6c16ca7d0cfb00f5bde3dfe9cbb19 Subproject commit 0abc9efadc86737345690e63886f31880286a5ee