webrtc/talk
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
..
app/webrtc Refactoring WebRTC Java/JNI audio recording in C++ and Java. 2015-02-11 08:39:19 +00:00
build Remove USE_WEBRTC_DEV_BRANCH. 2015-02-09 10:17:12 +00:00
examples Merge fixes and changed for Android AppRTCDemo from internal repo. 2015-02-10 23:05:04 +00:00
media Refactoring WebRTC Java/JNI audio recording in C++ and Java. 2015-02-11 08:39:19 +00:00
session/media Refactoring WebRTC Java/JNI audio recording in C++ and Java. 2015-02-11 08:39:19 +00:00
codereview.settings Add codereview.settings to the /talk subdirectory 2014-12-05 13:47:37 +00:00
COPYING Libjingle in webrtc needs updated AUTHORS, COPYING, LICENSE_THIRD_PARTY AND README. 2013-07-16 18:04:56 +00:00
libjingle_examples.gyp Merge fixes and changed for Android AppRTCDemo from internal repo. 2015-02-10 23:05:04 +00:00
libjingle_media_unittest.isolate Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
libjingle_p2p_unittest.isolate Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
libjingle_peerconnection_unittest.isolate Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
libjingle_sound_unittest.isolate Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
libjingle_tests.gyp Add libjingle_peerconnection_so.so to Java test dependencies. 2015-02-06 16:09:20 +00:00
libjingle_unittest.isolate Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00
libjingle.gyp Rename GYP and GN targets for video capture+render. 2015-02-11 07:47:47 +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 OWNERS: Remove tomasl@ and mallinath@ 2014-11-24 10:05:05 +00:00
PRESUBMIT.py Update libjingle license statements at top of talk files for consistency 2015-01-20 21:36:13 +00:00