Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
blocks:live-video [2018-07-09 14:16] admin |
blocks:live-video [2025-07-17 09:33] (current) fredrik [Local Video In] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Using Live Video in Blocks ====== | ====== Using Live Video in Blocks ====== | ||
- | |||
- | Blocks 2.1 adds a a Live Video block type, which can be used along with compatible players to integrate live video. | ||
To use live video: | To use live video: | ||
- | - Create a root block based on, e.g., a Composition. | + | - Create a Live Video root block, |
- | - Add a Live Video child block. | + | - Add Live Video as a child block to a Composition or other suitable type. |
- | - Chose the desired stream type. | + | - Chose the desired stream type and other settings. |
- | - Specify the URL to the camera/ | + | - Specify the URL to the camera/ |
===== Live Video Formats ===== | ===== Live Video Formats ===== | ||
Line 14: | Line 12: | ||
The following formats are supported: | The following formats are supported: | ||
+ | - RTSP stream. Compatible with most players. Supports audio. Low delay. Supported by most video cameras and streaming boxes. | ||
+ | - RTMP stream. Compatible with most players. Supports audio. Supported by most streaming programs and many streaming devices. | ||
+ | - Local Video In. Compatible with Pixilab player v4.0. Supports audio. Very low latency. Suitable for live camera feeds. | ||
- HLS stream: Compatible with most players. Supports audio. Delay is several seconds. Supported by some streaming boxes and services. | - HLS stream: Compatible with most players. Supports audio. Delay is several seconds. Supported by some streaming boxes and services. | ||
- MJPEG stream. Compatible with most players. No audio. Low delay. Supported by many video cameras. | - MJPEG stream. Compatible with most players. No audio. Low delay. Supported by many video cameras. | ||
- JPEG polling. Compatible with all players. No audio. Low delay. Supported by some video cameras. | - JPEG polling. Compatible with all players. No audio. Low delay. Supported by some video cameras. | ||
- | - RTSP stream. Compatible with few players. Supports audio. Moderate delay. Supported by most video cameras and streaming boxes. | ||
As you can see, there are pros and cons with the various formats, and it is sometimes not straightforward to find the ideal combination for a given source device and player combination. | As you can see, there are pros and cons with the various formats, and it is sometimes not straightforward to find the ideal combination for a given source device and player combination. | ||
+ | |||
+ | |||
+ | ==== RTSP Stream ==== | ||
+ | |||
+ | This format is supported by most cameras and streaming boxes, and (since Blocks 4) by PIXILAB Player and most browsers. The Kiloview KV-E2 works well for converting HDMI inputs to RTSP. | ||
+ | |||
+ | https:// | ||
+ | |||
+ | A similar box from the same manufacturer accepts SDI instead of HDMI. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | To minimize latency, chose a small custom GOP size (for example 5 frames), or a single frame only (only I-frames). When choosing a smaller GOP structure, the bitrate may need to be increased to maintain video quality. However, keep in mind that a higher bitrate puts more load onto the Blocks server, as it re-packages and distributes the stream, as well as on the network for distributing it. This is especially true when using numerous players simultaneously. | ||
+ | |||
+ | ==== RTMP Stream ==== | ||
+ | |||
+ | RTMP, while similar in some ways to RTSP, works with other types of devices and programs such as [[https:// | ||
+ | |||
+ | One notable caveat with RTMP, that makes it different from the other streaming formats supported by Blocks is the way the connection is made between the RTMP source and Blocks. RTMP expects the external device to make the connection to Blocks, and " | ||
+ | |||
+ | This difference means that some streaming sources may have trouble connecting to Blocks unless Blocks is already expecting the stream, as Blocks won't " | ||
+ | |||
+ | Thus, to use a streaming source that expects the server to listen before it will try to connect, do one of the following: | ||
+ | |||
+ | * Wait with starting the streaming source until you know there' | ||
+ | * Keep an extra " | ||
+ | |||
+ | The second of these options essentially makes sure that Blocks is always actively listening for the stream, even if no other spot is yet showing it. | ||
+ | |||
+ | Finally, due to the direction the stream is flowing in, you need to set up the stream URL at the streaming //source//, pointing it to the Blocks server using its address. Thus, if Blocks runs on 10.2.0.10, your would use a stream URL like this on the streaming source: | ||
+ | |||
+ | < | ||
+ | rtmp:// | ||
+ | </ | ||
+ | |||
+ | In Blocks, you can typically leave this set to the default URL, which means that the Blocks server will listen for this stream on all its network interfaces (if it has more than one). The default URL is | ||
+ | |||
+ | < | ||
+ | |||
+ | To use multiple RTMP streams at the same time, add a port number after the IP address, separated by a colon. The default port number used by RTMP is 1935. | ||
+ | |||
+ | ==== Local Video In ==== | ||
+ | |||
+ | Blocks 4 and later supports local video, captured by a [[https:// | ||
+ | |||
+ | Web browser have restrictions for accessing a local video camera/ | ||
+ | |||
+ | The following adapters hage been used successfully. | ||
+ | |||
+ | * Epiphan AV.io 4K HDMI to USB 3 | ||
+ | * Magwell USB Capture HDMI 3 | ||
+ | * Inogeni 4K HDMI to USB 3 | ||
==== HLS Stream ==== | ==== HLS Stream ==== | ||
- | HLS is generally a good format as far as players are concerned, with good quality | + | HLS is generally a good format as far as players are concerned, with good quality, scalability and audio. In some applications, |
The [[https:// | The [[https:// | ||
Line 43: | Line 95: | ||
{{ : | {{ : | ||
- | |||
- | ==== RTSP Stream ==== | ||
- | |||
- | This format is supported by most cameras. Depending on the encoding, delay may be short to moderate (seconds). Player support, however, is very limited. As of this writing, only the Brightsign range of players support this format natively (verified with a Brightsign XD2 player with firmware version 6.2.147). | ||
- | |||
- | {{ : | ||
===== HLS Streaming Options ===== | ===== HLS Streaming Options ===== | ||
Line 73: | Line 119: | ||
- | ==== Online Streaming Services | + | ==== Sample Streams ==== |
- | For streams sourced from (or available | + | There are numerous live feed sources |
- | | + | |
- | - [[https://bitmovin.com|Bitmovin]]. | + | |
- | - [[https://www.videoexpertsgroup.com|Streamland]]. | + | |
+ | * **Polling JPEG** public webcam http://62.108.201.7/ | ||
+ | (Please note this is 3rd party links and may well come and go or even being removed permanently) | ||
+ | |||
+ | Some public cameras using the " | ||
+ | ==== Online Streaming Services ==== | ||
+ | |||
+ | For streams sourced from (or available to) the Internet, there are a number of online streaming services that can provide stream distribution and conversion into a wide variety of formats. Here are some examples: | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
==== Software-based Stream Conversion ==== | ==== Software-based Stream Conversion ==== | ||
- | In some cases, the viewo you want to show is already on the network, but in a format that can't be firectly | + | In some cases, the stream |
If you want to learn more about video streaming in general [[https:// | If you want to learn more about video streaming in general [[https:// |