6 stable releases
new 1.0.6 | Jan 29, 2025 |
---|---|
1.0.4 | Jan 28, 2025 |
1.0.2 | Jan 27, 2025 |
#610 in Command line utilities
96 downloads per month
18KB
402 lines
HLS VOD to MPEG-TS UDP Multicast Stream
This Rust-based client reads from an HLS M3U8 playlist and rebroadcasts it as MPEG-TS over UDP. It is based off the HLS produced by https://github.com/groovybits/mpegts_to_s3.git and is intended to be used as a relay for replaying that content.
Features
- Read from HLS M3U8 playlists
- Rebroadcast as MPEG-TS over UDP
Requirements
- Rust (latest stable version)
- Cargo (Rust package manager)
Installation
- Build the project:
cargo build --release
Container Deployment
- Build the container image:
# The Dockerfile.rebroadcast and docker-compose.yaml are in the mpegts_to_s3 directory ../ below this one cd ../ podman-compose up --build
Usage outside of a container
-
Run the client with the M3U8 URL and UDP address:
./target/release/hls-to-udp -u <M3U8_URL> -o <UDP_ADDRESS>
Example:
./target/release/hls-to-udp -u http://example.com/playlist.m3u8 -o 239.0.0.1:1234 -p 100
Author: wizard@groovy.org Date: January 27, 2025
Dependencies
~6–19MB
~252K SLoC