Low Latency Media streaming

Low latency is imperative for use cases that require mission-critical communication such as the emergency call for first responders, interactive collaboration and communication services, real-time remote object detection etc. Other use cases where low latency is essential are banking communication, financial trading communication, VR gaming etc. When low latency streaming is combined with high definition (HD) quality, the complication grows tenfold. This article discusses RTMP, RTSP, LL HLS, MPEG-DASH and, WebRTC, SRT as technologies to provide low-latency streaming. It also discusses the TradeOff of Latency vs. Quality and congestion control to avoid packet loss which is detrimental to low latency.

Media Architecture, RTP topologies

With the sudden onset of Covid-19 and building trend of working-from-home , the demand for building scalable conferncing solution and virtual meeting room has skyrocketed . Here is my advice if you are building a auto- scalable conferencing solution

Audio and Acoustic Signal Processing

Audio signals are electronic representations of sound waves—longitudinal waves which travel through air, consisting of compressions and rarefactions and Audio Signal Processing focuses on the computational methods for intentionally altering auditory signals or sounds, in order to achieve a particular goal. Application of audio Signal processing in general storagedata compressionmusic information retrievalspeech processing ( emotion recognition/sentiment … Continue reading Audio and Acoustic Signal Processing

RTCP Reports and QoE metric calculation

RTCP works alongside RTP to monitor and control media streams with QoS feedback, synchronization and session management . This writeup describes the key format and functions of this protocol RTCP (Real-Time Transport Control Protocol ) RTCP Control and ManagementGathers statistics on media connectionSR: Sender Report RTCP PacketRR: Receiver Report RTCP PacketSDES: Source Description RTCP PacketBYE: … Continue reading RTCP Reports and QoE metric calculation

RealTime Transport protocol (RTP) and supporting protocols

RTP is a protocol for delivering media stream end-to-end in real time over an IP network. Its applications include VoIP with SIP/XMPP, push to talk, WebRTC and teleconf, IOT media streaming, audio/video or simulation data, over multicast or unicast network services so on. RTSP provides stream control features to an RTP stream along with session management. RTCP, is also a companion protocol to RTP, used for feedback and inter-frame synchronization. Receiver Reports (RRs) include information about the packet loss, interarrival jitter, and a timestamp allowing computation of the round-trip time between the sender and receiver. Sender Reports( SR) include the number of packets and bytes sent, and a pair of timestamps facilitating inter-stream synchronization. SRTP provides security by end-to-end encryption while SDP provides session negotiation capabilities.

SIP conferencing and Media Bridges

SIP is the most popular signalling protocol in VOIP ecosystem. It is most suited to a caller-callee scenario , yet however supporting scalable conferences on VOIP is a market demand. It is desired that SIP must for multimedia stream but also provide conference control for building communication and collaboration apps for new and customisable solutions.

JANUS as WebRTC SFU

We know Janus is a popular small footprint gateway/media Server with support for WebRTC features like JSEP/SDP, ICE, DTLS-SRTP, DataChannels. Its plugins expose Janus API over different transports - HTTP, WS, rabbitMQ, Unix sockets, MQTT so on. Other plugins provide deeper modifications such as Video SFU, Audio MCU, SIP/RTSP gateways, broadcasting etc.

crtmpserver + ffmpeg

This post will show the process of installing , running and using crtmpserver on ubuntu 64 bit machine with gstreamer . gcc and cmake We shall build gstreamer directly from sources . For this we first need to determine if gcc is installed on the machine . If not installed then  run the following command GNU Compiler Collection … Continue reading crtmpserver + ffmpeg

GStreamer-1.8.1 rtsp server and client on ubuntu

GStreamer is a streaming media framework, based on graphs of filters which operate on media data. Gstreamer is constructed using a pipes and filter architecture. The basic structure of a stream pipeline is that you start with a stream source (camera, screengrab, file etc) and end with a stream sink (screen window, file, network etc). … Continue reading GStreamer-1.8.1 rtsp server and client on ubuntu

Wowza RTMP Authentication with Third party Token provider over Tiny Encryption Algorithm (TEA)

this article is focused on  Wowza RTMP Authentication with  Third party Token provider over Tiny Encryption Algorithm (TEA)  and  is a continuation of the previous post about setting up a basic RTMP Authentication module on Wowza Engine above version 4. The task is divided into 3 parts . RTMP Encoder Application Wowza RTMP Auth module … Continue reading Wowza RTMP Authentication with Third party Token provider over Tiny Encryption Algorithm (TEA)

Wowza RTMP Authenticate Module

To purpose of the article is the use the RTMP Authentication Module in wowza Engine .  This will enable us to intercept a connect request with username and password to be checked from any outside source like - database , password file , third party token provider , third party oauth etc.  Once the password … Continue reading Wowza RTMP Authenticate Module

WebRTC Live Stream Broadcast

1. WebRTC multi peers2. Torrent based WebRTC chain3. WebRTC Relay nodes for multiple peers4. WebRTC  recorder to Broadcasting Media Server VOD WebRTC has the potential to drive the Live Streaming broadcasting area with its powerful no plugin , no installation , open standard  policy. However the only roadblock is the VP8 codec which differs from … Continue reading WebRTC Live Stream Broadcast