webrtc/examples/androidapp
Anders Carlsson dc1b9f179a Injectable software codecs for Android.
This is similar to https://webrtc-review.googlesource.com/c/src/+/3620
for iOS.

Using the new WebRtcMediaEngineFactory::Create API, the built-in
software video codecs are no longer appended to the injected codecs.

To be able to use the software codecs, they are exposed as Java
classes through SoftwareVideoEncoderFactory etc.

There is also a new DefaultVideoEncoderFactory used by AppRTCMobile.
This factory tries to use hardware implementations where available,
but falls back to using the injected software codecs.

The HardwareVideoEncoderFactory is temporarily also falling back on
the software codecs in its default configuration in order to
maintain backwards compatibility.

Bug: webrtc:7925
Change-Id: I3e8c5ed492ccd160aca968986ad217d7978a951c
Reviewed-on: https://webrtc-review.googlesource.com/17480
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Anders Carlsson <andersc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20647}
2017-11-13 11:59:28 +00:00
..
res Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00
src/org/appspot/apprtc Injectable software codecs for Android. 2017-11-13 11:59:28 +00:00
third_party/autobanh Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00
AndroidManifest.xml Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00
ant.properties Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00
build.xml Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00
OWNERS Add phoglund@ to various OWNERS and remove kjellander@ 2017-10-19 09:21:12 +00:00
project.properties Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00
README Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00
start_loopback_stubbed_camera_saved_video_out.py Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00

This directory contains an example Android client for https://appr.tc

Prerequisites:
- "Getting the code", "Compiling", and "Using the Bundled Android SDK/NDK"
  on http://www.webrtc.org/native-code/android

Example of building & using the app:

cd <path/to/webrtc>/src
ninja -C out/Default AppRTCMobile
adb install -r out/Default/apks/AppRTCMobile.apk

In desktop chrome, navigate to https://appr.tc and note the r=<NNN> room
this redirects to or navigate directly to https://appr.tc/r/<NNN> with
your own room number. Launch AppRTC on the device and add same <NNN> into the room name list.

You can also run application from a command line to connect to the first room in a list:
adb shell am start -n org.appspot.apprtc/.ConnectActivity -a android.intent.action.VIEW
This should result in the app launching on Android and connecting to the 3-dot-apprtc
page displayed in the desktop browser.
To run loopback test execute following command:
adb shell am start -n org.appspot.apprtc/.ConnectActivity -a android.intent.action.VIEW --ez "org.appspot.apprtc.LOOPBACK" true