[MPlayer-dev-eng] [PATCH] get_time_pos slave commando
Reimar Döffinger
Reimar.Doeffinger at stud.uni-karlsruhe.de
Tue May 17 22:21:38 CEST 2005
Hi,
I think this would be useful addition to slave mode, especially external
Guis sure could need this IMHO.
If nobody objects I intend to apply tomorrow.
Greetings,
Reimar Döffinger
-------------- next part --------------
Index: mplayer.c
===================================================================
RCS file: /cvsroot/mplayer/main/mplayer.c,v
retrieving revision 1.844
diff -u -r1.844 mplayer.c
--- mplayer.c 29 Apr 2005 10:48:32 -0000 1.844
+++ mplayer.c 17 May 2005 19:22:40 -0000
@@ -3503,6 +3503,15 @@
case MP_CMD_GET_PERCENT_POS : {
mp_msg(MSGT_GLOBAL,MSGL_INFO,MSGTR_AnsPercentPos, demuxer_get_percent_pos(demuxer));
} break;
+ case MP_CMD_GET_TIME_POS : {
+ float pos = 0;
+ if (sh_video)
+ pos = sh_video->pts;
+ else
+ if (sh_audio && audio_out)
+ pos = sh_audio->delay - audio_out->get_delay() * playback_speed;
+ mp_msg(MSGT_GLOBAL, MSGL_INFO, MSGTR_AnsTimePos, pos);
+ } break;
case MP_CMD_SWITCH_AUDIO : {
int v = demuxer_switch_audio(demuxer, cmd->args[0].v.i);
if (identify)
Index: DOCS/tech/slave.txt
===================================================================
RCS file: /cvsroot/mplayer/main/DOCS/tech/slave.txt,v
retrieving revision 1.37
diff -u -r1.37 slave.txt
--- DOCS/tech/slave.txt 28 Apr 2005 14:43:17 -0000 1.37
+++ DOCS/tech/slave.txt 17 May 2005 19:22:42 -0000
@@ -132,6 +132,9 @@
get_percent_pos
Print out the current position in the file, as integer percentage [0-100).
+get_time_pos
+ Print out the current position in the filein seconds, as float.
+
get_time_length
Print out the length of the current file in seconds.
Index: help/help_mp-en.h
===================================================================
RCS file: /cvsroot/mplayer/main/help/help_mp-en.h,v
retrieving revision 1.167
diff -u -r1.167 help_mp-en.h
--- help/help_mp-en.h 19 Mar 2005 17:28:57 -0000 1.167
+++ help/help_mp-en.h 17 May 2005 19:22:57 -0000
@@ -172,6 +172,7 @@
#define MSGTR_AnsLength "ANS_LENGTH=%ld\n"
#define MSGTR_AnsVoFullscreen "ANS_VO_FULLSCREEN=%ld\n"
#define MSGTR_AnsPercentPos "ANS_PERCENT_POSITION=%ld\n"
+#define MSGTR_AnsTimePos "ANS_TIME_POSITION=%.1f\n"
#define MSGTR_DvdnavNullEvent "DVDNAV Event NULL?!\n"
#define MSGTR_DvdnavHighlightEventBroken "DVDNAV Event: Highlight event broken\n"
#define MSGTR_DvdnavEvent "DVDNAV Event: %s\n"
Index: input/input.c
===================================================================
RCS file: /cvsroot/mplayer/main/input/input.c,v
retrieving revision 1.115
diff -u -r1.115 input.c
--- input/input.c 28 Apr 2005 14:43:18 -0000 1.115
+++ input/input.c 17 May 2005 19:23:03 -0000
@@ -81,6 +81,7 @@
{ MP_CMD_SUB_SELECT, "sub_select", 0, { { MP_CMD_ARG_INT,{-2} }, {-1,{0}} } },
{ MP_CMD_SUB_LOG, "sub_log", 0, { {-1,{0}} } },
{ MP_CMD_GET_PERCENT_POS, "get_percent_pos", 0, { {-1,{0}} } },
+ { MP_CMD_GET_TIME_POS, "get_time_pos", 0, { {-1,{0}} } },
{ MP_CMD_GET_TIME_LENGTH, "get_time_length", 0, { {-1,{0}} } },
{ MP_CMD_SWITCH_AUDIO, "switch_audio", 0, { { MP_CMD_ARG_INT,{-1} }, {-1,{0}} } },
#ifdef USE_TV
Index: input/input.h
===================================================================
RCS file: /cvsroot/mplayer/main/input/input.h,v
retrieving revision 1.54
diff -u -r1.54 input.h
--- input/input.h 3 Apr 2005 14:08:26 -0000 1.54
+++ input/input.h 17 May 2005 19:23:04 -0000
@@ -64,6 +64,7 @@
#define MP_CMD_RUN 60
#define MP_CMD_SUB_LOG 61
#define MP_CMD_SWITCH_AUDIO 62
+#define MP_CMD_GET_TIME_POS 63
#define MP_CMD_GUI_EVENTS 5000
#define MP_CMD_GUI_LOADFILE 5001
More information about the MPlayer-dev-eng
mailing list