mpv.net
mpv.net copied to clipboard
Option for adding resolution selection for Youtube
Is your feature request related to a problem? Please describe. Currently can't change video resolution for youtube, it automatically selects the highest resolution possible (i looked for vid resolution but haven't found any).
Describe the solution you'd like A way to select a default resolution or an automatically selected resolution based on monitor resolution.
Describe alternatives you've considered Maybe allow us to use our own installation of (youtube-dl) or maybe a Lua script (i tried many but to no avail).
Additional context Thank you for the hard work :)
It's probably possible to config this somehow via mpv.conf.
I would only investigate the issue if it gets requested frequently.
https://github.com/jgreco/mpv-youtube-quality
In input.conf
f script-binding quality-menu #menu: Video > Quality Menu (URL)
In youtube-quality.conf
fetch_formats=no
quality_strings=[ {"Best" : "(bestvideo[height>2160][vcodec^=av01]/bestvideo[height>2160][vcodec=vp9]/bestvideo[height>1440][vcodec^=av01]/bestvideo[height>1440][vcodec^=vp9][fps>30]/bestvideo[height>1440][vcodec^=vp9]/bestvideo[height>1080][vcodec^=av01]/bestvideo[height>1080][vcodec^=vp9][fps>30]/bestvideo[height>1080][vcodec^=vp9]/bestvideo[height>720][vcodec^=av01]/bestvideo[height>720][vcodec^=vp9][fps>30]/bestvideo[height>720][vcodec^=vp9]/bestvideo[height>240][vcodec^=av01]/bestvideo[vcodec^=vp9][fps>30]/bestvideo[height>240][vcodec^=vp9]/best[height>240]/bestvideo[vcodec^=av01]/bestvideo[vcodec^=vp9])+bestaudio[asr=48000]/bestvideo+bestaudio/bestaudio[ext=opus]/best"}, {"Ultra High Definition (Best)" : "(bestvideo[height>1440][height<2161][vcodec^=av01]/bestvideo[height>1440][height<2161][vcodec^=vp9][fps>30]/bestvideo[height>1440][height<2161][vcodec^=vp9]/bestvideo[height>1080][vcodec^=av01]/bestvideo[height>1080][vcodec^=vp9][fps>30]/bestvideo[height>1080][vcodec^=vp9]/bestvideo[height>720][vcodec^=av01]/bestvideo[height>720][vcodec^=vp9][fps>30]/bestvideo[height>720][vcodec^=vp9]/bestvideo[height>240][vcodec^=av01]/bestvideo[vcodec^=vp9][fps>30]/bestvideo[height>240][vcodec^=vp9]/best[height>240]/bestvideo[vcodec^=av01]/bestvideo[vcodec^=vp9])+bestaudio[asr=48000]/bestvideo[height<?2161]+bestaudio/bestaudio[ext=opus]/best[height<?2161]"}, {"Ultra High Definition (Standard Low Framerate)" : "(bestvideo[height>1440][height<2161][vcodec^=av01][fps<31]/bestvideo[height>1440][height<2161][vcodec^=vp9][fps<31]/bestvideo[height>1080][vcodec^=av01][fps<31]/bestvideo[height>1080][vcodec^=vp9][fps<31]/bestvideo[height>720][vcodec^=av01][fps<31]/bestvideo[height>720][vcodec^=vp9][fps<31]/bestvideo[height>240][vcodec^=av01][fps<31]/bestvideo[height>240][vcodec^=vp9][fps<31]/best[height>240]/bestvideo[vcodec^=av01]/bestvideo[vcodec^=vp9])+bestaudio[asr=48000]/bestvideo[height<?2161][fps<?31]+bestaudio/bestaudio[ext=opus]/(best[height<?2161][fps<?31])"}, {"Quad High Definition (Best)" : "(bestvideo[height>1080][height<1441][vcodec^=av01]/bestvideo[height>1080][height<1441][vcodec^=vp9][fps>30]/bestvideo[height>1080][height<1441][vcodec^=vp9]/bestvideo[height>720][vcodec^=av01]/bestvideo[height>720][vcodec^=vp9][fps>30]/bestvideo[height>720][vcodec^=vp9]/bestvideo[height>240][vcodec^=av01]/bestvideo[vcodec^=vp9][fps>30]/bestvideo[height>240][vcodec^=vp9]/best[height>240]/bestvideo[vcodec^=av01]/bestvideo[vcodec^=vp9])+bestaudio[asr=48000]/bestvideo[height<?1801]+bestaudio/bestaudio[ext=opus]/best[height<?1801]"}, {"Quad High Definition (Standard Low Framerate)" : "(bestvideo[height>1080][height<1441][vcodec^=av01][fps<31]/bestvideo[height>1080][height<1441][vcodec^=vp9][fps<31]/bestvideo[height>720][vcodec^=av01][fps<31]/bestvideo[height>720][vcodec^=vp9][fps<31]/bestvideo[height>240][vcodec^=av01][fps<31]/bestvideo[height>240][vcodec^=vp9][fps<31]/best[height>240]/bestvideo[vcodec^=av01]/bestvideo[vcodec^=vp9])+bestaudio[asr=48000]/bestvideo[height<?1801][fps<31]+bestaudio/bestaudio[ext=opus]/(best[height<?1801][fps<31])"}, {"Full High Definition (Best)" : "(bestvideo[height>720][height<1081][vcodec^=av01]/bestvideo[height>720][height<1081][vcodec^=vp9][fps>30]/bestvideo[height>720][height<1081][vcodec^=vp9]/bestvideo[height>240][vcodec^=av01]/bestvideo[vcodec^=vp9][fps>30]/bestvideo[height>240][vcodec^=vp9]/best[height>240]/bestvideo[vcodec^=av01]/bestvideo[vcodec^=vp9])+bestaudio[asr=48000]/bestvideo[height<?1081]+bestaudio/bestaudio[ext=opus]/best[height<?1081]"}, {"Full High Definition (Standard Low Framerate)" : "(bestvideo[height>720][height<1081][vcodec^=av01][fps<31]/bestvideo[height>720][height<1081][vcodec^=vp9][fps<31]/bestvideo[height>240][vcodec^=av01][fps<31]/bestvideo[height>240][vcodec^=vp9][fps<31]/best[height>240]/bestvideo[vcodec^=av01]/bestvideo[vcodec^=vp9])+bestaudio[asr=48000]/bestvideo[height<?1081][fps<31]+bestaudio/bestaudio[ext=opus]/(best[height<?1081][fps<31])"}, {"High Definition (Best)" : "(bestvideo[height>240][height<721][vcodec^=av01]/bestvideo[height<721][vcodec^=vp9][fps>30]/bestvideo[height>240][height<721][vcodec^=vp9]/best[height>240]/bestvideo[vcodec^=av01]/bestvideo[vcodec^=vp9])+bestaudio[asr=48000]/bestvideo[height<?901]+bestaudio/bestaudio[ext=opus]/best[height<?901]"}, {"High Definition (Standard Low Framerate)" : "(bestvideo[height>240][height<721][vcodec^=av01][fps<31]/bestvideo[height>240][height<721][vcodec^=vp9][fps<31]/best[height>240]/bestvideo[vcodec^=av01]/bestvideo[vcodec^=vp9])+bestaudio[asr=48000]/bestvideo[height<?901][fps<31]+bestaudio/bestaudio[ext=opus]/(best[height<?901][fps<31])"}, {"Standard Definition" : "(bestvideo[height>240][height<481][vcodec^=av01]/bestvideo[height>240][height<481][vcodec^=vp9]/best[height>240]/bestvideo[vcodec^=av01]/bestvideo[vcodec^=vp9])+bestaudio[asr=48000]/bestvideo[height<?577]+bestaudio/bestaudio[ext=opus]/best[height<?577]"}, {"Medium Resolution" : "(bestvideo[height>240][height<361][vcodec^=av01]/bestvideo[height>240][height<361][vcodec^=vp9]/best[height>240]/bestvideo[vcodec^=av01]/bestvideo[vcodec^=vp9])+bestaudio[asr=48000]/bestvideo[height<?480]+bestaudio/bestaudio[ext=opus]/best[height<?480]"}, {"Low Definition" : "(bestvideo[height<241][vcodec^=av01]/bestvideo[height<241][vcodec^=vp9])+bestaudio[asr=48000]/bestvideo[height<?360]+bestaudio/bestaudio[ext=opus]/best[height<?360]"}, {"Worst" : "worstvideo+worstaudio/worst"}, {"Audio Only" : "bestaudio[asr=48000]/bestaudio[ext=opus]/bestaudio"}]
Quality strings will always select av1 if available and then go for vp9 if not. Audio will always be standard opus or 5.1 aac or ambisonic audio. Opus in soundcloud and low framerate version in twitch if selected. https://www.reddit.com/r/youtubedl/comments/dzj0mr/youtubedl_the_complete_installation_guide_for/f87sthc/ https://www.reddit.com/r/youtubedl/comments/gaqak5/251_vs_258_for_audio/
I will check this thank you.
well, i also would like an dialog where i got asked what selection i want.. sometimes i want the HDR stream, sometimes teh 30fps H264 stream in 720 or 1080p.. This is also the only thing keeping me from using youtube-dl. at the moment im using "youtube-source" (https://ys.3dyd.com/) wich you can configure to allways display a Dialog where you can select what you need..
Best Regards, BeTa