RTMP Library

Introduction

RTMP is an old protocol, originally owned by Adobe and tightly bound to Flash technology from the very beginning of its existence. Even though Flash has been deprecated after dominating over the content rich web for many years, RTMP is still alive. It is due to the fact that RTMP supports so-called publishing when a live media stream is pushed by a client to a server for further distribution. Many modern protocols lack this publishing feature.

Starting from the Flash days, existing server infrastructure still uses RTMP and will be using it for a long time. YouTube, Facebook, Twitch - you name it, all of them use RTMP ingestion for live streams. If a future app is expected to provide their user with a feature of publishing video streams in social networks, it should use RTMP. Therefore, investing into a RTMP library is not a waste of money but quite the opposite. In fact, it guarantees the compatibility with most popular content distribution networks.

Publishing

VASTreaming RTMP library provides the ability to publish a live stream from almost any client device to a RTMP 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 has been successfully tested against many RTMP servers such as Wowza, Red5, Azure, and many others. In those rare cases when the library doesn’t work with your server, please, be free to contact us, and we provide you with a quick fix adapting the library for your particular server.

Client

VASTreaming RTMP library can also work as a client to receive a stream from an RTMP 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 their 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 RTMP library allows creating a simple RTMP 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 RTMP 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.

Features

VASTreaming RTMP library supports the following features:

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

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

RTMPT or RTMP via HTTP is also supported. It can used to surpass firewalls in highly restricted environments by re-routing RTMP traffic via standard HTTP/HTTPS ports.

The library gives developers an opportunity to implement a customer specific authentication method. The RTMP 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 RTMP 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