All Projects → meinside → Rpi Mjpg Streamer

meinside / Rpi Mjpg Streamer

Instructions and helper scripts for running mjpg-streamer on Raspberry Pi

Projects that are alternatives of or similar to Rpi Mjpg Streamer

Fiscalberry
[JSON ↔ HW] Connect things using JSON API with the fiscalberry websocket server interact easily with any kind of Hardware. Another IoT solution...
Stars: ✭ 44 (-18.52%)
Mutual labels:  raspberry-pi
Rpi4 Pcie Bridge
Raspberry Pi 4 PCIe Bridge "Chip"
Stars: ✭ 49 (-9.26%)
Mutual labels:  raspberry-pi
Jarvis Ai
It is an AI assistant which will automate your task like it can send emails also it can control lights using raspberry pi it can inform about weather and many more features
Stars: ✭ 52 (-3.7%)
Mutual labels:  raspberry-pi
Package Magic Video Wall
A video wall that configures itself by just taking a picture of your screens
Stars: ✭ 47 (-12.96%)
Mutual labels:  raspberry-pi
Magicmirror
魔小镜
Stars: ✭ 46 (-14.81%)
Mutual labels:  raspberry-pi
Raspberry pi stats
A script to collect various Raspberry Pi statistics, which are sent via Telegraf to InfluxDB.
Stars: ✭ 50 (-7.41%)
Mutual labels:  raspberry-pi
Embassy Os
A graphical operating system for running self-hosted software.
Stars: ✭ 43 (-20.37%)
Mutual labels:  raspberry-pi
Raspbernetes
Raspberry Pi Kubernetes Cluster
Stars: ✭ 53 (-1.85%)
Mutual labels:  raspberry-pi
Debootstick
Generate a bootable live image from any Debian/Ubuntu filesystem tree.
Stars: ✭ 48 (-11.11%)
Mutual labels:  raspberry-pi
Rpi Battery Monitor
Monitor battery voltage from a Raspberry Pi
Stars: ✭ 51 (-5.56%)
Mutual labels:  raspberry-pi
Guides
Guides for learning + doing better web and app development. Created by Coding for Entrepreneurs.
Stars: ✭ 1,042 (+1829.63%)
Mutual labels:  raspberry-pi
Kiln Controller
Turns a Raspberry Pi into an inexpensive, web-enabled kiln controller.
Stars: ✭ 48 (-11.11%)
Mutual labels:  raspberry-pi
Onoff
GPIO access and interrupt detection with Node.js
Stars: ✭ 1,050 (+1844.44%)
Mutual labels:  raspberry-pi
Plastic Detection Model
Image Recognition Model to detect plastics, glass, paper, rubbish, metal and cardboard. This is used to detect these pollution in the ocean to allow the eradication of these materials, helping marine life, fishermen, tourism and making the world resilient to climate change.
Stars: ✭ 47 (-12.96%)
Mutual labels:  raspberry-pi
Raspberrypi tempmon
Raspberry pi CPU temperature monitor with many functions such as logging, GPIO output, graphing, email, alarm, notifications and stress testing. Python 3.
Stars: ✭ 52 (-3.7%)
Mutual labels:  raspberry-pi
Wpa Connect
wpa-connect
Stars: ✭ 43 (-20.37%)
Mutual labels:  raspberry-pi
Pi Camera In A Box
Stream your Raspberry Pi Camera Module directly to your web browser
Stars: ✭ 49 (-9.26%)
Mutual labels:  raspberry-pi
Rpi Configs
My personal config files for Raspbian on Raspberry Pi
Stars: ✭ 53 (-1.85%)
Mutual labels:  raspberry-pi
Dockerpi
A Virtualised Raspberry Pi inside a Docker image
Stars: ✭ 1,064 (+1870.37%)
Mutual labels:  raspberry-pi
Spocon
SpoCon - A Spotify Connect Client for Debian , Ubuntu and Raspberry Pi based on librespot-java
Stars: ✭ 51 (-5.56%)
Mutual labels:  raspberry-pi

rpi-mjpg-streamer

Instructions and helper scripts for running mjpg-streamer on Raspberry Pi.

A. Setup mjpg-streamer

Enable Raspberry Pi Camera module from raspi-config

$ sudo raspi-config

Install necessary packages for mjpg-streamer

$ sudo apt-get update
$ sudo apt-get install build-essential libjpeg8-dev imagemagick libv4l-dev git cmake uvcdynctrl

Build mjpg-streamer

$ sudo ln -s /usr/include/linux/videodev2.h /usr/include/linux/videodev.h
$ git clone https://github.com/jacksonliam/mjpg-streamer
$ cd mjpg-streamer/mjpg-streamer-experimental
$ cmake -DCMAKE_INSTALL_PREFIX:PATH=.. .
$ make install

Setup video4linux for Raspberry Pi Camera module

$ sudo modprobe bcm2835-v4l2
$ sudo vi /etc/modules

# add following line:
bcm2835-v4l2

$ sudo vi /boot/config.txt

# add following line if you want to disable RPi camera's LED:
disable_camera_led=1

Add yourself to the video group

$ sudo usermod -a -G video $USER

B. Run mjpg-streamer

1. Clone this repository

$ git clone https://github.com/meinside/rpi-mjpg-streamer.git

2-a. Run mjpg-streamer from the shell directly

# copy & edit run-mjpg-streamer.sh to your environment or needs
$ cp rpi-mjpg-streamer/run-mjpg-streamer.sh.sample somewhere/run-mjpg-streamer.sh
$ vi somewhere/run-mjpg-streamer.sh

# then run
$ somewhere/run-mjpg-streamer.sh

2-b. Run mjpg-streamer as a service

systemd

# copy & edit systemd/mjpg-streamer.service file,
$ sudo cp rpi-mjpg-streamer/systemd/mjpg-streamer.service.sample /lib/systemd/system/mjpg-streamer.service
$ sudo vi /lib/systemd/system/mjpg-streamer.service

# then register as a service
$ sudo systemctl enable mjpg-streamer.service

# or remove it
$ sudo systemctl disable mjpg-streamer.service

# and start/stop it
$ sudo systemctl start mjpg-streamer.service
$ sudo systemctl stop mjpg-streamer.service

3. Or run with docker

With docker, you don't have to build mjpg-streamer manually.

(A) With docker

Build with essential build arguments, (see the argument names and sample values in .env file)

$ docker build -t streamer:latest \
		--build-arg PORT=9999 \
		--build-arg RESOLUTION=400x300 \
		--build-arg FPS=24 \
		--build-arg ANGLE=0 \
		--build-arg FLIPPED=false \
		--build-arg MIRRORED=false \
		--build-arg USERNAME=user \
		--build-arg PASSWORD=some-password \
		.

then run with:

$ docker run -p 9999:9999 --device /dev/video0 -it streamer:latest

(B) With docker-compose

Build with optional build arguments, (see the argument names and default values in .env file)

# build with the default values
$ docker-compose build

# or with custom values
$ docker-compose build --build-arg PORT=9999 --build-arg USERNAME=user PASSWORD=some-password

then run with:

$ docker-compose up -d

If you set custom port number, you should run with that value:

$ PORT=9999 docker-compose up -d

C. Connect

Connect through the web browser:

Connected

Most modern browsers(including mobile browsers like Safari and Chrome) will show the live stream immediately.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].