Skip to content

nairbspace/ipcam-view

 
 

Repository files navigation

ipcam-view ipcam-view

Android Arsenal Download

Android MJPEG video streaming made simple!

A wrapper library around the well known SimpleMjpegView and android-camera-axis projects.

If you have problem to identify your IpCam url, please follow this link

Demo app

main

default

settings

Get it on Google Play

Usage

Add to your layout: example

<RelativeLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  // ADD THIS
  xmlns:stream="http://schemas.android.com/apk/res-auto"
  ...>

    <com.github.niqdev.mjpeg.MjpegSurfaceView
      android:id="@+id/VIEW_NAME"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      stream:type="stream_default OR stream_native" />

</RelativeLayout>

Read stream in your activity/fragment: example

int TIMEOUT = 5; //seconds

Mjpeg.newInstance()
  .credential("USERNAME", "PASSWORD")
  .open("IPCAM_URL.mjpg", TIMEOUT)
  .subscribe(inputStream -> {
      mjpegView.setSource(inputStream);
      mjpegView.setDisplayMode(DisplayMode.BEST_FIT);
      mjpegView.showFps(true);
  });

Gradle dependency

repositories {
    jcenter()
}
dependencies {
    compile 'com.github.niqdev:mjpeg-view:0.3.1'
}

Development

Download Android NDK:

  • manually
  • in Android Studio: File > Other Settings > Default Project Structure > download NDK

Compile manually (verify your paths)

$ chmod a+x compileJni.sh
$ ./compileJni.sh

Features

  • Default support by android-camera-axis
  • Native support by SimpleMjpegView
  • Handle credential

About

MJPEG video streaming on Android

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 75.2%
  • Shell 15.2%
  • Makefile 2.8%
  • Java 2.6%
  • Roff 1.6%
  • SAS 0.6%
  • Other 2.0%