OLD | NEW |
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 |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
59 private String keyprefFps; | 59 private String keyprefFps; |
60 private String keyprefCaptureQualitySlider; | 60 private String keyprefCaptureQualitySlider; |
61 private String keyprefVideoBitrateType; | 61 private String keyprefVideoBitrateType; |
62 private String keyprefVideoBitrateValue; | 62 private String keyprefVideoBitrateValue; |
63 private String keyprefVideoCodec; | 63 private String keyprefVideoCodec; |
64 private String keyprefAudioBitrateType; | 64 private String keyprefAudioBitrateType; |
65 private String keyprefAudioBitrateValue; | 65 private String keyprefAudioBitrateValue; |
66 private String keyprefAudioCodec; | 66 private String keyprefAudioCodec; |
67 private String keyprefHwCodecAcceleration; | 67 private String keyprefHwCodecAcceleration; |
68 private String keyprefNoAudioProcessingPipeline; | 68 private String keyprefNoAudioProcessingPipeline; |
69 private String keyprefCpuUsageDetection; | 69 private String keyprefOpenSLES; |
70 private String keyprefDisplayHud; | 70 private String keyprefDisplayHud; |
71 private String keyprefRoomServerUrl; | 71 private String keyprefRoomServerUrl; |
72 private String keyprefRoom; | 72 private String keyprefRoom; |
73 private String keyprefRoomList; | 73 private String keyprefRoomList; |
74 private ArrayList<String> roomList; | 74 private ArrayList<String> roomList; |
75 private ArrayAdapter<String> adapter; | 75 private ArrayAdapter<String> adapter; |
76 | 76 |
77 @Override | 77 @Override |
78 public void onCreate(Bundle savedInstanceState) { | 78 public void onCreate(Bundle savedInstanceState) { |
79 super.onCreate(savedInstanceState); | 79 super.onCreate(savedInstanceState); |
80 | 80 |
81 // Get setting keys. | 81 // Get setting keys. |
82 PreferenceManager.setDefaultValues(this, R.xml.preferences, false); | 82 PreferenceManager.setDefaultValues(this, R.xml.preferences, false); |
83 sharedPref = PreferenceManager.getDefaultSharedPreferences(this); | 83 sharedPref = PreferenceManager.getDefaultSharedPreferences(this); |
84 keyprefVideoCallEnabled = getString(R.string.pref_videocall_key); | 84 keyprefVideoCallEnabled = getString(R.string.pref_videocall_key); |
85 keyprefResolution = getString(R.string.pref_resolution_key); | 85 keyprefResolution = getString(R.string.pref_resolution_key); |
86 keyprefFps = getString(R.string.pref_fps_key); | 86 keyprefFps = getString(R.string.pref_fps_key); |
87 keyprefCaptureQualitySlider = getString(R.string.pref_capturequalityslider_k
ey); | 87 keyprefCaptureQualitySlider = getString(R.string.pref_capturequalityslider_k
ey); |
88 keyprefVideoBitrateType = getString(R.string.pref_startvideobitrate_key); | 88 keyprefVideoBitrateType = getString(R.string.pref_startvideobitrate_key); |
89 keyprefVideoBitrateValue = getString(R.string.pref_startvideobitratevalue_ke
y); | 89 keyprefVideoBitrateValue = getString(R.string.pref_startvideobitratevalue_ke
y); |
90 keyprefVideoCodec = getString(R.string.pref_videocodec_key); | 90 keyprefVideoCodec = getString(R.string.pref_videocodec_key); |
91 keyprefHwCodecAcceleration = getString(R.string.pref_hwcodec_key); | 91 keyprefHwCodecAcceleration = getString(R.string.pref_hwcodec_key); |
92 keyprefAudioBitrateType = getString(R.string.pref_startaudiobitrate_key); | 92 keyprefAudioBitrateType = getString(R.string.pref_startaudiobitrate_key); |
93 keyprefAudioBitrateValue = getString(R.string.pref_startaudiobitratevalue_ke
y); | 93 keyprefAudioBitrateValue = getString(R.string.pref_startaudiobitratevalue_ke
y); |
94 keyprefAudioCodec = getString(R.string.pref_audiocodec_key); | 94 keyprefAudioCodec = getString(R.string.pref_audiocodec_key); |
95 keyprefNoAudioProcessingPipeline = getString(R.string.pref_noaudioprocessing
_key); | 95 keyprefNoAudioProcessingPipeline = getString(R.string.pref_noaudioprocessing
_key); |
96 keyprefCpuUsageDetection = getString(R.string.pref_cpu_usage_detection_key); | 96 keyprefOpenSLES = getString(R.string.pref_opensles_key); |
97 keyprefDisplayHud = getString(R.string.pref_displayhud_key); | 97 keyprefDisplayHud = getString(R.string.pref_displayhud_key); |
98 keyprefRoomServerUrl = getString(R.string.pref_room_server_url_key); | 98 keyprefRoomServerUrl = getString(R.string.pref_room_server_url_key); |
99 keyprefRoom = getString(R.string.pref_room_key); | 99 keyprefRoom = getString(R.string.pref_room_key); |
100 keyprefRoomList = getString(R.string.pref_room_list_key); | 100 keyprefRoomList = getString(R.string.pref_room_list_key); |
101 | 101 |
102 setContentView(R.layout.activity_connect); | 102 setContentView(R.layout.activity_connect); |
103 | 103 |
104 roomEditText = (EditText) findViewById(R.id.room_edittext); | 104 roomEditText = (EditText) findViewById(R.id.room_edittext); |
105 roomEditText.setOnEditorActionListener( | 105 roomEditText.setOnEditorActionListener( |
106 new TextView.OnEditorActionListener() { | 106 new TextView.OnEditorActionListener() { |
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
251 | 251 |
252 // Check HW codec flag. | 252 // Check HW codec flag. |
253 boolean hwCodec = sharedPref.getBoolean(keyprefHwCodecAcceleration, | 253 boolean hwCodec = sharedPref.getBoolean(keyprefHwCodecAcceleration, |
254 Boolean.valueOf(getString(R.string.pref_hwcodec_default))); | 254 Boolean.valueOf(getString(R.string.pref_hwcodec_default))); |
255 | 255 |
256 // Check Disable Audio Processing flag. | 256 // Check Disable Audio Processing flag. |
257 boolean noAudioProcessing = sharedPref.getBoolean( | 257 boolean noAudioProcessing = sharedPref.getBoolean( |
258 keyprefNoAudioProcessingPipeline, | 258 keyprefNoAudioProcessingPipeline, |
259 Boolean.valueOf(getString(R.string.pref_noaudioprocessing_default))); | 259 Boolean.valueOf(getString(R.string.pref_noaudioprocessing_default))); |
260 | 260 |
| 261 // Check OpenSL ES enabled flag. |
| 262 boolean useOpenSLES = sharedPref.getBoolean( |
| 263 keyprefOpenSLES, |
| 264 Boolean.valueOf(getString(R.string.pref_opensles_default))); |
| 265 |
261 // Get video resolution from settings. | 266 // Get video resolution from settings. |
262 int videoWidth = 0; | 267 int videoWidth = 0; |
263 int videoHeight = 0; | 268 int videoHeight = 0; |
264 String resolution = sharedPref.getString(keyprefResolution, | 269 String resolution = sharedPref.getString(keyprefResolution, |
265 getString(R.string.pref_resolution_default)); | 270 getString(R.string.pref_resolution_default)); |
266 String[] dimensions = resolution.split("[ x]+"); | 271 String[] dimensions = resolution.split("[ x]+"); |
267 if (dimensions.length == 2) { | 272 if (dimensions.length == 2) { |
268 try { | 273 try { |
269 videoWidth = Integer.parseInt(dimensions[0]); | 274 videoWidth = Integer.parseInt(dimensions[0]); |
270 videoHeight = Integer.parseInt(dimensions[1]); | 275 videoHeight = Integer.parseInt(dimensions[1]); |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
306 int audioStartBitrate = 0; | 311 int audioStartBitrate = 0; |
307 bitrateTypeDefault = getString(R.string.pref_startaudiobitrate_default); | 312 bitrateTypeDefault = getString(R.string.pref_startaudiobitrate_default); |
308 bitrateType = sharedPref.getString( | 313 bitrateType = sharedPref.getString( |
309 keyprefAudioBitrateType, bitrateTypeDefault); | 314 keyprefAudioBitrateType, bitrateTypeDefault); |
310 if (!bitrateType.equals(bitrateTypeDefault)) { | 315 if (!bitrateType.equals(bitrateTypeDefault)) { |
311 String bitrateValue = sharedPref.getString(keyprefAudioBitrateValue, | 316 String bitrateValue = sharedPref.getString(keyprefAudioBitrateValue, |
312 getString(R.string.pref_startaudiobitratevalue_default)); | 317 getString(R.string.pref_startaudiobitratevalue_default)); |
313 audioStartBitrate = Integer.parseInt(bitrateValue); | 318 audioStartBitrate = Integer.parseInt(bitrateValue); |
314 } | 319 } |
315 | 320 |
316 // Test if CpuOveruseDetection should be disabled. By default is on. | |
317 boolean cpuOveruseDetection = sharedPref.getBoolean( | |
318 keyprefCpuUsageDetection, | |
319 Boolean.valueOf( | |
320 getString(R.string.pref_cpu_usage_detection_default))); | |
321 | |
322 // Check statistics display option. | 321 // Check statistics display option. |
323 boolean displayHud = sharedPref.getBoolean(keyprefDisplayHud, | 322 boolean displayHud = sharedPref.getBoolean(keyprefDisplayHud, |
324 Boolean.valueOf(getString(R.string.pref_displayhud_default))); | 323 Boolean.valueOf(getString(R.string.pref_displayhud_default))); |
325 | 324 |
326 // Start AppRTCDemo activity. | 325 // Start AppRTCDemo activity. |
327 Log.d(TAG, "Connecting to room " + roomId + " at URL " + roomUrl); | 326 Log.d(TAG, "Connecting to room " + roomId + " at URL " + roomUrl); |
328 if (validateUrl(roomUrl)) { | 327 if (validateUrl(roomUrl)) { |
329 Uri uri = Uri.parse(roomUrl); | 328 Uri uri = Uri.parse(roomUrl); |
330 Intent intent = new Intent(this, CallActivity.class); | 329 Intent intent = new Intent(this, CallActivity.class); |
331 intent.setData(uri); | 330 intent.setData(uri); |
332 intent.putExtra(CallActivity.EXTRA_ROOMID, roomId); | 331 intent.putExtra(CallActivity.EXTRA_ROOMID, roomId); |
333 intent.putExtra(CallActivity.EXTRA_LOOPBACK, loopback); | 332 intent.putExtra(CallActivity.EXTRA_LOOPBACK, loopback); |
334 intent.putExtra(CallActivity.EXTRA_VIDEO_CALL, videoCallEnabled); | 333 intent.putExtra(CallActivity.EXTRA_VIDEO_CALL, videoCallEnabled); |
335 intent.putExtra(CallActivity.EXTRA_VIDEO_WIDTH, videoWidth); | 334 intent.putExtra(CallActivity.EXTRA_VIDEO_WIDTH, videoWidth); |
336 intent.putExtra(CallActivity.EXTRA_VIDEO_HEIGHT, videoHeight); | 335 intent.putExtra(CallActivity.EXTRA_VIDEO_HEIGHT, videoHeight); |
337 intent.putExtra(CallActivity.EXTRA_VIDEO_FPS, cameraFps); | 336 intent.putExtra(CallActivity.EXTRA_VIDEO_FPS, cameraFps); |
338 intent.putExtra(CallActivity.EXTRA_VIDEO_CAPTUREQUALITYSLIDER_ENABLED, | 337 intent.putExtra(CallActivity.EXTRA_VIDEO_CAPTUREQUALITYSLIDER_ENABLED, |
339 captureQualitySlider); | 338 captureQualitySlider); |
340 intent.putExtra(CallActivity.EXTRA_VIDEO_BITRATE, videoStartBitrate); | 339 intent.putExtra(CallActivity.EXTRA_VIDEO_BITRATE, videoStartBitrate); |
341 intent.putExtra(CallActivity.EXTRA_VIDEOCODEC, videoCodec); | 340 intent.putExtra(CallActivity.EXTRA_VIDEOCODEC, videoCodec); |
342 intent.putExtra(CallActivity.EXTRA_HWCODEC_ENABLED, hwCodec); | 341 intent.putExtra(CallActivity.EXTRA_HWCODEC_ENABLED, hwCodec); |
343 intent.putExtra(CallActivity.EXTRA_NOAUDIOPROCESSING_ENABLED, | 342 intent.putExtra(CallActivity.EXTRA_NOAUDIOPROCESSING_ENABLED, |
344 noAudioProcessing); | 343 noAudioProcessing); |
| 344 intent.putExtra(CallActivity.EXTRA_OPENSLES_ENABLED, useOpenSLES); |
345 intent.putExtra(CallActivity.EXTRA_AUDIO_BITRATE, audioStartBitrate); | 345 intent.putExtra(CallActivity.EXTRA_AUDIO_BITRATE, audioStartBitrate); |
346 intent.putExtra(CallActivity.EXTRA_AUDIOCODEC, audioCodec); | 346 intent.putExtra(CallActivity.EXTRA_AUDIOCODEC, audioCodec); |
347 intent.putExtra(CallActivity.EXTRA_CPUOVERUSE_DETECTION, | |
348 cpuOveruseDetection); | |
349 intent.putExtra(CallActivity.EXTRA_DISPLAY_HUD, displayHud); | 347 intent.putExtra(CallActivity.EXTRA_DISPLAY_HUD, displayHud); |
350 intent.putExtra(CallActivity.EXTRA_CMDLINE, commandLineRun); | 348 intent.putExtra(CallActivity.EXTRA_CMDLINE, commandLineRun); |
351 intent.putExtra(CallActivity.EXTRA_RUNTIME, runTimeMs); | 349 intent.putExtra(CallActivity.EXTRA_RUNTIME, runTimeMs); |
352 | 350 |
353 startActivityForResult(intent, CONNECTION_REQUEST); | 351 startActivityForResult(intent, CONNECTION_REQUEST); |
354 } | 352 } |
355 } | 353 } |
356 | 354 |
357 private boolean validateUrl(String url) { | 355 private boolean validateUrl(String url) { |
358 if (URLUtil.isHttpsUrl(url) || URLUtil.isHttpUrl(url)) { | 356 if (URLUtil.isHttpsUrl(url) || URLUtil.isHttpUrl(url)) { |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
402 } | 400 } |
403 } | 401 } |
404 if (position != AdapterView.INVALID_POSITION) { | 402 if (position != AdapterView.INVALID_POSITION) { |
405 return adapter.getItem(position); | 403 return adapter.getItem(position); |
406 } else { | 404 } else { |
407 return null; | 405 return null; |
408 } | 406 } |
409 } | 407 } |
410 | 408 |
411 } | 409 } |
OLD | NEW |