How to install GoCoder SDK for Android

Follow these instructions to start building apps with the Wowza GoCoder™ SDK in an Android Studio development environment.

Note: Developing apps with the Wowza GoCoder SDK for Android requires Android 5.0 (API level 21) or later for broadcasting and Android 6.0 (API level 23) or later for playback. Android Studio 1.2.0 or later is also required.


Download and install the tools
Configure an Android Studio project to use the GoCoder SDK
Practice with the SDK sample app
More resources

Download and install the tools

  1. Download and install the current Android Studio.

Note: Running and debugging GoCoder SDK apps using a device emulator isn't recommended due to the wide variance in functionality between the software-based audio and video codecs used by the emulator and the hardware-based codecs installed on most devices.

  1. Download the current release of Wowza GoCoder SDK for Android.
  2. Expand the downloaded .zip file, which contains the following files and folders:

The Android archive file that contains the GoCoder SDK library.


The SDK API reference documentation in HTML format. Open index.html in this folder to view the documentation locally.


Sample code that demonstrates integration between Wowza Streaming Engine™ media server software and the SDK.

A markdown file that contains these release notes.


A sample application that can be imported into Android Studio that demonstrates many of the SDK's capabilities.

Configure an Android Studio project to use the Wowza GoCoder SDK

To develop Android apps with the GoCoder SDK, you must configure an Android Studio project to recognize the GoCoder SDK library and add the appropriate permissions to the app's manifest file.

  1. In Android Studio, create a project. See Create an app project.
  2. In the file system, copy com.wowza.gocoder.sdk.aar from the expanded .zip file to the project's libs folder. By default, the libs folder is located at [project_root]/app/libs.
  3. In Android Studio, open build.gradle (Module:app), which you can find in the Gradle Scripts section of the tool window.
  4. In the editor window, add a dependency for the SDK library by copying the following code into the file as described:
// This enables Gradle to locate Android library dependencies in the same manner as jar-based dependencies. Add to the bottom of the file.

repositories {
    flatDir {
        dirs 'libs'

// Copy these two compile dependencies into the existing dependencies section of the file.

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])

    // The GoCoder SDK library dependency declaration

    compile ''

    // List additional dependencies here...

  1. In the tool window, navigate to app/manifests and open the AndroidManifest.xml file.
  2. Add the following permissions below the package declaration, above the application element:
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />

Practice with the SDK sample app

  1. In the file system, move the sample-app folder from the expanded .zip file to the folder that contains your Android Studio projects (by default, [username]/AndroidStudioProjects).
  2. In Android Studio, open the sample-app project.

You can build, deploy, and run the sample app in debug mode. The sample app includes the following activities:

Activity Description Use the WOWZAudioDevice.AudioSampleListener interface to display an audio level meter. Use the WOWZBitmap class to overlay a bitmap on the video stream. Use the SDK to capture and stream audio from a Bluetooth device. Use the SDK to capture and broadcast video using the device's internal cameras. Send data events to a Wowza Streaming Engine server and receive events back while streaming. Use the SDK with a device's face-detection capabilities to superimpose an image on the viewer's face. Perform all of the sample activities. Use WOWZBroadcast, WOWZBroadcastAPI, and related classes and interfaces to broadcast frames from a local MP4 file. Use the WOWZMP4Writer class to save a video stream to an MP4 file stored on the local device. Use OpenGL to render objects onscreen. Use the WOWZPlayerConfig, WOWZPlayerView, and other classes to create an app that can play a live stream, including an ultra low latency live stream from the Wowza Streaming Cloud™ service. Use the WOWZRenderAPI.VideoFrameListener interface to capture a frame from the camera preview display and save it as a bitmap. Use the WOWZText and WOWZTextManager classes to overlay text on the video stream.

More resources

If you're having problems or want to discuss this article, post in our forum.