- Restreamer: it supports restreaming of the video stream to reduce the load on rtsp source
The restreamer function is designed to reduce the load on the video camera and network channel
when several/many users are watching a stream.
IP video cameras typically support a limited number of simultaneous connections.
A proxy with enabled the restreamer feature will only use one connection to the video camera for all users
watching the same stream.
Note: Streams are considered different if their URLs are different.
By default, the restreamer function is enabled; to disable it, change the following parameter in the ws_rtsp.ini file:
---
enable_restreamer=false
---
- support Restreamer in tunnel client
- support h265 stream in tunnel client
- a tunnel search button and an example of configuration between a proxy and a client tunnel were added to the test page
- added a mechanism for monitoring connection loss and automatic recovery, increased stability
Connection timeout:
The proxy has the functionality of checking connections using ping messages. This makes sense since, unlike TCP,
websocket connections remain open when the physical channel is lost. If, due to Internet problems, the message
about closing the websocket by the other party was not delivered, then the websocket will remain open,
awaiting incoming messages. To close such websocket connections, the proxy functionality checks the connection status
based on ping messages.
Setting parameters for checking the proxy connection -> tunnel is located in ws_rtsp.ini:
---
[Tunnel]
ping_interval=5
pong_timeout=1000
---
Configuring parameters for checking the tunnel -> proxy connection is located in rtsp_ws_tunnel_client.ini:
---
ping_interval=5
pong_timeout=1000
---
Checking the connection status has two parameters:
ping_interval: Interval for sending ping messages in seconds. Messages will not be sent if 0 seconds is set.
pong_timeout: Timeout in milliseconds for a pong message in response to a ping message.
The timer will be disabled if set to 0 milliseconds.
Configuring proxy connection check parameters -> browser is located in ws_rtsp.ini:
---
ping_interval=5
pong_timeout=1000
---
- Added a script to simplify the test page configuration:
Linux: setup app , Win: config_app
allows to change the configuration from localhost to local IP address of PC where the proxy is deployed
version 3.2
- Fixed difficulty with installing OpenSSL
- Improved the script setting up the environment for quick launch of the proxy and player test page
- Configuration app was added to Windows installer
- Tested for x86_64 amd64 OS:
"CentOS/RHEL .rpm" : CentOS 8, CentOS 7, RHEL server 7.9
"Fedora .rpm" : Fedora Server 38
"Ubuntu/Debian .deb" : Ubuntu 22.04 server, Ubuntu 20.04 server Ubuntu 18.04 server, Debian 12, Debian 11
"Windows x64 .exe" : Windows 10, Windows Server 2019, Windows Server 2022
- Tested for ARM armv7 boards and OS:
"Armbian/Ubuntu .deb armv7" : Banana pi M2+ Cortex-A7 with Armbian 22.11.0
- Tested for ARM64 armv8 boards and OS:
"Raspberry Pi OS/Ubuntu .deb 64bit armv8" : Raspberry Pi 3B+ ARM Cortex-A53 with Ubuntu 5.15.0-1034-raspi
version 3.1
1) Proxy now supports UDP as its transport protocol for communication with client cameras and NVRs
2) H.265 support is now included in all our license options, including free license, so you don't have to pay any extra for using it
version 2.1.5
1) starting with version 2.0.0 H265 stream is now supported
2) you need special license to enable h265 stream supporting
3) H265 decoding is processing on the user PC side
4) Performance in the chrome browser with Amd Ryzen 5 3600 CPU:
H264 stream:
CPU load: 0.3%
Memory consumption: 4.5 - 5.5 MB
H265 stream:
CPU load: 6.0%
Memory consumption: 7.4 MB
FPS: 25 fps
Delay between receiving of the first frame and image rendering is around 1 second.
version 1.8.7
1) Added H264 video recording from the player to mp4 file
version 1.8.6
1) Added the multi docker license
2) Added real-time statistics
3) Fixed NALU data size
4) Fixed base content address parsing
version 1.8.5.3
1) Added license activation web API description to docs
2) Fixed error when fmtp attribute not found in SDP
3) Fixed session header parsing when the session attribute is passed with timeout attribute
4) Added activation application to downloads
5) Added docker image with websocket rtsp proxy
6) Added example of the code showing how to use player in the Angular
7) Fixed video playback delay when web page is inactive in the chrome browser
8) Fixed payload type parsing when rtpmap is not specified
9) Added warning message when payload type is not supported
10) Fixed reconnection after losing connection with RTSP source
version 1.8.4
1) Added example of the code showing how to use the player in the React
2) ws/rtsp tunnelling: implementation of ws tunnelling from remote rtsp-ws client to ws proxy
3) Fixed request "options"
4) Fixed parsing error of incorrectly used identification in sdp table
5) Added aggregation of multi-slices belonging to one frame
6) Support wss connections
version 1.8.3
1) Added control command for validating domains
2) Added "bufferDuration" property to the player and to test pages
3) Fixed playback issue on Firefox
4) Updated test pages for player
5) Supported new Activation Tool
6) Added installer for Raspbian 9.3
version 1.8.2
1) Supported ErrorHandlers in player
2) Supported bufferDuration property in player (user now can change bufferDuration length)
3) Seeking behavior was changed (now when user clicks on unbuffered part of timeline player is seeking either begin of the buffer or the end)
4) fixed bug with cleaning of the buffer
version 1.8.1
1) Updated videos.js plugin (works with video.js ^7.2.0)
2) Updated plugin for Clappr
Supported codecs:
✔ h264 ✔ h265 ✔ AAC(MP4A-LATM, mpeg4 generic)
Input: RTSP stream with interleaved RTP data
Output: Playback of RTP media data transcoded into ISO BMFF fragments.
There are no restrictions on resolution and stream bitrate.
Supported stream protocols:
✔RTSP✔HLS
Supported transports:
✔ Websocket (using Streamedian websocket proxy)
✔ HTTP (WebRTC in development)
Supported players:
✔ Clappr✔VideoJS✔Flowplayer
Player is written in ECMAScript2015 and can be easily traspiled into ECMAScript5.
Browser support:
✔ Firefox v.42+✔ Chrome v.23+✔ OSX Safari v.8+
✔ MS Edge v.13+✔ Opera v.15+✔ IE Mobile v.11+
✔ Android browser v.5.0+