Mpv: [Documentation] Very difficult to find list of all mpv.conf options, via Google web search

Created on 15 Mar 2019  Â·  15Comments  Â·  Source: mpv-player/mpv

It was impossible for me to find a list of all mpv.conf options.

The first 4 Google results (my Google search history is disabled) when searching mpv.conf documentation are:

The first 3 Google results for mpv.conf all options all appear in the above list. https://github.com/mpv-player/mpv/blob/master/etc/mpv.conf is the first result, which I am editing in this PR.


Only after posting in a Discord server was I told that mpv.conf options are identical to CLI options, and I could find all mpv.conf keys by running mpv --help or looking at the manpage, then noticing the --list-options flag.

I will be submitting 1 or 2 documentation pull requests soon.

Most helpful comment

Wow fuck, it’s like you gotta read the manual in order to understand the manual!

Jesus, what is happening to people’s attention span.

All 15 comments

Wow fuck, it’s like you gotta read the manual in order to understand the manual!

Jesus, what is happening to people’s attention span.

wow, rude @lachs0r

Did you even read my entire post? Look at the issues I pointed out? Notice that the manual on the mpv website has the wrong title, and that I already read the part of the manual describing mpv.conf, but it doesn't tell you how to list all options? Look at my pull request https://github.com/mpv-player/mpv/pull/6562 ?

Admittedly I spent 4 minutes during my initial fruitless search, and had I thought of some other things (like searching the manual for sub-font rather than mpv.conf), I could've found the options. But all the problems I found during my subsequent research are very real omissions that needlessly make it difficult to find options.

The title is a Google bug, not our problem. Plus Google results are gonna be different for each person, depending on tracking, location, browser, language, etc. The rest is self-explanatory if you just have the patience to read a few paragraphs, or even just the damn headings. There’s one right at the start of the CONFIGURATION FILES section that says “Putting Command Line Options into the Configuration File”.

If I get it correctly, the whole confusion revolves around the fact that all CLI options are also mpv.conf options and this relationship is not obvious to a new user?
The manual explicitly mentions this:

You can put all of the options in configuration files which will be read every time mpv is run.

You explicitly linked to this part of the manual yourself, so I don't really get why there was still confusion afterwards.
Not sure about your problem with the pseudo GUI chapter.

The title is a Google bug, not our problem.

https://mpv.io/manual/stable/ contains <title>mpv.io</title>. Maybe you should add some meaningful information to the title, like "Manual - mpv.io", so Google doesn't have to incorrectly guess at meaningful page titles? Why is mpv one of those unhelpful websites which use the same title for every page in the site?

Google results are gonna be different for each person, depending on tracking, location, browser, language, etc.

One person on Discord got the same result and same wrong title at a slightly different search position.

There’s one right at the start of the CONFIGURATION FILES section

which is a full page down on my 1080p 1.3x DPI laptop display.

Even then, it says:

Almost all command line options can be put into the configuration file. Here is a small guide:

and does not point to any command to list all command line options.


I think I missed reading

# The commented example options usually do _not_ set the default values. Call
# mpv with --list-options to see the default values for most options. There is
# no builtin or example mpv.conf with all the defaults.

in the default mpv.conf. Interesting how nobody pointed it out.


Again, the rudeness is absolutely unprofessional and uncalled for.

Again, the rudeness is absolutely unprofessional and uncalled for.

Welcome to FOSS multimedia development, buddy. Nobody here is under any obligation to fake niceness, hence you'll get yelled at a lot.

The manual itself is a list of all options, along with explanations of what they do (which, let’s be honest, you’re definitely gonna need). I don’t see what the problem is.

Nobody here is under any obligation to fake niceness, hence you'll get yelled at a lot.

and i have no obligation to think mpv's developers are not hostile,

Jesus, what is happening to people’s attention span.

prone to attacking users' personality (instead of technical arguments),

self-explanatory

and arrogant (or assuming all users have the same perspective as developers).

Actually I've pointed out a mistake I made, which renders my pull request partly unnecessary (mpv.conf mentions --list-options, the mpv.conf manual does not)... but the developers didn't notice. Along the way I've noticed other issues (like missing per-page title on the website) which the developers have yet to respond constructively to.

