Stream MJPG Video (µStreamer)

µStreamer is a lightweight and very quick server to broadcast MJPG video from any V4L2 device to the net.

µStreamer is very similar to mjpg-streamer with input_uvc.so and output_http.so plugins, however, there are some major differences. TL;DR

All new browsers have native support of this video format, as well as most video players such as mplayer, VLC etc. µStreamer is a part of the Pi-KVM project designed to stream VGA and HDMI screencast hardware data with the highest resolution and FPS possible.

If you’re going to live-stream from your backyard webcam and need to control it, use mjpg-streamer. If you need a high-quality image with high FPS - µStreamer for the win.

./ustreamer --device=/dev/video0 --host=0.0.0.0 --port=8080 --encoder=omx --workers=3

As SystemD service

[Unit]
Description=ustreamer video (running in port 8080)
 
[Service]
Type=simple
ExecStart=/home/pi/app-src/ustreamer/ustreamer --device=/dev/video0 --host=0.0.0.0 --port=8080 --encoder=omx --workers=3
Restart=always

[Install]
WantedBy=multi-user.target

see also:

Written on July 23, 2020, Last update on November 24, 2023
video streaming raspberry-pi systemd