Real-Time Transport Protocol
NicheStack RTP/RTCP was developed specifically for embedded devices, NicheStack RTP adds streaming data services to NicheStack v4 and provides end-to-end delivery services over UDP for data with real-time characteristics, such as VoIP, interactive audio and video and streaming multi-media. Those services include payload type identification, sequence numbering, time stamping and delivery monitoring. RTP data transport is augmented with RTCP. The Real-time Transport Control Protocol monitors the quality of service and conveys information about the participants of an ongoing session.
NicheStack RTP/RTCP supports all of the required elements of RFC3350, including:
- Multiple concurrent RTP UDP unicast and multicast sessions
- Multiple send and receive streams per session
- Jitter buffer with configurable depth
- RTCP information and statistics for all session participants, including jitter delay, packets loss and timestamps
Flexible Support for Real-Time Streaming Applications
Through its extensive API, nearly every parameter discussed in the RFC is available to the application level, dramatically increasing the likelihood of an "easy port" of a real-time application to NicheStack RTP and freeing the developer to work on the more important aspects of the applications such as the RTP payload, the application profile, type code, transport mapping and the audio and video encoding.
NicheStack RTP Highlights
- Portable and efficient implementation of RFC3550
- Indicator events can notify applications of RTP events such as; codec 改变s, and 改变s in packet rate, etc.
- Clearly defined easy to use APIs for rapid integration of multi-media services like VoIP, SIP and H.323
- Reentrant and ROMable
- Support for RTP Header Extension
- Supports multiple concurrent RTP sessions
- Supports multicast, unicast, and multi-point unicast UDP sessions
- Royalty free, portable source code
- Supports mulitple send and receive streams per session
- Adaptive RTCP report interval
- Generates compound RTCP packets
- Supports jitter calculations
- Calculates RTCP bandwith
- Includes API for configuring Source描述 Items
- Provides Synchronizing Source Collision Resolution (SSRC) and loop detection
- Includes API to dynamically register RTP payload types
- No "GPL Contamination"