diff --git a/DOCS/man/options.rst b/DOCS/man/options.rst index bca96ac2fb..21ff76708f 100644 --- a/DOCS/man/options.rst +++ b/DOCS/man/options.rst @@ -6905,8 +6905,7 @@ Miscellaneous :no: Don't automatically load cover art. :exact: Load the media filename with an image file extension. - :fuzzy: Load all cover art containing the media filename and filenames - in an internal whitelist, such as ``cover.jpg`` (default). + :fuzzy: Load all cover art containing the media filename (default). :all: Load all images in the current directory. See ``--cover-art-files`` for details about what constitutes cover art. @@ -6914,6 +6913,13 @@ Miscellaneous See ``--audio-display`` how to control display of cover art (this can be used to disable cover art that is part of the file). +``--cover-art-whitelist=`` + Whether to load filenames in an internal whitelist, such as ``cover.jpg``, + as cover art. If ``cover-art-auto`` is set to ``no``, the whitelisted + filenames are never loaded even if this option is set to ``yes``. + + Default: ``yes``. + ``--autoload-files=`` Automatically load/select external files (default: yes). diff --git a/options/options.c b/options/options.c index e996eb8026..650ba00b46 100644 --- a/options/options.c +++ b/options/options.c @@ -611,6 +611,7 @@ static const m_option_t mp_opts[] = { {"no", -1}, {"exact", 0}, {"fuzzy", 1}, {"all", 2})}, {"cover-art-auto", OPT_CHOICE(coverart_auto, {"no", -1}, {"exact", 0}, {"fuzzy", 1}, {"all", 2})}, + {"cover-art-whitelist", OPT_BOOL(coverart_whitelist)}, {"", OPT_SUBSTRUCT(subs_rend, mp_subtitle_sub_opts)}, {"", OPT_SUBSTRUCT(subs_filt, mp_sub_filter_opts)}, @@ -1033,6 +1034,7 @@ static const struct MPOpts mp_default_opts = { .sub_auto = 0, .audiofile_auto = -1, .coverart_auto = 1, + .coverart_whitelist = true, .osd_bar_visible = 1, .screenshot_template = "mpv-shot%n", .play_dir = 1, diff --git a/options/options.h b/options/options.h index b32dc06519..4eb5ef07c7 100644 --- a/options/options.h +++ b/options/options.h @@ -306,6 +306,7 @@ typedef struct MPOpts { int sub_auto; int audiofile_auto; int coverart_auto; + bool coverart_whitelist; int osd_bar_visible; int w32_priority; diff --git a/player/external_files.c b/player/external_files.c index 3aca20dfdb..16aeb665c7 100644 --- a/player/external_files.c +++ b/player/external_files.c @@ -246,7 +246,7 @@ static void append_dir_subtitles(struct mpv_global *global, struct MPOpts *opts, if (bstr_find(tmp_fname_trim, f_fname_trim) >= 0 && fuzz >= 1) prio |= 2; // contains the movie name - if (type == STREAM_VIDEO && fuzz >= 1 && prio == 0) + if (type == STREAM_VIDEO && opts->coverart_whitelist && prio == 0) prio = test_cover_filename(dename); // doesn't contain the movie name