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

Issue 2119633004: Adds support for OpenSL ES based audio capture on Android (Closed)

Created:
4 years, 5 months ago by henrika_webrtc
Modified:
4 years, 3 months ago
Reviewers:
tommi
CC:
webrtc-reviews_webrtc.org
Base URL:
https://chromium.googlesource.com/external/webrtc.git@master
Target Ref:
refs/pending/heads/master
Project:
webrtc
Visibility:
Public.

Description

Adds support for OpenSL ES based audio capture on Android. NOTE: the new code is disabled by default in the WebRtcAudioManager to ensure that OpenSL ES is not accidentally activated in existing clients. There are still some unresolved issues to sort out before it can be utilized. Enables possibility to use OpenSL ES based audio in both directions for WebRTC. All unit tests and demo clients have been tested with the new implementation but the new support is behind a flag (see above). More testing is needed before it can be used in the field and additional support for hardware effects is still missing. BUG=webrtc:5925 R=tommi@webrtc.org Committed: https://crrev.com/918b5547897a70ae13053fb0672c5f1a48dd714a Cr-Commit-Position: refs/heads/master@{#14290}

Patch Set 1 #

Patch Set 2 : cleanup #

Patch Set 3 : Fixed 64-bit build issue #

Patch Set 4 : Rebased #

Total comments: 34

Patch Set 5 : Feedback from tommi@ #

Patch Set 6 : Restoring the hardcoded disable flag #

Patch Set 7 : Fixing presubmit warnings #

Unified diffs Side-by-side diffs Delta from patch set Stats (+888 lines, -159 lines) Patch
M webrtc/modules/audio_device/BUILD.gn View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download
M webrtc/modules/audio_device/android/audio_device_template.h View 1 2 3 3 chunks +17 lines, -0 lines 0 comments Download
M webrtc/modules/audio_device/android/audio_device_unittest.cc View 1 2 3 4 5 chunks +33 lines, -8 lines 0 comments Download
M webrtc/modules/audio_device/android/audio_manager.h View 4 chunks +7 lines, -1 line 0 comments Download
M webrtc/modules/audio_device/android/audio_manager.cc View 7 chunks +14 lines, -3 lines 0 comments Download
M webrtc/modules/audio_device/android/audio_manager_unittest.cc View 6 chunks +24 lines, -3 lines 0 comments Download
M webrtc/modules/audio_device/android/build_info.h View 1 2 3 4 2 chunks +19 lines, -2 lines 0 comments Download
M webrtc/modules/audio_device/android/build_info.cc View 1 2 3 4 1 chunk +4 lines, -2 lines 0 comments Download
M webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/BuildInfo.java View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioManager.java View 1 2 3 4 5 5 chunks +15 lines, -12 lines 0 comments Download
M webrtc/modules/audio_device/android/opensles_common.h View 2 chunks +6 lines, -4 lines 0 comments Download
M webrtc/modules/audio_device/android/opensles_common.cc View 1 2 3 4 2 chunks +53 lines, -22 lines 0 comments Download
M webrtc/modules/audio_device/android/opensles_player.h View 5 chunks +13 lines, -23 lines 0 comments Download
M webrtc/modules/audio_device/android/opensles_player.cc View 9 chunks +31 lines, -71 lines 0 comments Download
A webrtc/modules/audio_device/android/opensles_recorder.h View 1 2 3 4 5 6 1 chunk +193 lines, -0 lines 0 comments Download
A webrtc/modules/audio_device/android/opensles_recorder.cc View 1 2 3 4 1 chunk +426 lines, -0 lines 0 comments Download
M webrtc/modules/audio_device/audio_device.gypi View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download
M webrtc/modules/audio_device/audio_device_buffer.cc View 1 2 3 4 1 chunk +0 lines, -1 line 0 comments Download
M webrtc/modules/audio_device/audio_device_impl.cc View 1 2 3 5 chunks +16 lines, -5 lines 0 comments Download
M webrtc/modules/utility/include/jvm_android.h View 1 chunk +1 line, -0 lines 0 comments Download
M webrtc/modules/utility/source/jvm_android.cc View 2 chunks +10 lines, -0 lines 0 comments Download

