summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilip Sequeira <phsequei@gmail.com>2013-10-08 23:51:00 -0400
committerwm4 <wm4@nowhere>2013-10-12 18:57:02 +0200
commit7ce464bef9c8ef13ca8343f24d126c468086a60f (patch)
tree30d7e1a6efd40da9b3e00f50ca23720d396aafa9
parentd1c473bc258b863f8619ffaf7d70112136ef1039 (diff)
downloadmpv-7ce464bef9c8ef13ca8343f24d126c468086a60f.tar.bz2
mpv-7ce464bef9c8ef13ca8343f24d126c468086a60f.tar.xz
options: --loop=N means playback N times, not N+1 times
The argument or this change is that --loop should set how often the file is played, not the number of additional repeats. Based on pull request 277, with additions to the manpage and removal of "--loop=0". Signed-off-by: wm4 <wm4@nowhere>
-rw-r--r--DOCS/man/en/options.rst9
-rw-r--r--mpvcore/mplayer.c4
-rw-r--r--mpvcore/options.c4
3 files changed, 9 insertions, 8 deletions
diff --git a/DOCS/man/en/options.rst b/DOCS/man/en/options.rst
index cc0b7a4db2..521052b1c9 100644
--- a/DOCS/man/en/options.rst
+++ b/DOCS/man/en/options.rst
@@ -1267,10 +1267,11 @@
playlist formats to the special demuxer is work in progress, and eventually
the old code should disappear.
-``--loop=<number|inf|no>``
- Loops playback ``<number>`` times. ``inf`` means forever and ``no`` disables
- looping. If several files are specified on command line, the entire playlist
- is looped.
+``--loop=<N|inf|no>``
+ Loops playback ``N`` times. A value of ``1`` plays it one time (default),
+ ``2`` two times, etc. ``inf`` means forever. ``no`` is the same as ``1`` and
+ disables looping. If several files are specified on command line, the
+ entire playlist is looped.
``--lua=<filename>``
Load a Lua script. You can load multiple scripts by separating them with
diff --git a/mpvcore/mplayer.c b/mpvcore/mplayer.c
index 7de8ff2abf..4d745cf107 100644
--- a/mpvcore/mplayer.c
+++ b/mpvcore/mplayer.c
@@ -4736,9 +4736,9 @@ struct playlist_entry *mp_next_file(struct MPContext *mpctx, int direction,
if (mpctx->opts->shuffle)
playlist_shuffle(mpctx->playlist);
next = mpctx->playlist->first;
- if (next && mpctx->opts->loop_times > 0) {
+ if (next && mpctx->opts->loop_times > 1) {
mpctx->opts->loop_times--;
- if (mpctx->opts->loop_times == 0)
+ if (mpctx->opts->loop_times == 1)
mpctx->opts->loop_times = -1;
}
} else {
diff --git a/mpvcore/options.c b/mpvcore/options.c
index b0988bd6e2..b2da59c55d 100644
--- a/mpvcore/options.c
+++ b/mpvcore/options.c
@@ -681,8 +681,8 @@ const m_option_t mp_opts[] = {
{"lircconf", &lirc_configfile, CONF_TYPE_STRING, CONF_GLOBAL, 0, 0, NULL},
#endif
- OPT_CHOICE_OR_INT("loop", loop_times, M_OPT_GLOBAL, 1, 10000,
- ({"no", -1}, {"0", -1},
+ OPT_CHOICE_OR_INT("loop", loop_times, M_OPT_GLOBAL, 2, 10000,
+ ({"no", -1}, {"1", -1},
{"inf", 0})),
OPT_FLAG("resume-playback", position_resume, 0),