Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(708)

Side by Side Diff: webrtc/examples/androidapp/src/org/appspot/apprtc/SettingsActivity.java

Issue 2002093002: Add an option to disable built-in AEC to AppRTC Android Demo (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Remove empty line Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright 2014 The WebRTC Project Authors. All rights reserved. 2 * Copyright 2014 The WebRTC Project Authors. All rights reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
11 package org.appspot.apprtc; 11 package org.appspot.apprtc;
12 12
13 import android.app.Activity; 13 import android.app.Activity;
14 import android.content.SharedPreferences; 14 import android.content.SharedPreferences;
15 import android.content.SharedPreferences.OnSharedPreferenceChangeListener; 15 import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
16 import android.os.Bundle; 16 import android.os.Bundle;
17 import android.preference.Preference; 17 import android.preference.Preference;
18 18
19 import org.webrtc.voiceengine.WebRtcAudioUtils;
20
19 /** 21 /**
20 * Settings activity for AppRTC. 22 * Settings activity for AppRTC.
21 */ 23 */
22 public class SettingsActivity extends Activity 24 public class SettingsActivity extends Activity
23 implements OnSharedPreferenceChangeListener{ 25 implements OnSharedPreferenceChangeListener{
24 private SettingsFragment settingsFragment; 26 private SettingsFragment settingsFragment;
25 private String keyprefVideoCall; 27 private String keyprefVideoCall;
26 private String keyprefResolution; 28 private String keyprefResolution;
27 private String keyprefFps; 29 private String keyprefFps;
28 private String keyprefCaptureQualitySlider; 30 private String keyprefCaptureQualitySlider;
29 private String keyprefStartVideoBitrateType; 31 private String keyprefStartVideoBitrateType;
30 private String keyprefStartVideoBitrateValue; 32 private String keyprefStartVideoBitrateValue;
31 private String keyPrefVideoCodec; 33 private String keyPrefVideoCodec;
32 private String keyprefHwCodec; 34 private String keyprefHwCodec;
33 private String keyprefCaptureToTexture; 35 private String keyprefCaptureToTexture;
34 36
35 private String keyprefStartAudioBitrateType; 37 private String keyprefStartAudioBitrateType;
36 private String keyprefStartAudioBitrateValue; 38 private String keyprefStartAudioBitrateValue;
37 private String keyPrefAudioCodec; 39 private String keyPrefAudioCodec;
38 private String keyprefNoAudioProcessing; 40 private String keyprefNoAudioProcessing;
39 private String keyprefAecDump; 41 private String keyprefAecDump;
40 private String keyprefOpenSLES; 42 private String keyprefOpenSLES;
43 private String keyprefDisableBuiltInAEC;
41 44
42 private String keyPrefRoomServerUrl; 45 private String keyPrefRoomServerUrl;
43 private String keyPrefDisplayHud; 46 private String keyPrefDisplayHud;
44 private String keyPrefTracing; 47 private String keyPrefTracing;
45 48
46 @Override 49 @Override
47 protected void onCreate(Bundle savedInstanceState) { 50 protected void onCreate(Bundle savedInstanceState) {
48 super.onCreate(savedInstanceState); 51 super.onCreate(savedInstanceState);
49 keyprefVideoCall = getString(R.string.pref_videocall_key); 52 keyprefVideoCall = getString(R.string.pref_videocall_key);
50 keyprefResolution = getString(R.string.pref_resolution_key); 53 keyprefResolution = getString(R.string.pref_resolution_key);
51 keyprefFps = getString(R.string.pref_fps_key); 54 keyprefFps = getString(R.string.pref_fps_key);
52 keyprefCaptureQualitySlider = getString(R.string.pref_capturequalityslider_k ey); 55 keyprefCaptureQualitySlider = getString(R.string.pref_capturequalityslider_k ey);
53 keyprefStartVideoBitrateType = getString(R.string.pref_startvideobitrate_key ); 56 keyprefStartVideoBitrateType = getString(R.string.pref_startvideobitrate_key );
54 keyprefStartVideoBitrateValue = getString(R.string.pref_startvideobitrateval ue_key); 57 keyprefStartVideoBitrateValue = getString(R.string.pref_startvideobitrateval ue_key);
55 keyPrefVideoCodec = getString(R.string.pref_videocodec_key); 58 keyPrefVideoCodec = getString(R.string.pref_videocodec_key);
56 keyprefHwCodec = getString(R.string.pref_hwcodec_key); 59 keyprefHwCodec = getString(R.string.pref_hwcodec_key);
57 keyprefCaptureToTexture = getString(R.string.pref_capturetotexture_key); 60 keyprefCaptureToTexture = getString(R.string.pref_capturetotexture_key);
58 61
59 keyprefStartAudioBitrateType = getString(R.string.pref_startaudiobitrate_key ); 62 keyprefStartAudioBitrateType = getString(R.string.pref_startaudiobitrate_key );
60 keyprefStartAudioBitrateValue = getString(R.string.pref_startaudiobitrateval ue_key); 63 keyprefStartAudioBitrateValue = getString(R.string.pref_startaudiobitrateval ue_key);
61 keyPrefAudioCodec = getString(R.string.pref_audiocodec_key); 64 keyPrefAudioCodec = getString(R.string.pref_audiocodec_key);
62 keyprefNoAudioProcessing = getString(R.string.pref_noaudioprocessing_key); 65 keyprefNoAudioProcessing = getString(R.string.pref_noaudioprocessing_key);
63 keyprefAecDump = getString(R.string.pref_aecdump_key); 66 keyprefAecDump = getString(R.string.pref_aecdump_key);
64 keyprefOpenSLES = getString(R.string.pref_opensles_key); 67 keyprefOpenSLES = getString(R.string.pref_opensles_key);
68 keyprefDisableBuiltInAEC = getString(R.string.pref_disable_built_in_aec_key) ;
65 69
66 keyPrefRoomServerUrl = getString(R.string.pref_room_server_url_key); 70 keyPrefRoomServerUrl = getString(R.string.pref_room_server_url_key);
67 keyPrefDisplayHud = getString(R.string.pref_displayhud_key); 71 keyPrefDisplayHud = getString(R.string.pref_displayhud_key);
68 keyPrefTracing = getString(R.string.pref_tracing_key); 72 keyPrefTracing = getString(R.string.pref_tracing_key);
69 73
70 // Display the fragment as the main content. 74 // Display the fragment as the main content.
71 settingsFragment = new SettingsFragment(); 75 settingsFragment = new SettingsFragment();
72 getFragmentManager().beginTransaction() 76 getFragmentManager().beginTransaction()
73 .replace(android.R.id.content, settingsFragment) 77 .replace(android.R.id.content, settingsFragment)
74 .commit(); 78 .commit();
(...skipping 17 matching lines...) Expand all
92 updateSummaryB(sharedPreferences, keyprefHwCodec); 96 updateSummaryB(sharedPreferences, keyprefHwCodec);
93 updateSummaryB(sharedPreferences, keyprefCaptureToTexture); 97 updateSummaryB(sharedPreferences, keyprefCaptureToTexture);
94 98
95 updateSummary(sharedPreferences, keyprefStartAudioBitrateType); 99 updateSummary(sharedPreferences, keyprefStartAudioBitrateType);
96 updateSummaryBitrate(sharedPreferences, keyprefStartAudioBitrateValue); 100 updateSummaryBitrate(sharedPreferences, keyprefStartAudioBitrateValue);
97 setAudioBitrateEnable(sharedPreferences); 101 setAudioBitrateEnable(sharedPreferences);
98 updateSummary(sharedPreferences, keyPrefAudioCodec); 102 updateSummary(sharedPreferences, keyPrefAudioCodec);
99 updateSummaryB(sharedPreferences, keyprefNoAudioProcessing); 103 updateSummaryB(sharedPreferences, keyprefNoAudioProcessing);
100 updateSummaryB(sharedPreferences, keyprefAecDump); 104 updateSummaryB(sharedPreferences, keyprefAecDump);
101 updateSummaryB(sharedPreferences, keyprefOpenSLES); 105 updateSummaryB(sharedPreferences, keyprefOpenSLES);
106 updateSummaryB(sharedPreferences, keyprefDisableBuiltInAEC);
102 107
103 updateSummary(sharedPreferences, keyPrefRoomServerUrl); 108 updateSummary(sharedPreferences, keyPrefRoomServerUrl);
104 updateSummaryB(sharedPreferences, keyPrefDisplayHud); 109 updateSummaryB(sharedPreferences, keyPrefDisplayHud);
105 updateSummaryB(sharedPreferences, keyPrefTracing); 110 updateSummaryB(sharedPreferences, keyPrefTracing);
111
112 // Disable forcing WebRTC based AEC so it won't affect our value.
113 // Otherwise, if it was enabled, isAcousticEchoCancelerSupported would alway s return false.
114 WebRtcAudioUtils.setWebRtcBasedAcousticEchoCanceler(false);
115 if (!WebRtcAudioUtils.isAcousticEchoCancelerSupported()) {
116 Preference disableBuiltInAECPreference =
117 settingsFragment.findPreference(keyprefDisableBuiltInAEC);
118
119
120 disableBuiltInAECPreference.setSummary(getString(R.string.pref_built_in_ae c_not_available));
121 disableBuiltInAECPreference.setEnabled(false);
122 }
106 } 123 }
107 124
108 @Override 125 @Override
109 protected void onPause() { 126 protected void onPause() {
110 super.onPause(); 127 super.onPause();
111 SharedPreferences sharedPreferences = 128 SharedPreferences sharedPreferences =
112 settingsFragment.getPreferenceScreen().getSharedPreferences(); 129 settingsFragment.getPreferenceScreen().getSharedPreferences();
113 sharedPreferences.unregisterOnSharedPreferenceChangeListener(this); 130 sharedPreferences.unregisterOnSharedPreferenceChangeListener(this);
114 } 131 }
115 132
(...skipping 12 matching lines...) Expand all
128 || key.equals(keyprefStartAudioBitrateValue)) { 145 || key.equals(keyprefStartAudioBitrateValue)) {
129 updateSummaryBitrate(sharedPreferences, key); 146 updateSummaryBitrate(sharedPreferences, key);
130 } else if (key.equals(keyprefVideoCall) 147 } else if (key.equals(keyprefVideoCall)
131 || key.equals(keyPrefTracing) 148 || key.equals(keyPrefTracing)
132 || key.equals(keyprefCaptureQualitySlider) 149 || key.equals(keyprefCaptureQualitySlider)
133 || key.equals(keyprefHwCodec) 150 || key.equals(keyprefHwCodec)
134 || key.equals(keyprefCaptureToTexture) 151 || key.equals(keyprefCaptureToTexture)
135 || key.equals(keyprefNoAudioProcessing) 152 || key.equals(keyprefNoAudioProcessing)
136 || key.equals(keyprefAecDump) 153 || key.equals(keyprefAecDump)
137 || key.equals(keyprefOpenSLES) 154 || key.equals(keyprefOpenSLES)
155 || key.equals(keyprefDisableBuiltInAEC)
138 || key.equals(keyPrefDisplayHud)) { 156 || key.equals(keyPrefDisplayHud)) {
139 updateSummaryB(sharedPreferences, key); 157 updateSummaryB(sharedPreferences, key);
140 } 158 }
141 if (key.equals(keyprefStartVideoBitrateType)) { 159 if (key.equals(keyprefStartVideoBitrateType)) {
142 setVideoBitrateEnable(sharedPreferences); 160 setVideoBitrateEnable(sharedPreferences);
143 } 161 }
144 if (key.equals(keyprefStartAudioBitrateType)) { 162 if (key.equals(keyprefStartAudioBitrateType)) {
145 setAudioBitrateEnable(sharedPreferences); 163 setAudioBitrateEnable(sharedPreferences);
146 } 164 }
147 } 165 }
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
184 String bitrateTypeDefault = getString(R.string.pref_startaudiobitrate_defaul t); 202 String bitrateTypeDefault = getString(R.string.pref_startaudiobitrate_defaul t);
185 String bitrateType = sharedPreferences.getString( 203 String bitrateType = sharedPreferences.getString(
186 keyprefStartAudioBitrateType, bitrateTypeDefault); 204 keyprefStartAudioBitrateType, bitrateTypeDefault);
187 if (bitrateType.equals(bitrateTypeDefault)) { 205 if (bitrateType.equals(bitrateTypeDefault)) {
188 bitratePreferenceValue.setEnabled(false); 206 bitratePreferenceValue.setEnabled(false);
189 } else { 207 } else {
190 bitratePreferenceValue.setEnabled(true); 208 bitratePreferenceValue.setEnabled(true);
191 } 209 }
192 } 210 }
193 } 211 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698