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.
Prerequisites in your system
Keep in mind that these instructions are valid for GNU/Linux operating system for now. If you are using proprietary Windows, you are on your own.
Supported sites
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
GNU/Linux
$ 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