16 lines
1.2 KiB
Markdown
16 lines
1.2 KiB
Markdown
|
# hls-transcoder-2
|
||
|
|
||
|
Extremely basic hls segmenter for live video written in Rust. 1st was scrapped since I had 0 clue what I was doing at all. Singular clue has since been acquired. Would not recommend using or expanding on this for anything other than figuring out the how and what.
|
||
|
|
||
|
Currently only works with FLV input (so RTMP only), H264 and AAC codec inputs, and outputs AV1 and Opus codecs in a fragmented mp4 playlist. Decoding and encoding happens via 3rd party programs accessible on $PATH. (ffmpeg and faad for decoding, SvtEncAv1App and opusenc for encoding). Would use lib versions, but would only do so for a proper project using extern crates
|
||
|
|
||
|
Uses only uses Rust's stdlib.
|
||
|
|
||
|
**Not intended for actual use**. Will have limitations and some aspects are just not well implemented, also relies on progs being installed for encoding and decoding.
|
||
|
|
||
|
`cargo build` to a bin. Usage is `hls-transcoder-2 <hls_time> <uri_prepend> <hls_list_size>`
|
||
|
|
||
|
* `hls_time`: duration of each segment (usize only currently)
|
||
|
* `uri_prepend`: string to add to each segment and init.mp4, for http server uris
|
||
|
* `hls_list_size`: max number of segments to include in the playlist, older segments will be deleted, (usize)
|