Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/elixir-webrtc/ex_rtp
An Elixir implementation of RTP (RFC 3550)
https://github.com/elixir-webrtc/ex_rtp
audio elixir media networking rtp streaming video webrtc
Last synced: 3 months ago
JSON representation
An Elixir implementation of RTP (RFC 3550)
- Host: GitHub
- URL: https://github.com/elixir-webrtc/ex_rtp
- Owner: elixir-webrtc
- License: apache-2.0
- Created: 2023-09-01T09:50:31.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-05-09T14:39:11.000Z (9 months ago)
- Last Synced: 2024-08-10T11:35:12.338Z (6 months ago)
- Topics: audio, elixir, media, networking, rtp, streaming, video, webrtc
- Language: Elixir
- Homepage:
- Size: 69.3 KB
- Stars: 8
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ExRTP
[![Hex.pm](https://img.shields.io/hexpm/v/ex_rtp.svg)](https://hex.pm/packages/ex_rtp)
[![API Docs](https://img.shields.io/badge/api-docs-yellow.svg?style=flat)](https://hexdocs.pm/ex_rtp)
[![CI](https://img.shields.io/github/actions/workflow/status/elixir-webrtc/ex_rtp/ci.yml?logo=github&label=CI)](https://github.com/elixir-webrtc/ex_rtp/actions/workflows/ci.yml)
[![codecov](https://codecov.io/gh/elixir-webrtc/ex_rtp/graph/badge.svg?token=E98NHC8B00)](https://codecov.io/gh/elixir-webrtc/ex_rtp)Implementation of the RTP protocol in Elixir.
Implements:
- [RTP: A Transport Protocol for Real-Time Applications](https://datatracker.ietf.org/doc/html/rfc3550)
- [A General Mechanism for RTP Header Extensions](https://datatracker.ietf.org/doc/html/rfc8285)Includes out-of-the-box support for these RTP header extensions:
- [A Real-time Transport Protocol (RTP) Header Extension for Client-to-Mixer Audio Level Indication](https://datatracker.ietf.org/doc/html/rfc6464)
- [RTP Header Extension for the RTP Control Protocol (RTCP) Source Description Items](https://datatracker.ietf.org/doc/html/rfc7941)
- [RTP Extensions for Transport-wide Congestion Control](https://datatracker.ietf.org/doc/html/draft-holmer-rmcat-transport-wide-cc-extensions-01)New RTP header extensions can be added by implementing the `ExRTP.Packet.Extension` behaviour.
See [documentation](https://hexdocs.pm/ex_rtp/ExRTP.Packet.html) for usage examples.
## Installation
Add `ex_rtp` to dependencies in `mix.exs`:
```elixir
def deps do
[
{:ex_rtp, "~> 0.4.0"}
]
end
```