From 74e3a29606f2995c5ba04944db3a32aaf2a75b55 Mon Sep 17 00:00:00 2001 From: wm4 Date: Wed, 21 Aug 2013 18:41:59 +0200 Subject: options: replace --edition=-1 with --edition=auto Originally, the objective of this commit was changing --edition to be 1-based, but this was cancelled. I'm still leaving the change to demux_mkv.c though, which is now only of cosmetic nature. --- DOCS/man/en/options.rst | 4 ++-- demux/demux_mkv.c | 5 +++-- mpvcore/options.c | 3 ++- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst index 9549f335c5..a275c5da34 100644 --- a/DOCS/man/en/options.rst +++ b/DOCS/man/en/options.rst @@ -731,10 +731,10 @@ Some DVDs contain scenes that can be viewed from multiple angles. This option tells mpv which angle to use (default: 1). -``--edition=`` +``--edition=`` (Matroska files only) Specify the edition (set of chapters) to use, where 0 is the first. If set - to -1 (the default), mpv will choose the first edition declared as a + to ``auto`` (the default), mpv will choose the first edition declared as a default, or if there is no default, the first edition defined. ``--embeddedfonts``, ``--no-embeddedfonts`` diff --git a/demux/demux_mkv.c b/demux/demux_mkv.c index 9fc1c6f0bb..8d157d2ee7 100644 --- a/demux/demux_mkv.c +++ b/demux/demux_mkv.c @@ -778,6 +778,7 @@ static int demux_mkv_read_chapters(struct demuxer *demuxer) { struct MPOpts *opts = demuxer->opts; stream_t *s = demuxer->stream; + int wanted_edition = opts->edition_id; mp_msg(MSGT_DEMUX, MSGL_V, "[mkv] /---- [ parsing chapters ] ---------\n"); struct ebml_chapters file_chapters = {}; @@ -789,8 +790,8 @@ static int demux_mkv_read_chapters(struct demuxer *demuxer) int selected_edition = 0; int num_editions = file_chapters.n_edition_entry; struct ebml_edition_entry *editions = file_chapters.edition_entry; - if (opts->edition_id >= 0 && opts->edition_id < num_editions) { - selected_edition = opts->edition_id; + if (wanted_edition >= 0 && wanted_edition < num_editions) { + selected_edition = wanted_edition; mp_msg(MSGT_DEMUX, MSGL_V, "[mkv] User-specified edition: %d\n", selected_edition); } else diff --git a/mpvcore/options.c b/mpvcore/options.c index 5aff219c14..eeda836914 100644 --- a/mpvcore/options.c +++ b/mpvcore/options.c @@ -370,7 +370,8 @@ const m_option_t mp_opts[] = { {"dvdangle", &dvd_angle, CONF_TYPE_INT, CONF_RANGE, 1, 99, NULL}, #endif /* CONFIG_DVDREAD */ OPT_INTPAIR("chapter", chapterrange, 0), - OPT_INTRANGE("edition", edition_id, 0, -1, 8190), + OPT_CHOICE_OR_INT("edition", edition_id, 0, 0, 8190, + ({"auto", -1})), #ifdef CONFIG_LIBBLURAY {"bluray-device", &bluray_device, CONF_TYPE_STRING, 0, 0, 0, NULL}, {"bluray-angle", &bluray_angle, CONF_TYPE_INT, CONF_RANGE, 0, 999, NULL}, -- cgit v1.2.3