added README

This commit is contained in:
Muaz Ahmad 2023-10-26 14:01:14 +05:00
parent 889a07516e
commit 7d24ea4d5c

15
README.md Normal file
View file

@ -0,0 +1,15 @@
# 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)