twitch-hls-client
WIP CLI Twitch HLS client. Currently only supports low latency and playlist proxies. Does not implement the entirety of HLS, only what is necessary for Twitch to work.
```sh
Usage: twitch-hls-client [OPTIONS] --server
Arguments:
Twitch channel to watch, can be "twitch.tv/CHANNELNAME" or just "CHANNELNAME"
Stream quality/variant playlist to open (best, 1080p, 720p, 360p, 160p, etc.)
Options:
-s, --server
Server to fetch the master playlist from
If URL includes "[channel]" it will be replaced with the real channel at runtime
-p, --player
Path to the player that the stream will be piped to
If not specified will write stream to stdout
-a, --player-args
Arguments to pass to the player
-h, --help
Print help
-V, --version
Print version
```
Example
sh
$ twitch-hls-client -s https://eu.luminous.dev/live/[channel] -p /usr/bin/mpv -a '- --profile=low-latency --demuxer-max-bytes=700k' twitch.tv/twitchchannel best
Todo 📝
- [ ] Support TTVLOL API
- [ ] Allow setting fallback servers
- [ ] Optimize networking, currently around 1 second behind Streamlink with hls-live-edge=1
- [ ] Support SOCKS proxies
- [ ] Support fetching master playlist directly from Twitch and passing auth token
- [ ] Support modes other than low latency