Go to file
Aaro Altonen d61a6cf4dc Protect access to create_stream() with a mutex
Multiple threads may access create_stream() for the same session
simultaneously which can cause problems if the access is not protected.
2020-11-18 08:39:53 +02:00
examples Remove examples/sending_fragmented.cc 2020-10-10 03:36:35 +03:00
include Protect access to create_stream() with a mutex 2020-11-18 08:39:53 +02:00
src Protect access to create_stream() with a mutex 2020-11-18 08:39:53 +02:00
.gitignore Proctect CryptoPP calls with __RTP_CRYPTO__ 2020-09-04 11:37:06 +03:00
BUILDING.md Update build instructions 2020-10-06 08:46:43 +03:00
CMakeLists.txt Update build instructions 2020-10-06 08:46:43 +03:00
COPYING Update copyright 2020-04-21 08:46:54 +03:00
Makefile Proctect CryptoPP calls with __RTP_CRYPTO__ 2020-09-04 11:37:06 +03:00
README.md Update README 2020-11-11 08:00:45 +02:00
uvgRTP.pro Update build instructions 2020-10-06 08:46:43 +03:00

README.md

uvgRTP

uvgRTP is an RTP library written in C++ with a focus on usability and efficiency. It features a very intuitive and easy-to-use API, built-in support for HEVC, AVC, Opus, SRTP and ZRTP. In ideal conditions it is able to receive a goodput of 600 MB/s for HEVC stream.

uvgRTP is licensed under the permissive BSD 2-Clause License

For SRTP/ZRTP support, uvgRTP uses Crypto++

Supported specifications:

Based on Marko Viitanen's fRTPlib

Notable features

  • Builtin support for:
    • AVC
    • HEVC
    • Opus
    • SRTP/ZRTP
  • Generic interface for custom media types
  • UDP hole punching
  • Simple API
  • Permissive license

Building and linking

See BUILDING.md for instructions on how to build and use uvgRTP

Examples

See examples directory for different uvgRTP examples

Paper

Please cite the following paper for uvgRTP:

A. Altonen, J. Räsänen, J. Laitinen, M. Viitanen, and J. Vanne, “Open-source RTP library for high-speed 4K HEVC video streaming,” in Proc. IEEE Int. Workshop on Multimedia Signal Processing, Tampere, Finland, Sept. 2020.