Go to file
henrika@webrtc.org 62f6e75673 Refactoring WebRTC Java/JNI audio recording in C++ and Java.
This is a big refactoring of the existing C++/JNI/Java support for audio recording in native WebRTC:

- Removes unused code and old WEBRTC logging macros
- Now uses optimal sample rate and buffer size in Java AudioRecord (used hard-coded sample rate before)
- Makes code more inline with the implementation in Chrome
- Adds helper methods for JNI handling to improve readability
- Changes the threading model (high-prio audio thread now lives in Java-land and C++ only works as proxy)
- Adds basic thread checks
- Removes all locks in C++ land
- Removes all locks in Java
- Improves construction/destruction
- Additional cleanup

Tested using AppRTCDemo and WebRTCDemo APKs on N6, N5, N7, Samsung Galaxy S4 and
Samsung Galaxy S4 mini (which uses 44.1kHz as native sample rate).

BUG=NONE
R=magjed@webrtc.org, perkj@webrtc.org, pthatcher@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/33969004

Cr-Commit-Position: refs/heads/master@{#8325}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8325 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-11 08:39:19 +00:00
chromium Roll chromium_revision 9070a80..cd35af6 (313233:314322) 2015-02-03 15:24:22 +00:00
data audio_processing: Added a new AEC delay metric value that gives the amount of poor delays 2015-02-03 06:07:21 +00:00
resources resources/audio_processing: Removed unused test files 2014-12-15 15:57:11 +00:00
talk Refactoring WebRTC Java/JNI audio recording in C++ and Java. 2015-02-11 08:39:19 +00:00
third_party Roll gtest-parallel. 2015-02-05 12:37:42 +00:00
tools Roll chromium_revision 9070a80..cd35af6 (313233:314322) 2015-02-03 15:24:22 +00:00
webrtc Refactoring WebRTC Java/JNI audio recording in C++ and Java. 2015-02-11 08:39:19 +00:00
.clang-format Style-option file for clang-format. 2013-11-25 15:30:37 +00:00
.gitignore Roll chromium_revision 9070a80..cd35af6 (313233:314322) 2015-02-03 15:24:22 +00:00
all.gyp Revert r7886:7887. 2014-12-15 07:03:04 +00:00
android-webrtc.mk Changed a flag in ARM build for platform build. 2012-09-08 00:32:59 +00:00
AUTHORS Revert 8275 "This CL adds an API to the SSL stream adapters and ..." 2015-02-07 11:13:18 +00:00
BUILD.gn Initial GN work for WebRTC 2014-06-17 08:54:03 +00:00
check_root_dir.py Remove root_dir variable from DEPS + enforce rename. 2014-10-09 09:11:27 +00:00
codereview.settings Adding TRYSERVER_PROJECT to codereview.settings. 2015-01-19 13:51:59 +00:00
COPYING Libjingle in webrtc needs updated AUTHORS, COPYING, LICENSE_THIRD_PARTY AND README. 2013-07-16 18:04:56 +00:00
DEPS Roll chromium_revision 598c3e9..601e6f3 2015-02-10 07:34:41 +00:00
drover.properties Add a drover.properties file for reference. 2013-05-30 18:15:54 +00:00
libvpx.mk Change android makefile to reflect recent file structure change 2011-07-13 17:49:49 +00:00
LICENSE Updated license path in LICENSE and LICENSE_THIRD_PARTY. 2012-11-22 12:06:21 +00:00
license_template.txt Update template to follow chromium copyright style 2013-04-24 01:01:28 +00:00
LICENSE_THIRD_PARTY Libjingle in webrtc needs updated AUTHORS, COPYING, LICENSE_THIRD_PARTY AND README. 2013-07-16 18:04:56 +00:00
OWNERS Add kjellander as PRESUBMIT.py OWNER 2014-11-04 17:06:31 +00:00
PATENTS Add references to src/ copies for LICENSE etc. 2011-10-26 01:05:07 +00:00
PRESUBMIT.py Re-land "Remove <(webrtc_root) from source file entries." 2015-01-29 14:30:41 +00:00
setup_links.py Roll chromium_revision 9070a80..cd35af6 (313233:314322) 2015-02-03 15:24:22 +00:00
sync_chromium.py Roll chromium_revision 9070a80..cd35af6 (313233:314322) 2015-02-03 15:24:22 +00:00
WATCHLISTS Removing giles@mozilla.com from WebRTC watchlist. 2014-12-22 12:49:14 +00:00