It’s not that we didn’t notice, it’s that we didn’t even waste any time reviewing your change yet, because basically what you’re asking is that we restructure and reorder documentation so that the sentences you happen to be looking for right now appear in the order you expect so you don’t have to read more than a dozen words at a time. This is going nowhere. You need to stop working so hard to avoid spending time to read and understand, or you will end up wasting everybody else’s.

restructure and reorder documentation

i added 2 sentences, one of which turned out to be unnecessary.

THE MANUAL LISTS THE OPTIONS TOO WHAT THE HELL IS YOUR ISSUE THERE IS A SIDEBAR OF HEADINGS ON THE LEFT WITH OPTIONS AS A HEADING HOLY MACARONI AAAAAAAAAAAAAAA YOU JUST TOOK TEN YEARS OFF MY LIFE EXPECTANCY WITH YOUR ENTITLED BULLSHIT

THE MANUAL LISTS THE OPTIONS TOO WHAT THE HELL IS YOUR ISSUE THERE IS A SIDEBAR OF HEADINGS ON THE LEFT WITH OPTIONS AS A HEADING HOLY MACARONI AAAAAAAAAAAAAAA YOU JUST TOOK TEN YEARS OFF MY LIFE EXPECTANCY WITH YOUR ENTITLED BULLSHIT

do you actually think slightly misinformed documentation bug requests will kill you?

Also, the lack of hits when I was searching the source code led me to (erroneously) believe mpv.conf operated off an untyped key-value system like git config where the developers have said on record that they cannot implement a "list all recognized keys" CLI option.

I... don't get it. Could you maybe rephrase your issue a bit? Maybe I'll have a chance at understanding then.

You said that it was "impossible" to find a list of all options, but you actually managed to find them in the end? I don't get it. You have found the online manual page, you have found --list-options, what do you want? Already finished with reading, and now looking for even more documentation stuff to read?

I couldn't find that on my own, and had to ask in a Discord chat room where someone told me the right option to use. Afterwards I spent quite some time looking for reasons I couldn't find it, and ways I could've found it on my own (apparently my research wasn't as thorough as I thought).

I should've just created a pull request in the first place, and expressed less frustration.

Anyway how do I link to sections in the readme? I tried a PR in https://github.com/mpv-player/mpv/pull/6562/files, but https://github.com/mpv-player/mpv/blob/e43b82072aa2416519e258ae5f86f125d98eac67/DOCS/man/mpv.rst#location-and-syntax doesn't look right.

