grqz / yt-dlp-invidious

Invidious extractor for yt-dlp
The Unlicense
0 stars 0 forks source link
yt-dlp yt-dlp-plugins

yt-dlp-invidious

This repository contains a plugin for yt-dlp. See yt-dlp plugins for more details.
The plugin adds native support for Invidious and allows youtube downloads to fallback to Invidious on the error 'Sign in to confirm you’re not a bot. This helps protect our community. Learn more'.
The code is based on https://github.com/ytdl-org/youtube-dl/pull/31426.

Installation

Requires yt-dlp 2023.01.02 or above.

pip/pipx

If yt-dlp is installed through pip or pipx, you can install the plugin with the following:

pipx inject yt-dlp yt-dlp-invidious

or

python3 -m pip install -U yt-dlp-invidious

Manual install

  1. Download the latest release zip from releases

  2. Add the zip to one of the yt-dlp plugin locations

    • User Plugins

      • ${XDG_CONFIG_HOME}/yt-dlp/plugins (recommended on Linux/MacOS)
      • ~/.yt-dlp/plugins/
      • ${APPDATA}/yt-dlp/plugins/ (recommended on Windows)
    • System Plugins

      • /etc/yt-dlp/plugins/
      • /etc/yt-dlp-plugins/
    • Executable location

      • Binary: where <root-dir>/yt-dlp.exe, <root-dir>/yt-dlp-plugins/

For more locations and methods, see installing yt-dlp plugins

Usage

Auto-fallback mode (recommended)

Just use yt-dlp as normal, the plugin will automatically fall back to invidious when YoutubeIE or YoutubePlaylistIE reported 'Sign in to confirm you’re not a bot. This helps protect our community. Learn more'.

Force override mode

Pass --ies "Invidious,InvidiousPlaylist,default,-youtube,-youtubeplaylist" to yt-dlp. The plugin automatically matches the video id/playlist id so you can just pass a YouTube link or even just a video id/playlist id. For a single video id, use invidious:<id> instead of <id> to force yt-dlp to use Invidious.

Extractor arguments

See EXTRACTOR ARGUMENTS.