Add an experimental pausing_keep_force slave mode command prefix

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27665 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
reimar 2008-09-25 17:40:33 +00:00
parent fdcf78eec4
commit 97cf6acdab
3 changed files with 9 additions and 1 deletions

View File

@ -26,6 +26,10 @@ after processing the command. "pausing_keep " tells MPlayer to do so only if
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):

View File

@ -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++)

View File

@ -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;
}