Files
platform-external-webrtc/webrtc/examples/android/opensl_loopback
kjellander@webrtc.org eed2fcaa76 Roll chromium_revision 00e438c..8d51d96 (320241:320682)
Relevant changes:
* src/third_party/android_tools: fd5a8ec..98a4345
Details: 00e438c..8d51d96/DEPS

This required updating our Android projects to API level 22,
as third_party/android_tools dropped support for API level 21.

Command used:
perl -pi -e "s/android-21/android-22/g" `find . -name project.properties`
Using 'android update project' would also work but that changes the
ANDROID_SDK_ROOT -> ANDROID_HOME, which the Chromium build toolchain
doesn't set properly when build/android/envsetup.sh is sourced.

Clang version was not updated in this roll.

R=henrika@webrtc.org, perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8728}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8728 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-16 09:00:41 +00:00
..

This directory contains an app for measuring the total delay from the native
OpenSL implementation. Note that it just loops audio back from mic to speakers.

Prerequisites:
- Make sure gclient is checking out tools necessary to target Android: your
  .gclient file should contain a line like:
  target_os = ['android']
  Make sure to re-run gclient sync after adding this to download the tools.
- Env vars need to be set up to target Android; easiest way to do this is to run
  (from the libjingle trunk directory):
  . ./build/android/envsetup.sh
  Note that this clobbers any previously-set $GYP_DEFINES so it must be done
  before the next item.
- Set up webrtc-related GYP variables:
  export GYP_DEFINES="$GYP_DEFINES java_home=</path/to/JDK>
                      enable_android_opensl=1"
- Finally, run "gclient runhooks" to generate Android-targeting .ninja files.

Example of building & using the app:

cd <path/to/repository>/trunk
ninja -C out/Debug OpenSlDemo
adb install -r out/Debug/OpenSlDemo-debug.apk