Someone on Discord mentioned that you can add a sitemap to the README, to change the title displayed on Google, without changing the tag (browser tab title). I'm not sure how, and think the <title> tag would be better if it said <code>mpv | readme/man</code>.</p> </div> <div class="card-footer"> <div class="row"> <div class="col"> <img src="https://avatars1.githubusercontent.com/u/913957?v=4&s=40" style="width:20px; height:20px;" class="mr-2 rounded float-left" alt="nyanpasu64 picture"> <strong>nyanpasu64</strong> <span class="text-muted ml-1">on 15 Mar 2019</span> </div> <div class="col text-right"> </div> </div> </div> </div> <div class="card card-custom mb-4"> <div class="card-body pt-3 pb-3 markdown"> <blockquote> <p>I'm not sure how, and think the <title> tag would be better if it said <code>mpv | readme/man</code>.</p> </blockquote> <p>I think more conventional would be <code>Documentation (stable) - mpv.io</code> or something. But that's sort of off-topic here since it's an issue for <a rel="nofollow noopener" target="_blank" href="https://github.com/mpv-player/mpv.io.">https://github.com/mpv-player/mpv.io.</a> Incidentally, I also can't see a way to do it. Fuck webshit.</p> </div> <div class="card-footer"> <div class="row"> <div class="col"> <img src="https://avatars0.githubusercontent.com/u/1149047?v=4&s=40" style="width:20px; height:20px;" class="mr-2 rounded float-left" alt="haasn picture"> <strong>haasn</strong> <span class="text-muted ml-1">on 15 Mar 2019</span> </div> <div class="col text-right"> </div> </div> </div> </div> </div> <div class="col-12"> <div class="card card-custom mb-4"> <div class="card-body pt-3 pb-3 markdown text-center helpful"> <div class="title">Was this page helpful?</div> <div class="mt-1" onMouseLeave="rating(421516511, 0);"> <i class="fas fa-star inactive" id="star-1" onMouseOver="rating(421516511, 1);" onclick="rate(421516511, 1);"></i> <i class="fas fa-star inactive" id="star-2" onMouseOver="rating(421516511, 2);" onclick="rate(421516511, 2);"></i> <i class="fas fa-star inactive" id="star-3" onMouseOver="rating(421516511, 3);" onclick="rate(421516511, 3);"></i> <i class="fas fa-star inactive" id="star-4" onMouseOver="rating(421516511, 4);" onclick="rate(421516511, 4);"></i> <i class="fas fa-star inactive" id="star-5" onMouseOver="rating(421516511, 5);" onclick="rate(421516511, 5);"></i> </div> <div class="description text-small"><span id="rating-val">0</span> / 5 - <span id="rating-count">0</span> ratings</div> </div> </div> <div class="mb-4"> <ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-3835332123789605" data-ad-slot="3452512275" data-ad-format="auto" data-full-width-responsive="true"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </div> </div> </div> </div> <div class="col-12 col-lg-4"> <div id="ph-above-related"></div> <div class="card card-custom issue-box"> <div class="card-body pt-3 pb-5"> <h2 class="mb-4">Related issues</h2> <div> <strong> <a href="/mpv/204793298/open-previous-playlist-files-url">open previous playlist (files/url)</a> </strong> </div> <div class="text-muted text-small mt-2"> <img src="https://avatars0.githubusercontent.com/u/24494866?v=4&s=40" style="width:20px; height:20px;" class="mr-2 rounded float-left" alt="ww7 picture"> <strong class="pr-1" dir="ltr">ww7</strong>  Â·  <span class="px-1" dir="ltr">3</span><span>Comments</span> </div> <hr /> <div> <strong> <a href="/mpv/65558833/feature-request-always-on-top-on-mac">Feature request: always on-top on mac</a> </strong> </div> <div class="text-muted text-small mt-2"> <img src="https://avatars0.githubusercontent.com/u/270571?v=4&s=40" style="width:20px; height:20px;" class="mr-2 rounded float-left" alt="WoLpH picture"> <strong class="pr-1" dir="ltr">WoLpH</strong>  Â·  <span class="px-1" dir="ltr">3</span><span>Comments</span> </div> <hr /> <div> <strong> <a href="/mpv/421796650/bg-audio-too-loud-and-speech-too-quiet">Bg audio too loud and speech too quiet</a> </strong> </div> <div class="text-muted text-small mt-2"> <img src="https://avatars3.githubusercontent.com/u/10137?v=4&s=40" style="width:20px; height:20px;" class="mr-2 rounded float-left" alt="ghost picture"> <strong class="pr-1" dir="ltr">ghost</strong>  Â·  <span class="px-1" dir="ltr">3</span><span>Comments</span> </div> <hr /> <div> <strong> <a href="/mpv/170372432/is-it-possible-to-set-the-a-b-loop-points-according-to-the">Is it possible to set the A-B loop points according to the lyric files automatically?</a> </strong> </div> <div class="text-muted text-small mt-2"> <img src="https://avatars1.githubusercontent.com/u/6672134?v=4&s=40" style="width:20px; height:20px;" class="mr-2 rounded float-left" alt="Edenharder picture"> <strong class="pr-1" dir="ltr">Edenharder</strong>  Â·  <span class="px-1" dir="ltr">4</span><span>Comments</span> </div> <hr /> <div> <strong> <a href="/mpv/208972119/compiling-error-on-window-7-with-msys2">Compiling error on Window 7 with MSYS2</a> </strong> </div> <div class="text-muted text-small mt-2"> <img src="https://avatars1.githubusercontent.com/u/6316410?v=4&s=40" style="width:20px; height:20px;" class="mr-2 rounded float-left" alt="xanadupark picture"> <strong class="pr-1" dir="ltr">xanadupark</strong>  Â·  <span class="px-1" dir="ltr">3</span><span>Comments</span> </div> </div> </div> <div class="sticky-top pt-4"> <ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-3835332123789605" data-ad-slot="3919948963" data-ad-format="auto" data-full-width-responsive="true"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> <div id="ph-below-related-2" class="mt-4"> <ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-3835332123789605" data-ad-slot="3919948963" data-ad-format="auto" data-full-width-responsive="true"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </div> </div> </div> <div class="col-12 col-lg-4"> </div> </div> <div class="skyscraper-container"> <ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-3835332123789605" data-ad-slot="7879185320" data-ad-format="vertical" data-full-width-responsive="true"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </div> </div> <div class="mt-5 spacer"></div> <footer class="mt-5 pb-2 py-4 text-center mt-auto"> <div class="container"> <a class="navbar-brand logo mr-5" href="/"> <img src="/assets/img/logo.svg" width="40" height="40" alt="bleepingcoder logo"> bleeping<strong>coder</strong> </a> <div class="mt-4"> bleepingcoder.com uses publicly licensed GitHub information to provide developers around the world with solutions to their problems. We are not affiliated with GitHub, Inc. or with any developers who use GitHub for their projects. We do not host any of the videos or images on our servers. All rights belong to their respective owners. </div> <div> Source for this page: <a href="https://www.github.com/mpv-player/mpv/issues/6561" rel="nofollow noreferrer" target="_blank">Source</a> </div> </div> <hr class="mb-5 mt-5"> <div class="container"> <div class="row"> <div class="col-sm-4 col-lg mb-sm-0 mb-5"> <strong>Popular programming languages</strong> <ul class="list-unstyled mb-0 mt-2"> <li class="mb-2"> <a href="/python" dir="ltr">Python</a> </li> <li class="mb-2"> <a href="/javascript" dir="ltr">JavaScript</a> </li> <li class="mb-2"> <a href="/typescript" dir="ltr">TypeScript</a> </li> <li class="mb-2"> <a href="/cpp" dir="ltr">C++</a> </li> <li class="mb-2"> <a href="/csharp" dir="ltr">C#</a> </li> </ul> </div> <div class="col-sm-4 col-lg mb-sm-0 mb-5"> <strong>Popular GitHub projects</strong> <ul class="list-unstyled mb-0 mt-2"> <li class="mb-2"> <a href="/microsoft/vscode" dir="ltr">vscode</a> </li> <li class="mb-2"> <a href="/numpy/numpy" dir="ltr">numpy</a> </li> <li class="mb-2"> <a href="/ant-design/ant-design" dir="ltr">ant-design</a> </li> <li class="mb-2"> <a href="/mui-org/material-ui" dir="ltr">material-ui</a> </li> <li class="mb-2"> <a href="/vercel/next-js" dir="ltr">next.js</a> </li> </ul> </div> <div class="col-sm-4 col-lg mb-0"> <strong>More GitHub projects</strong> <ul class="list-unstyled mb-0 mt-2"> <li class="mb-2"> <a href="/rust-lang/rust" dir="ltr">rust</a> </li> <li class="mb-2"> <a href="/moment/moment" dir="ltr">moment</a> </li> <li class="mb-2"> <a href="/yarnpkg/yarn" dir="ltr">yarn</a> </li> <li class="mb-2"> <a href="/mozilla/pdf-js" dir="ltr">pdf.js</a> </li> <li class="mb-2"> <a href="/JuliaLang/julia" dir="ltr">julia</a> </li> </ul> </div> </div> </div> <hr class="mb-5 mt-5"> <div class="container text-muted"> © 2026 bleepingcoder.com - <a href="/bleeps" rel="nofollow">Contact</a><br /> By using our site, you acknowledge that you have read and understand our <a href="/cookies" rel="nofollow">Cookie Policy</a> and <a href="/privacy" rel="nofollow">Privacy Policy</a>. </div> </footer> <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha256-4+XzXVhsDmqanXGHaHvgh1gMQKX40OUvDEBTu8JcmNs=" crossorigin="anonymous"></script> <script async src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js" integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6" crossorigin="anonymous"></script> <!--<script defer type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-5fb2db66acbd74b2"></script>--> <script type="text/javascript" src="/assets/js/main.js"></script> <script src="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_prettify.js"></script></body> </html>