Click on video thumbnail to play in MPV

Open videos in external player (mpv) by simply clicking on a thumbnail.

À partir de 2021-06-13. Voir la dernière version.

Auteur
nsinister
Évaluations
0 0 0
Version
0.1
Créer
2021-06-13
Mis à jour
2021-06-13
Taille
2,7 ko
Licence
MIT
S'applique à

Description

This userscript will allow you to open videos in external player mpv by simply clicking on a thumbnail without loading bloated video page with web player.

How it works

It simply replaces video thumbnail hyperlinks on a page, changing their protocol from https:// to mpv:// and coding the original URL as base64. The result string is then passed to mpv:// URI handler as base64 string.

Limitations

  • Live streams aren't fully supported by mpv + youtube-dl, thus you may want to avoid clicking on live stream thumnails.

Prerequisites in your system

Supported sites

  • YouTube
  • Vimeo

Potentially it works with anything that mpv and its youtube-dl backend supports. But in order to add support for a certain website, one needs to find its DOM selector for site specific video thumnails and put it into the dictionary inside the userscript

Installation

Install this script, then follow instructions below

GNU/Linux

Handler install script

If you want automatic installation of mpv URL handler, refer to README in project's github repository. There you can download install script. If you don't want to go to github, continue reading the next section on how to manually install the handler script.

Manual standalone installation:

$ mkdir -p ~/.local/bin/ && touch ~/.local/bin/mpv-url-handler.sh
$ chmod +x ~/.local/bin/mpv-url-handler.sh
$ mkdir -p ~/.local/share/applications && touch ~/.local/share/applications/mpv-url-handler.desktop

Edit file ~/.local/bin/mpv-url-handler.sh with a text editor, put the following contents

#!/bin/sh
mpv `echo -n $1 | sed 's/mpv:\/\///' | base64 --decode`

Edit file ~/.local/share/applications/mpv-url-handler.desktop


[Desktop Entry]
Type=Application
Name=mpv-url-handler
GenericName=Multimedia player
Comment=Play web media content with mpv
NoDisplay=true
Icon=mpv
Terminal=false
Categories=AudioVideo;Audio;Video;Player;TV;
MimeType=x-scheme-handler/mpv;
X-KDE-Protocols=mpv

Finally, register mpv URL handler for mpv://

$ echo "Exec=$HOME/.local/bin/mpv-url-handler.sh %u" >> ~/.local/share/applications/mpv-url-handler.desktop
$ xdg-mime default mpv-url-handler.desktop x-scheme-handler/mpv

Windows

  1. Ensure you have mpv and youtube-dl extracted in the same folder.
  2. Download latest release of mpv handler for Windows from mpv-handler by akiirui repository
  3. Unzip the downloaded archive to mpv installation folder
  4. Run handler-install.bat to register protocol handler

If you are on Windows 32-bit, there is no binary in akiirui's repository for Win32, you can use my version of mpv-handler for Win32

Notes

For better experience you may want to set max quality in mpv config. For example, you want vidoes to be viewable in 1080p, not higher (4K) Edit file ~/.config/mpv/mpv.conf in GNU/Linux or mpv.conf in your mpv folder, create file if not exists Add the following line in mpv.conf

ytdl-format=bestvideo[height<=1080]+bestaudio