RTSP and RTP Library


Introduction

RTP and RTSP are among the oldest streaming protocols. But they are still actively used because of such protocol features as low latency (in regard of RTP) and support of so-called publishing (in regard of RTSP) when a live media stream is pushed by a client to a server for further distribution. Many modern protocols lack this publishing feature, because already created ones work well enough covering all needs for video streaming software development.

RTSP found wide adoption in surveillance while RTP is actively used in VoIP. Even the relatively fresh WebRTC utilizes RTP as a media transport. So, there is no lack of applications for both RTSP and RTP protocols. Their wide popularity guarantees wide compatibility for new software products using them.

Publishing

VASTreaming RTSP library provides the ability to publish a live stream from almost any client device to a RTSP server. Camera, microphone, screen capture, or any other media can be used as a source for live streaming. In addition to capture itself VASTreaming provides the ability to mix multiple video and audio sources into a single output stream. See video processing and audio processing sections for detailed explanation of mixing functionality.

Our library is successfully tested against various RTSP servers. In case of any compatibility issue of the library and your server, please, be free to contact us, and we shall provide you with a quick fix adapting the library for your particular server.

Client

VASTreaming RTSP library can also work as a client to receive a stream from a RTSP server and play it on an end user’s device. The necessary UI controls are provided on all supported platforms, developers can easily integrate them in client-oriented apps. One of the big advantages of these controls is very low latency on .NET, Android and iOS, what can be crucial for such applications as surveillance, video chats or video game streaming.

Server

VASTreaming RTSP library allows creating simple RTSP server with the ability to ingest published streams as well as re-distribute streams to connected clients. In simplest cases, tiny servers of this kind can be used for two-side media communication between two devices.

A more advanced RTSP server (including additional functionality and protocols) is available in C++ and .NET. Based on the server hardware configuration, it can serve from hundreds to thousands of simultaneous connections.

Server-oriented functions can be a good base for development of new server-side applications unfolding new possibilities for video content providers.

RTP

VASTreaming RTP library is a part of RTSP library. But RTP library can work independently of the main RTSP library to receive a stream as a RTP client or send the stream as a RTP server via unicast/multicast UDP. Transport stream (TS) payload is also supported giving an opportunity to utilize a single RTP stream to send or receive multiple media streams wrapped into a single TS, without using of any signaling connection such as RTSP.

Features

VASTreaming RTSP library supports the following features:

The library provides very low latency processing on all streaming stages including publisher, client and server.

RTSPS or secure transport over SSL/TLS is supported. It allows to maintain privacy of the streamed media when necessary.

The library is pretty flexible and extendable and provides a possibility to add any new codec support upon a customer request.

In some development projects it also can be useful to have an opportunity to implement a customer specific authentication method. The RTSP server contains an authentication event to delegate authentication to a customer’s own code.

For customer needs, any video streaming custom features could be easily implemented with this library, including such serious options as the protocol extensions.

Platforms

VASTreaming RTSP library is available for Android, iOS, Windows, Linux and macOS. The library exists in the following languages/frameworks:



Don't hesitate to contact us to request a demo applications and a demo projects.

contact us

info@vastreaming.net