Introduction
Nex Gen Media Server is high-quality known as a multi-motive media streaming server to supply stay and stored video to an expansion of devices. The same media server may be embedded into a cell utility to facilitate actual time video communique. Here we will use the NGMS API to facilitate building a video chat consumer for Android devices the use of the Android Software Developer Kit (SDK) and Google Android Native Developer Kit (NDK).
We will use NGMS to provide all of the community shipping RTP offerings, video frame compression and decompression. NGMS will run as a natively compiled shared object used by our Android app. We will use a Java Native Interface (JNI) bridging layer to invoke native strategies from Java software code.
Pre-requisistes
This article assumes that you have a fundamental expertise and at the least an intermediate stage of experience constructing Android apps. I will not pass over the details of putting in and Android assignment in an iDE together with Eclipse. If you’ve got formerly created Android apps, or at the least went via a few example tutorials you ought to have the ability to utilize this educational to create a actual-time video streaming consumer.
If you haven’t already finished so, you will want to download the Google Android SDK (Software Developer Kit). In this case I used Revision 15 on a Linux 32bit gadget. The java utility layer is used to create the actual Android app. The app code will interface with a JNI layer to invoke the NGMS API exercises.
You may also want to down load the Google Android NDK (Native Developer Kit). In this example I used Revision 6b on a Linux 32bit gadget. The NDK may be used for creating the local interface layer which serves because the glue among the local code and Java utility code. You have to even have a basic recognize of the C programming language.
You need to first begin by means of developing happymod apk a skeleton Android application using an IDE which includes Eclipse. In this situation, the application can be known as ngmsclient. The Java package deal call may be referred to as com.Instance.Ngmsclient and could target Android OS 2.Three or higher. The root undertaking listing ought to comprise a folder called “jni” to be able to incorporate the local sources used to interface with the Java software code. The instance under assumes that you have a skeleton Android app operating and will show you how to combine an ExampleChat class into your Android venture.
The Native Layer
The NGMS middle embedded library is written in C and is packaged as a shared object record. Since the Android OS is based on Linux, the NGMS core library will run natively within your Android utility space. You will need to achieve the NGMS middle library for Android OS from the ngmsvid.Com internet site. The crucial components are the library files libngms.So, libxcode.So, and the header report ngmslib.H. The ngms bundled.So files will be packaged along side your ngmsclient.Apk to offer video chat offerings.
The JNI Layer
We will build a shared library referred to as ngmsglue.So on the way to function the glue between the ngms API and our Java software code. The shape of the Java Native Interface (JNI) listing within your ngmsclient project directory need to look like this.