GNU RTP Stack introduced

211

Author: JT Smith

David Sugar writes: “GNU ccRTP is a high performance threadsafe C++ RTP (Real-TimeTranspor
Protocol) stack and newly designated GNU package. GNU ccRTP is
built from and requires GNU Common C++. GNU ccRTP is a fully general
purpose RTP stack that can be used in building both client and server
applications for audio and visual conferencing over the Internet, for
streaming of realtime data, and for next generation IP based telephony
systems.

In addition to basic transport services, GNU ccRTP has support for
RTCP (RTP Control Protocol). It fully supports multicast operations and class of service routing. We would like to add support for RSVP
soon. GNU ccRTP also provides protocol abstraction thru templates
that allow other low level transport protocols to be easily
integrated, in addition to the default IPV4 UDP sockets.

GNU ccRTP is multi-source connection capable and can be used to build
all forms of standards compliant Internet real-time conferencing
systems. GNU ccRTP supports temporal packet queuing and live packet
filtering within the stack. This allows one to implement mixed mode
payload transport and to implement things like embedded telephony
signaling in bearer data (RFC 2833).

GNU ccRTP is high performance and uses packet queue lists to track
both send and receive data temporally. Unsent packets that fall
behind their time mark are removed with notification, as are
unprocessed packets in the receive queue as they become obsolete. GNU
ccRTP also supports partial packet assembly and disassembly as is
often needed for constructing video streams that often do not fit in a
single packet frame.

GNU ccRTP offers a simple mechanism for jitter buffering by
delaying between reception and consumption of arriving data as well as
providing accurate timing for streaming of outbound packets. Any
number of instances of GNU ccRTP may be created in a single process to
allow servers to be constructed. Each have a separate service thread
to optimize and isolate active sessions.

The latest information on GNU ccRTP may always be found at
http://www.gnu.org/software/ccrtp. The initial GNU release of ccRTP
is 0.6.1, and current releases of this package may be downloaded from
ftp://www.gnu.org/gnu/ccrtp or any gnu mirror worldwide.

Those interested in further developing GNU ccRTP may join the
developers mailing list by sending a subscribe request to
ccrtp-devel-request@gnu.org or by sending email to me directly,
dyfet@gnu.org. GNU ccrtp development and cvs access is hosted
thru Savannah (http://savannah.gnu.org). Those wishing to contribute
should also make use of Savannah.”