shithub: nvi

ref: 485a82a087b140233f79c0a1211686f5f9cc49f1
dir: /README.md/

View raw version
# nvi

Downloads a PeerTube video, or a Youtube video (using Invidious public
servers).

Multiple `-A` and `-V` can be used to prioritize specific stream
formats.  The values for these options can be IDs and quality, ie `18`
or `720p` (for video).

## Examples

Show available streams of a video:

	nvi -i ybGOT4d2Hs8

Download audio and video in best quality and play using
[treason](https://git.sr.ht/~ft/treason):

	nvi -a /tmp/audio -v /tmp/video ybGOT4d2Hs8 && treason -a /tmp/audio /tmp/video

Download only audio, extract OPUS from the container using
[mcfs](https://git.sr.ht/~ft/mcfs), and reencode to OGG/Vorbis:

	nvi -a /fd/1 -A 251 ybGOT4d2Hs8 | mcfs -t audio | audio/opusdec | audio/oggenc > suffer.ogg

Download and play combined audio and video (low quality):

	nvi -V 18 -v /tmp/video ybGOT4d2Hs8 && treason /tmp/video

## TODO

* Manpage.
* Select streams based on format, eg "mp4", "mp4,av01", "opus", etc.
* Download videos from Peertube as well.
* Figure out how to play videos without storing them on disk, ie piping directly to treason.