Skip to content
A mjpeg viewer for info-beamer hosted
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Display up to 16 MJPEG streams


This package can be used to display MJPEG streams generated by a lot of IP-connected cameras like those from Axis.

You can add multiple camera urls to show multiple cameras at once. Right now the limit is 16 cameras. Cameras are always aligned in a 2x2, 3x3 or 4x4 grid.

If you use four or more cameras, it's recommended to limit the capture size as well as the framerate to reasonable values so all camera images can be realistically updated fast enough by the Pi. For Axis cameras you can use urls like the following to control framerate and resolution:


You can specify an HTTP username/password per camera if your camera is password protected. Both BasicAuth and DigestAuth authentication schemes are supported.

Each camera can have a name that is visible in the bottom left corner of each image.

Usually the text in the corner should show Live. This means that the image shown is up-to-date. If the streaming process couldn't update the image for a few seconds, the text instead reads Last updated ..s ago. info-beamer will automatically try to reconnect to cameras after a few seconds.


An info-beamer device usually doesn't store the retrieved images, although retrieved images are temporarily stored in the filesystem. The info-beamer operating system is configured so it doesn't immediately persist written data and images are constantly overwritten by newer versions. This usually means that images are not persisted at all and only kept in the filesystem cache. In a future update, a RAM disk might be used to completely avoid storing the images at all.

The captured images are visible on the device detail page in the live view. This captured screen output isn't stored by info-beamer hosted.


info-beamer hosted has a powerful API. It allows you to automate almost every action on our platform. Here's how you can use this feature to automate this package.

Switching to different camera

If you have cameras you want to switch to during the night, you can automate this. The easiest way is to create two different setups: One configured for all the day-time cameras and another one for the night-time camera. With just using the web dashboard you can then easily switch between them by assigning them to a device. With the API you can of course automated this.

Let's say your setups have the IDs 12345 and 23456 and you want to switch between those on a device with ID 4567. Here is a curl based command line you can use:

# Switch device 4567 to setup 12345
curl -u:$API_KEY -d setup_id=12345

# Switch device 4567 to setup 23456
curl -u:$API_KEY -d setup_id=23456
You can’t perform that action at this time.