git-bruh / invidious-viewer

Python application to watch YouTube videos through the Invidious API, in the terminal!

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

invidious-viewer

Installation

pip install --user invidious-viewer

For installing the git version:

pip install --user -U git+https://github.com/git-bruh/invidious-viewer.git

Add ~/.local/bin to PATH by adding the following to your ~/.bashrc file:

PATH=$PATH:$HOME/.local/bin

This will allow invidious-viewer to be launched by using the invidious-viewer command in the terminal.

Known issues

  • Output gets messed up if video titles have emojis or other characters in them.

Usage

Note: The MPV player is required, along with libmpv.so which should be provided by your Linux distribution. Compiling MPV with LuaJIT support may also be required on source-based distributions.

Default behaviour: Return the first page of results for the entered search term.

Additional usage options:

usage: invidious_viewer.py [-h] [-i INSTANCE] [-r RESULTS] [-v] [-c CHANNEL | -p | -t]

optional arguments:
  -h, --help            show this help message and exit
  -i INSTANCE, --instance INSTANCE
                        Specify a different invidious instance
  -r RESULTS, --results RESULTS
                        Return specific number of results
  -v, --video           Toggle video playback
  -c CHANNEL, --channel CHANNEL
                        View videos from a specific channel
  -p, --popular         View popular videos (Default invidious page)
  -t, --trending        View trending videos

Config File:

{
    "instance": "https://invidious.snopyta.org",
    "play_video": true,
    "captions": false
}

The instance can be permanently specified in the config file, along with the video playback and closed captions preference.

The suggested alternative instance is https://invidious.site/ as all the required API endpoints are provided.

Usage example: invidious --channel "Channel Name" --instance https://invidious.snopyta.org --results 5

Returns the first 5 results from the specified channel and fetches all URLs from the Snopyta instance.

Screenshots

Screenshot Screenshot

About

Python application to watch YouTube videos through the Invidious API, in the terminal!

License:GNU General Public License v3.0


Languages

Language:Python 100.0%