https://github.com/shavit/elixir-rtmp
RTMP implementation
https://github.com/shavit/elixir-rtmp
amf0 amf3 elixir media-server rtmp rtmp-server
Last synced: 6 months ago
JSON representation
RTMP implementation
- Host: GitHub
- URL: https://github.com/shavit/elixir-rtmp
- Owner: shavit
- Created: 2016-10-14T21:25:25.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2025-03-09T19:43:35.000Z (7 months ago)
- Last Synced: 2025-03-31T11:06:29.810Z (6 months ago)
- Topics: amf0, amf3, elixir, media-server, rtmp, rtmp-server
- Language: Elixir
- Homepage: https://github.com/shavit/Webcam-Studio
- Size: 11.8 MB
- Stars: 87
- Watchers: 6
- Forks: 12
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# RTMP
[](https://travis-ci.org/shavit/elixir-rtmp)
> Streaming client and server
At the moment there are no build-in media encoders, so you will need to
implement your own.Create a client
```
iex(1)> {:ok, pid} = ExRTMP.Client.new ip: "127.0.0.1"
iex(2)>
[debug] Handshake completed
```## AMF Encoders and Decoders
Encode and decode AMF0, AMF3 messages.
```
iex> AMF0.encode 3.141
<<0, 64, 9, 32, 196, 155, 165, 227, 84>>
``````
iex(5)> AMF3.encode [1, 2, 3]
<<14, 7, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 3>>
```### Configurations
* `rtmp_port` - Environment variable `RTMP_PORT`, default to 1935.
## Development
Debug the server with `rtmpdump`
## Test
```
mix test
```