[Mplayer-cvslog] CVS: main/libmpdemux mpdemux.c,NONE,1.1 mpdemux.h,NONE,1.1

Alban Bedel CVS albeu at mplayer.dev.hu
Sat Feb 23 22:17:29 CET 2002


Update of /cvsroot/mplayer/main/libmpdemux
In directory mplayer:/var/tmp.root/cvs-serv2772/libmpdemux

Added Files:
	mpdemux.c mpdemux.h 
Log Message:
These 2 files are intended for code common to the whole lib
mainly code to let limpdemux independent from mplayer.
Now contain a function to check external interruption from blocking
code (network connection and cache fililng)


--- NEW FILE ---

#include "config.h"
#include <stdlib.h>


#ifdef HAVE_NEW_INPUT
#include "../input/input.h"
int mpdemux_check_interrupt(int time) {
  mp_cmd_t* cmd;
  if((cmd = mp_input_get_cmd(time,0)) == NULL)
    return 0;

  switch(cmd->id) {
  case MP_CMD_QUIT:
  case MP_CMD_PLAY_TREE_STEP:
  case MP_CMD_PLAY_TREE_UP_STEP:
  case MP_CMD_PLAY_ALT_SRC_STEP:
    // The cmd will be executed when we are back in the main loop
    if(! mp_input_queue_cmd(cmd)) {
      printf("mpdemux_check_interrupt: can't queue cmd %s\n",cmd->name);
      mp_cmd_free(cmd);
    }
    return 1;
  default:
    mp_cmd_free(cmd);
    return 0;
  }
}

#else // Default function
int mpdemux_input_check_interrupt(int time){
  usec_sleep(time*1000);
  return 0;
}
#endif



--- NEW FILE ---

extern int mpdemux_check_interrupt(int time);




More information about the MPlayer-cvslog mailing list