Skip to content

Android audio call client: libjingle signalling, webrtc audio processing and codecs packaged in apklib, and android demo app.

License

Notifications You must be signed in to change notification settings

gotomypc/webrtc-jingle-client

 
 

Repository files navigation

webrtc-jingle for android

(libjingle signaling + webrtc voice engine)

About:

  • Working example app of libjingle and webrtc voice backend, with a few buttons.
  • Our demo apk with support for arm/armv7 comes to 6.4 mb, approx a third when zipped in an apk. Without compiler optimizations it's a bit less.
  • Based on libjingle trunk and webrtc trunk updated on regular intervals.
  • Stability improvements needed for the c layer and misc. pieces that were needed for Android support.
  • Calling between two of these clients may require your own stun server. There is a working stun server included with libjingle, and you have to modify source where google explicitly defines stun.l.google.com. If one client is web based gmail for example, just for testing, I haven't seen any problems.

Prereqs:

  • android NDK r8. r8b was tested and it doesn't work. Just modify the download link to get r8
  • Android SDK
  • eclipse
  • Maven v3.0.3+
  • Add the following to your environment, i.e. .bashrc or .bash_profile
#Android
export ANDROID_SDK_ROOT=/path/to/sdk/
export ANDROID_NDK_ROOT=/path/to/ndk/
export PATH=$PATH:$ANDROID_NDK_ROOT:$ANDROID_SDK_ROOT:$ANDROID_SDK_ROOT/platform-tools

#mvn variables
export ANDROID_HOME=$ANDROID_SDK_ROOT
export ANDROID_NDK_HOME=$ANDROID_NDK_ROOT

Get started with the code:

# mkdir webrtcjingleproject
# cd webrtcjingleproject
# gclient config https://github.com/lukeweber/webrtc-jingle-client.git --name trunk
# gclient sync

# cd trunk
# export CHROME_SRC=`pwd`
# source build/android/envsetup.sh
# gclient runhooks
  • Set your username, pass and connection setttings in voice-client-example/src/main/java/com/tuenti/voice/example/ui/VoiceClientActivity.java.
  • Build the core(c++ code): cd trunk/voice-client-core && ./build.sh
  • Build the apks: cd trunk && mvn install
  • To run a debugger: build/android/gdb_apk -p com.tuenti.voice.example -l voice-client-core/obj/local/armeabi-v7a/
  • Build, deploy to phone, and start debugger in one script: badit.sh

Todo/Issues:

  • See Tickets

About

Android audio call client: libjingle signalling, webrtc audio processing and codecs packaged in apklib, and android demo app.

Resources

License

Stars

Watchers

Forks

Packages

No packages published