An example app for live streaming from an Android device using the Mux live streaming service, written in Java and C++
This repo includes two main components:
- A sample application, located under
/app, which includes a simple UI to configure and stream your live stream.
- A lower-level moduled, under
/libcamera, providing all of the live capture and live streaming functionality.
libcamera module supports the following features:
- Integration with Android's Camera 2 API
- Landscape and portrait video capture
- Application pause and resume
- Force screen to stay on while capture is active
- Configuration of video and audio encoding settigns
- Minimum Android API level 9
libcamera module is built on, and encapsulates, the following third-party libraries:
- SimpleRtmp - Client-side RTMP library for Java - com.github.faucamp.simplertmp
- Yet Another Stream Encoder for Android - com.net.ossrs.yasea
- Color space conversion: libyuv
Clone this repo locally, and then load the application from the root directory in Android Studio 3.0+.
Run the application. There will be buttons at the bottom of the screen to start/stop live capture.
appcontains the demo application
libcamerais the functional module
- Mux Live Streaming Documentation
- Yasea FLC stream muxer
- libyuv Color space converter
- SimpleRTMP RTMP Streaming SDK
MuxLive are available under the MIT license, see the LICENSE file for more information.