Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/libnice/libnice

An implementation of the IETF’s Interactive Connectivity Establishment (ICE) standard — this is an official read-only mirror of the upstream repository at https://gitlab.freedesktop.org/libnice/libnice/. File issues there and create pull requests there too instead of here.
https://github.com/libnice/libnice

Last synced: 16 days ago
JSON representation

An implementation of the IETF’s Interactive Connectivity Establishment (ICE) standard — this is an official read-only mirror of the upstream repository at https://gitlab.freedesktop.org/libnice/libnice/. File issues there and create pull requests there too instead of here.

Awesome Lists containing this project

README

        

Nice: GLib ICE library
======================

Copyright
---------

(C) 2006-2020 Collabora Ltd.
(C) 2006-2011 Nokia Corporation

License
-------

See the file COPYING

SPDX-License-Identifier: LGPL-2.1-or-later OR MPL-1.1

Requirements
------------

glib >= 2.54
pkg-config
gnutls >= 2.12.0 or OpenSSL
gupnp-igd >= 0.1.2 (optional)
gstreamer-0.10 (optional)
gstreamer-1.0 (optional)

Build instructions
------------------

libnice uses the Meson Build System: https://mesonbuild.com

To build on Linux and Mac, you only need to type the usual commands :

meson builddir
ninja -C builddir
ninja -C builddir test (or "meson test -C builddir" for more control)
sudo ninja -C builddir install

See https://mesonbuild.com/Quick-guide.html#compiling-a-meson-project
for more details and how to install the Meson build system.

Structure
---------

agent/ - ICE agent
docs/ - Design and API documentation
gst/ - Gstreamer elements
nice/ - libnice library
random/ - random number generation
socket/ - Socket abstraction layer
stun/ - STUN implementation
tests/ - Unit tests

Relevant standards
------------------

These standards are relevant to nice's current implementation.

ICE
https://tools.ietf.org/html/rfc5245 (old)
https://tools.ietf.org/html/rfc8445
STUN
https://tools.ietf.org/html/rfc3489 (old)
https://tools.ietf.org/html/rfc5389
STUN Consent Freshness RFC
https://tools.ietf.org/html/rfc7675
TURN
https://tools.ietf.org/html/rfc5766
RTP
https://tools.ietf.org/html/rfc3550
ICE-TCP RFC
https://tools.ietf.org/html/rfc6544
Trickle ICE
https://tools.ietf.org/html/draft-ietf-ice-trickle-21
XMPP Jingle ICE transport
https://www.xmpp.org/extensions/xep-0176.html

In future, nice may additionally support the following standards.

NAT-PMP
http://files.dns-sd.org/draft-cheshire-nat-pmp.txt