Messages

Total messages: 25 (12 generated)
henrika_webrtc
Lot's of new code here Tommi but it is all behind a flag (can't break ...
4 years, 5 months ago (2016-07-01 14:04:05 UTC) #5
henrika_webrtc
Rebased and verified that it works well on latest. PTAL ;-)
4 years, 3 months ago (2016-09-13 09:51:11 UTC) #6
tommi
https://codereview.webrtc.org/2119633004/diff/80001/webrtc/modules/audio_device/android/audio_device_unittest.cc File webrtc/modules/audio_device/android/audio_device_unittest.cc (right): https://codereview.webrtc.org/2119633004/diff/80001/webrtc/modules/audio_device/android/audio_device_unittest.cc#newcode729 webrtc/modules/audio_device/android/audio_device_unittest.cc:729: if (low_latency_output && low_latency_input) use {} since lines 732-733 ...
4 years, 3 months ago (2016-09-15 09:34:13 UTC) #7
henrika_webrtc
Thanks Tommi! PTAL https://codereview.webrtc.org/2119633004/diff/80001/webrtc/modules/audio_device/android/audio_device_unittest.cc File webrtc/modules/audio_device/android/audio_device_unittest.cc (right): https://codereview.webrtc.org/2119633004/diff/80001/webrtc/modules/audio_device/android/audio_device_unittest.cc#newcode729 webrtc/modules/audio_device/android/audio_device_unittest.cc:729: if (low_latency_output && low_latency_input) On 2016/09/15 ...
4 years, 3 months ago (2016-09-16 13:30:48 UTC) #8
tommi
lgtm https://codereview.webrtc.org/2119633004/diff/80001/webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioManager.java File webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioManager.java (right): https://codereview.webrtc.org/2119633004/diff/80001/webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioManager.java#newcode234 webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioManager.java:234: return false; On 2016/09/16 13:30:47, henrika_webrtc wrote: > ...
4 years, 3 months ago (2016-09-17 09:27:08 UTC) #9
henrika_webrtc
https://codereview.webrtc.org/2119633004/diff/80001/webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioManager.java File webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioManager.java (right): https://codereview.webrtc.org/2119633004/diff/80001/webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioManager.java#newcode234 webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioManager.java:234: return false; On 2016/09/17 09:27:08, tommi (webrtc) wrote: > ...
4 years, 3 months ago (2016-09-19 11:16:13 UTC) #10
henrika_webrtc
4 years, 3 months ago (2016-09-19 11:16:19 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2119633004/120001
4 years, 3 months ago (2016-09-19 11:18:14 UTC) #14
commit-bot: I haz the power
Try jobs failed on following builders: presubmit on master.tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/presubmit/builds/8469)
4 years, 3 months ago (2016-09-19 11:31:04 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2119633004/140001
4 years, 3 months ago (2016-09-19 13:36:54 UTC) #19
commit-bot: I haz the power
Try jobs failed on following builders: android_dbg on master.tryserver.webrtc (JOB_TIMED_OUT, no build URL)
4 years, 3 months ago (2016-09-19 13:42:05 UTC) #21
henrika_webrtc
Committed patchset #7 (id:140001) manually as 918b5547897a70ae13053fb0672c5f1a48dd714a (presubmit successful).
4 years, 3 months ago (2016-09-19 13:44:28 UTC) #24
commit-bot: I haz the power
4 years, 3 months ago (2016-09-19 13:44:28 UTC) #25
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/918b5547897a70ae13053fb0672c5f1a48dd714a
Cr-Commit-Position: refs/heads/master@{#14290}

Powered by Google App Engine
This is Rietveld 408576698