mpv.net icon indicating copy to clipboard operation
mpv.net copied to clipboard

Option for adding resolution selection for Youtube

Open OldNero opened this issue 4 years ago • 4 comments

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 :)

OldNero avatar Jun 18 '20 13:06 OldNero

It's probably possible to config this somehow via mpv.conf.

I would only investigate the issue if it gets requested frequently.

stax76 avatar Jun 20 '20 02:06 stax76

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/

Witchilich avatar Jun 20 '20 20:06 Witchilich

I will check this thank you.

OldNero avatar Jun 21 '20 14:06 OldNero

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

B-eT-a avatar Jul 20 '20 17:07 B-eT-a