A userscript for MPV that allows you to load the up next/recommened youtube video on the fly, as though you were using the web player.
Toggle the menu with ctrl+u
(configurable). Select from the list with the arrow keys (configurable), and press Enter
(configurable) to select. Menu times out after 10 seconds (configurable).
Press Space
to append to the playlist. Close menu with Escape
or ctrl+u
.
Copy youtube-upnext.lua into your scripts directory, e.g.:
cp youtube-upnext.lua ~/.config/mpv/scripts/
optional, copy the config file:
cp youtube-upnext.conf ~/.config/mpv/script-opts/
The location of the scripts directory on Windows is %APPDATA%\mpv\scripts
e.g. C:\Users\cvzi\AppData\Roaming\mpv\scripts
Make sure you have GNU Wget installed. There are several websites that offer a binary release of wget for Windows e.g. here, it is also included in MingW and similar tools.
If you downloaded/installed the wget executable, you have to add the directory of the wget.exe to your machine's %PATH%.
Depending on your setup you may have to set check_certificate = false
in the lua script or in the config file,
because some wget versions on Windows seem to have problems with HTTPS/SSL certificates.
The script folder for mpv.net is:
%APPDATA%\mpv.net\scripts
The .conf files belong into:
%APPDATA%\mpv.net\script-opts
The keyboard shortcut in the script and the .conf-file doesn't work with mpv.net.
You need to set the keyboard shortcut yourself in your input.conf
. Default location is %APPDATA%\mpv.net\input.conf
.
Add the following line to the end of your input.conf
(change the key if it's already used):
Ctrl+u script-message-to youtube_upnext upnext-menu
Installation is the same as for normal mpv. You need to install yt-dlp. On Windows you have to
add the directory of the yt-dlp.exe to your machine's %PATH%
or put yt-dlp.exe into %APPDATA%\mpv\
e.g. C:\Users\cvzi\AppData\Roaming\mpv\yt-dlp.exe
.
You need to update yt-dlp occasionally when it stops working.
Unfortunately SVP does not make the quality available to scripts. That means the quality settings that were selected in SVP are not preserved when the next video is loaded.
- I pretty much copied the mpv-youtube-quality script and added wget
youtube-quality's Credit
- reload.lua, for the function to reload a video while preserving the playlist.
- mpv-playlistmanager, from which I ripped off much of the menu formatting config.
- ytdl_hook.lua, from which I ripped off much of the youtube-dl code to fetch the format list
- somebody on /mpv/ for the idea