summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--DOCS/man/de/mplayer.12
-rw-r--r--DOCS/man/en/mplayer.12
-rw-r--r--DOCS/man/fr/mplayer.12
-rw-r--r--DOCS/tech/slave.txt4
-rw-r--r--command.c11
-rw-r--r--etc/input.conf1
-rw-r--r--input/input.c2
-rw-r--r--input/input.h1
8 files changed, 25 insertions, 0 deletions
diff --git a/DOCS/man/de/mplayer.1 b/DOCS/man/de/mplayer.1
index 2c96710e63..4cc18bb960 100644
--- a/DOCS/man/de/mplayer.1
+++ b/DOCS/man/de/mplayer.1
@@ -297,6 +297,8 @@ Mache einen Schnappschuss.
Beginne/beende die Aufnahme von Schnappschüssen.
.IPs "I\ \ \ \ "
Zeige den Dateinamen im OSD.
+.IPs "P\ \ \ \ "
+Zeige den Fortschrittsbalken, die abgelaufene Zeit und die Gesamtzeit im OSD.
.IPs "! und @"
Spult zum Anfang des vorigen/nächsten Kapitels.
.IPs "D (nur bei \-vo xvmc, \-vf yadif, \-vf kerndeint)"
diff --git a/DOCS/man/en/mplayer.1 b/DOCS/man/en/mplayer.1
index 703b065ffe..1e8ce00c42 100644
--- a/DOCS/man/en/mplayer.1
+++ b/DOCS/man/en/mplayer.1
@@ -286,6 +286,8 @@ Take a screenshot.
Start/stop taking screenshots.
.IPs "I\ \ \ \ "
Show filename on the OSD.
+.IPs "P\ \ \ \ "
+Show progression bar, elapsed time and total duration on the OSD.
.IPs "! and @"
Seek to the beginning of the previous/next chapter.
.IPs "D (\-vo xvmc, \-vo vdpau, \-vf yadif, \-vf kerndeint only)"
diff --git a/DOCS/man/fr/mplayer.1 b/DOCS/man/fr/mplayer.1
index 1e96215b26..2988123d0c 100644
--- a/DOCS/man/fr/mplayer.1
+++ b/DOCS/man/fr/mplayer.1
@@ -303,6 +303,8 @@ Réalise une capture d'écran.
Amorce/arrête la capture d'écran.
.IPs "I\ \ \ \ "
Affiche le nom de fichier dans l'OSD.
+.IPs "P\ \ \ \ "
+Affiche la barre d'avancement, le temps écoulé et la durée totale sur l'OSD.
.IPs "! and @"
Saute au début du chapitre précédent/suivant.
.IPs "D (\-vo xvmc, \-vo vdpau, \-vf yadif et \-vf kerndeint uniquement)"
diff --git a/DOCS/tech/slave.txt b/DOCS/tech/slave.txt
index 5dac1f0368..e33165e178 100644
--- a/DOCS/tech/slave.txt
+++ b/DOCS/tech/slave.txt
@@ -201,6 +201,10 @@ mute [value]
osd [level]
Toggle OSD mode or set it to [level] when [level] >= 0.
+osd_show_progression
+ Show the progression bar, the elapsed time and the total duration of the
+ movie on the OSD.
+
osd_show_property_text <string> [duration] [level]
Show an expanded property string on the OSD, see -playing-msg for a
description of the available expansions. If [duration] is >= 0 the text
diff --git a/command.c b/command.c
index a62e0bb77f..76c2e7a767 100644
--- a/command.c
+++ b/command.c
@@ -2763,6 +2763,17 @@ int run_command(MPContext * mpctx, mp_cmd_t * cmd)
brk_cmd = 1;
break;
+ case MP_CMD_OSD_SHOW_PROGRESSION:{
+ int len = demuxer_get_time_length(mpctx->demuxer);
+ int pts = demuxer_get_current_time(mpctx->demuxer);
+ set_osd_bar(0, "Position", 0, 100, demuxer_get_percent_pos(mpctx->demuxer));
+ set_osd_msg(OSD_MSG_TEXT, 1, osd_duration,
+ "%c %02d:%02d:%02d / %02d:%02d:%02d",
+ mpctx->osd_function, pts/3600, (pts/60)%60, pts%60,
+ len/3600, (len/60)%60, len%60);
+ }
+ break;
+
#ifdef CONFIG_RADIO
case MP_CMD_RADIO_STEP_CHANNEL:
if (mpctx->demuxer->stream->type == STREAMTYPE_RADIO) {
diff --git a/etc/input.conf b/etc/input.conf
index 8efa099002..c7540886da 100644
--- a/etc/input.conf
+++ b/etc/input.conf
@@ -41,6 +41,7 @@ INS alt_src_step 1
DEL alt_src_step -1
o osd
I osd_show_property_text "${filename}" # display filename in osd
+P osd_show_progression
z sub_delay -0.1 # subtract 100 ms delay from subs
x sub_delay +0.1 # add
9 volume -1
diff --git a/input/input.c b/input/input.c
index d9706804b7..7e679119ea 100644
--- a/input/input.c
+++ b/input/input.c
@@ -94,6 +94,7 @@ static const mp_cmd_t mp_cmds[] = {
{ MP_CMD_OSD, "osd",0, { {MP_CMD_ARG_INT,{-1}}, {-1,{0}} } },
{ MP_CMD_OSD_SHOW_TEXT, "osd_show_text", 1, { {MP_CMD_ARG_STRING, {0}}, {MP_CMD_ARG_INT,{-1}}, {MP_CMD_ARG_INT,{0}}, {-1,{0}} } },
{ MP_CMD_OSD_SHOW_PROPERTY_TEXT, "osd_show_property_text",1, { {MP_CMD_ARG_STRING, {0}}, {MP_CMD_ARG_INT,{-1}}, {MP_CMD_ARG_INT,{0}}, {-1,{0}} } },
+ { MP_CMD_OSD_SHOW_PROGRESSION, "osd_show_progression", 0, { {-1,{0}} } },
{ MP_CMD_VOLUME, "volume", 1, { { MP_CMD_ARG_FLOAT,{0} }, {MP_CMD_ARG_INT,{0}}, {-1,{0}} } },
{ MP_CMD_BALANCE, "balance", 1, { { MP_CMD_ARG_FLOAT,{0} }, {MP_CMD_ARG_INT,{0}}, {-1,{0}} } },
{ MP_CMD_MIXER_USEMASTER, "use_master", 0, { {-1,{0}} } },
@@ -400,6 +401,7 @@ static const mp_cmd_bind_t def_cmd_binds[] = {
{ { KEY_DEL, 0 }, "alt_src_step -1" },
{ { 'o', 0 }, "osd" },
{ { 'I', 0 }, "osd_show_property_text \"${filename}\"" },
+ { { 'P', 0 }, "osd_show_progression" },
{ { 'z', 0 }, "sub_delay -0.1" },
{ { 'x', 0 }, "sub_delay +0.1" },
{ { 'g', 0 }, "sub_step -1" },
diff --git a/input/input.h b/input/input.h
index 29e801d374..2df3f03932 100644
--- a/input/input.h
+++ b/input/input.h
@@ -94,6 +94,7 @@ typedef enum {
MP_CMD_SET_PROPERTY,
MP_CMD_GET_PROPERTY,
MP_CMD_OSD_SHOW_PROPERTY_TEXT,
+ MP_CMD_OSD_SHOW_PROGRESSION,
MP_CMD_SEEK_CHAPTER,
MP_CMD_FILE_FILTER,
MP_CMD_GET_FILENAME,