[MPlayer-cvslog] r27665 - in trunk: DOCS/tech/slave.txt input/input.c mplayer.c
reimar
subversion at mplayerhq.hu
Thu Sep 25 19:40:34 CEST 2008
Author: reimar
Date: Thu Sep 25 19:40:33 2008
New Revision: 27665
Log:
Add an experimental pausing_keep_force slave mode command prefix
Modified:
trunk/DOCS/tech/slave.txt
trunk/input/input.c
trunk/mplayer.c
Modified: trunk/DOCS/tech/slave.txt
==============================================================================
--- trunk/DOCS/tech/slave.txt (original)
+++ trunk/DOCS/tech/slave.txt Thu Sep 25 19:40:33 2008
@@ -26,6 +26,10 @@ after processing the command. "pausing_k
it was already in paused mode. "pausing_toggle " tells MPlayer to do so
only if it was not already in paused mode. Please note that "as soon as
possible" can be before the command is fully executed.
+As a temporary hack, there is also the _experimental_ "pausing_keep_force "
+prefix, with which MPlayer will not exit the pause loop at all.
+Like this you can avoid the "frame stepping" effect of "pausing_keep "
+but most commands will either not work at all or behave in unexpected ways.
Available commands ('mplayer -input cmdlist' will print a list):
Modified: trunk/input/input.c
==============================================================================
--- trunk/input/input.c (original)
+++ trunk/input/input.c Thu Sep 25 19:40:33 2008
@@ -771,6 +771,9 @@ mp_input_parse_cmd(char* str) {
} else if (strncmp(str, "pausing_toggle ", 15) == 0) {
pausing = 3;
str = &str[15];
+ } else if (strncmp(str, "pausing_keep_force ", 19) == 0) {
+ pausing = 4;
+ str = &str[19];
}
for(ptr = str ; ptr[0] != '\0' && ptr[0] != '\t' && ptr[0] != ' ' ; ptr++)
Modified: trunk/mplayer.c
==============================================================================
--- trunk/mplayer.c (original)
+++ trunk/mplayer.c Thu Sep 25 19:40:33 2008
@@ -2353,9 +2353,10 @@ static void pause_loop(void)
mpctx->audio_out->pause(); // pause audio, keep data if possible
while ( (cmd = mp_input_get_cmd(20, 1, 1)) == NULL
- || cmd->id == MP_CMD_SET_MOUSE_POS) {
+ || cmd->id == MP_CMD_SET_MOUSE_POS || cmd->pausing == 4) {
if (cmd) {
cmd = mp_input_get_cmd(0,1,0);
+ run_command(mpctx, cmd);
mp_cmd_free(cmd);
continue;
}
More information about the MPlayer-cvslog
mailing list