libre
Libre is a portable and generic library for real-time communications with async IO support and a complete SIP stack with support for SDP, RTP/RTCP, STUN/TURN/ICE, BFCP and DNS Client.
Features
SIP Stack (RFC 3261)
SDP
RTP and RTCP
SRTP
DNS-Client
STUN/TURN/ICE
BFCP
HTTP-stack with client/server
Websockets
Jitter-buffer
Async I/O (poll, epoll, select)
UDP/TCP/TLS/DTLS transport
Latest and previous releases of libre can be downloaded here.
Git
The development of libre is happening at
Github
$ git clone https://github.com/creytiv/re.git
Building and installation
To build libre we are using GNU Make. External dependencies are automatically detected by the makefile.
$ cd re
$ make
$ sudo make install
Examples and Demonstration
A separate redemo package is available in download directory.
Here you will find examples on how to use the libre toolkit, including demonstations on
how to create a basic UDP and TCP server with less than 100 and 200 lines of C-code
respectively. Additionally you will find a basic SIP user-agent example.
All the demo programs are built by simply typing make from the redemo directory.
Design Goals
Portable POSIX source code (ANSI C89 and ISO C99 standard)
Intelligent and user friendly APIs
Robust, fast, low memory footprint
RFC compliance
IPv4 and IPv6 support
Documentation
Doxygen API documentation can be found here.
Applications using libre
restund
baresip