实时通讯库 libre/librem/restund/baresip

时间:2021-03-24 22:56:17

http://www.creytiv.com/

源码下载

libre

Toolkit library for asynchronous network IO with protocol stacks including SIP, SDP, RTP, STUN, TURN, ICE, BFCP and DNS.

librem

Toolkit library for real-time audio and video processing

restund

Modular STUN/TURN server.

这是一个STUN/TURN服务器。STUN是一种NAT穿透技术,用于帮助处在内网的主机确定自己的公网IP和端口,从而与别的主机建立直接连接(WebRTC中PeerConnection)。TURN是STUN的增强版,可以在无法穿透NAT进行直连的情况下提供数据的转发。

baresip

Modular SIP Useragent.

Distros and 3rd parties using Creytiv Software

==============================================

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

Subversion

URL for public read-only subversion access: https://svn.creytiv.com/re/trunk (username: anon, password: anon)

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

Restund is a modular and flexible STUN and TURN Server, with IPv4 and IPv6 support.

Features

  • Authentication module
  • Binding module
  • MySQL module
  • Statistics module
  • Status module
  • Syslog module
  • TURN module

Download

Latest and previous releases of restund can be downloaded here.

Building and installation

To build restund core and the modules we are using GNU Make. External dependencies are automatically detected by the makefile. libre must be installed first.

To build restund with default options:

$ cd restund
$ make
$ sudo make install

A sample configuration file can be found in the etc directory of the restund package.