Webcams
In this tab you can connect mainsail with different webcam streamers. Some of the webcam clients are provided by Crowsnest (Webcam streamer wrapper from the Mainsail-Crew).
Last updated
In this tab you can connect mainsail with different webcam streamers. Some of the webcam clients are provided by Crowsnest (Webcam streamer wrapper from the Mainsail-Crew).
Last updated
Go to the settings and select the Webcam category. In this view, you can add new webcams, or edit and remove existing ones.
While adding or editing a webcam, you will see the following screen.
On the right side, you can check the settings in a preview.
At first, you have to give the camera a name, and you can assign an icon to it.
You also need to specify stream and snapshot URL. For network cameras, please consult the manufacturer's manual or search the Internet.
Note: In MainsailOS, by default, four webcam ports are mapped to URLs. Notice that the first URL doesn't contain a number. Check which port you have configured in your streamer and add the URLs.
Port | Stream URL | Snapshot URL |
---|---|---|
8080 | /webcam/?action=stream | /webcam/?action=snapshot |
8081 | /webcam2/?action=stream | /webcam2/?action=snapshot |
8082 | /webcam3/?action=stream | /webcam3/?action=snapshot |
8083 | /webcam4/?action=stream | /webcam4/?action=snapshot |
You also need to select a streaming mode. Below are descriptions of the different modes, so you can decide. Try out what works best for you.
Mode | Description |
---|---|
MJPEG-Streamer | The streamer mode extracts individual frames from the stream URL and streams them. This is to prevent the buildup of delay in case of insufficient bandwidth. IMPORTANT: This mode does currently not work on iOS devices for technical reasons. |
Adaptive MJPEG-Streamer | The adaptive mode takes the snapshot URL and pulls individual images. Also, this is intended to prevent a delay. |
UV4L-MJPEG | The classic mode is the plain MJPEG stream embedded in an image tag. In this case, it can happen that after some runtime a delay steadily builds up, because frames cannot be skipped. Only a browser reload will help. |
IP-Camera | The stream URL is embedded in an HTML5 video element. We can't really provide support for this. Browser plugins may be required. |
WebRTC (camera-streamer) | This stream is very bandwidth efficient. IMPORTANT: This mode is currently only available on Raspberry devices. |
WebRTC (MediaMTX) | |
HLS Streamer | This mode is for IP webcams with RTSP support. |
Only in adaptive MJPEG mode, you also have to set the target frame rate. This is how often per second an image is requested.
In some services, you can also rotate the webcam stream.
Hide the FPS counter in the webcam image.
Flip the webcam vertically and/or horizontally. Both at the same time corresponds to a 180° rotation.
This stream is very bandwidth efficient. This mode can also be used for WYZE-Cams with the docker-WYZE-Bridge. Here you can find a tutorial: IMPORTANT: min. v0.23 of MediaMTX