sigrid/nvi

Description
# 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.
* Figure out how to play videos without storing them on disk, ie piping directly to treason.
Last 5 commits (shortlog)
Date Author Short message Commit hash
2021-07-23 Sigrid print a usage error if no options were specified b7306bef352fc0796d84a5ef0bd5a301629adfe9
2021-07-23 Sigrid fix peertube links with no streaming playlists; make error reports better 976b2c3767f139177754bdc7ef7069d535ff7325
2021-07-23 Sigrid don't crash when no video streams found d1d1267271f9f0bc6ad4a2a31ad7bc3b6125d820
2021-07-08 Sigrid leave empty files if no audio (or video) stream is available d23c026cbb1ff3faf38b518cddb128012142515b
2021-07-07 Sigrid fix youtu.be links 0a8b65bdc3e24922fb611cbc5ac0f590a11189a3
Files (browse)
LICENSE
README.md
mkfile
nvi.c
nvi.h
peertube.c
util.c
youtube.c