Products >> RTSP Server (Current version 7.1, updated March 26, 2024)

RTSP Server

Happytime RTSP server is a complete RTSP streaming server application. Supports the transmission of audio and video files in a variety of formats, supports video transfer from cameras, living screens and application windows, and audio from audio devices. Supports transmission of H265,H264,MP4,MJPEG video streams and G711,G722,G726,AAC,OPUS audio streams. These streams can be played by a standards-compliant RTSP media client. Happytime RTSP server supports RTP over TCP, RTP over UDP, supports RTP multicast(the same rtsp url sessions use the same multicast address and port), supports RTSP over HTTP/HTTPS, supports RTSP over websocket, and supports audio back-channel. Happytime RTSP server supports RTSP proxy function, which facilitates server multi-level deployment and easily meets server expansion requirements. Happytime RTSP serve is based on multi-threaded development, with less system resources and stable and reliable operation.
Happytime RTSP Server for Android

Support streaming video from camera, living screen and application windows
Support streaming audio from audio devices
Support streaming H265, H264, MP4, MJPEG video streams
Support streaming G711, G722, G726, AAC, OPUS audio streams
Support RTSP proxy function, support audio back-channel
Support RTP multicast, RTSP over HTTP/HTTPS and RTSP over websocket
Support ONVIF audio/video playback function

Key features

Support for a variety of audio and video files, image files
Support streaming video from camera and living screen
Support streaming video from application windows
Support streaming audio from audio devices
Support recording system audio on Windows
Support streaming H265, H264, MP4, MJPEG video streams
Support streaming G711, G722, G726, AAC, OPUS audio streams
Support for configuring audio and video output parameters
Support media proxy, include RTSP,RTMP,SRT(Secure Reliable Transport) and HTTP MJPEG stream
Support for media proxy on-demand connections
Support audio back channel
Support RTSP over HTTP/HTTPS function
Support RTSP over websocket function
Support RTP multicast function(the same rtsp url sessions use the same multicast address and port)
Support RTSP push function
Support SHA256 digest authentication function
Supports metadata stream data forwarding
Support RTP over UDP, RTP over TCP data push
Support ONVIF audio/video playback function
With automatic transcoding
Small size for embedded development
Multi-threaded processing, less resource usage

Function chart


Data pusher

Data pusher means that RTSP server receives external data sources and then sends them out as RTSP streams.
The data pusher support TCP, UDP and RTSP mode.
Audio and video data are packaged and sent in RTP format.
If you use TCP or UDP mode data push, you need to add <pusher> tag in the rtsp server configuration file, specify the push audio and video parameters and push port, etc.
If you use RTSP mode to push data, no configuration is required. The url suffix of the pushed RTSP address can be any legal string.
If it is RTSP mode, it supports standard RTSP push stream, such as FFMPEG rtsp pusher.

FFMPEG rtsp over UDP:
ffmpeg -re -i test.mp4 -vcodec libx264 -acodec copy -preset ultrafast -f rtsp rtsp://yourip/pusher

FFMPEG rtsp over TCP:
ffmpeg -re -i test.mp4 -vcodec libx264 -acodec copy -preset ultrafast -f rtsp -rtsp_transport tcp rtsp://yourip/pusher

RTSP over HTTP

The key of RTSP over HTTP is to allow RTSP packets to communicate via HTTP port.
We know that the standard port of RTSP is 554, but due to various security policy configurations such as firewalls, there may be restrictions when the client accesses port 554, which prevents the normal transmission of RTSP packets. But the HTTP port (port 80) is generally open, so there is the idea of letting RTSP packets pass through port 80, namely RTSP over HTTP

RTSP over Websocket

First establish an HTTP connection, and then upgrade to the websocket protocol,RTSP over websocket protocol upgrade process:

C-->S:
GET /websocket HTTP/1.1
Host: 192.168.3.27
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Key: KSO+hOFs1q5SkEnx8bvp6w==
Origin: http://192.168.3.27
Sec-WebSocket-Protocol: rtsp.onvif.org
Sec-WebSocket-Version: 13

S-->C:
HTTP/1.1 101 Switching Protocols
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Accept: G/cEt4HtsYEnP0MnSVkKRk459gM=
Sec-WebSocket-Protocol: rtsp.onvif.org
Sec-WebSocket-Version: 13

After the protocol upgrade is successful, perform standard rtsp protocol exchange, and send and receive data through websocket connection.

Support for multiple platforms

RTSP server source code is written in C/C++ language
Support Windows platform
Support Linux / UNIX platform
Support Android platform
Support iOS / MAC platform
Support embedded platforms

Helps you host an RTSP server on your computer without effort

Happytime RTSP Server's sole purpose is to help you host a server on your computer that allows you to broadcast various multimedia streams. Running the executable automatically starts the server and provides you with brief instructions on how to play a stream from an external location.
This application features support for various audio and video documents, camera device, live screen and audio device. Therefore, you are provided with multiple possibilities regarding file compatibility. However, the files you want to access via streaming need to be in the same directory as the server executable.

Version limitation

The demo version supports up to 4 concurrent streams.
The release version supports up to 100 concurrent streams