view fifo.c @ 9470:3c0bc75f380d

Latest version has the following features: - --language=ab,cd,ef and --language="ab cd ef" are supported, the list is now used as a fallback for possible message/gui translations - --language=all is supported - --language=ab,cd,ef,all and --language="ab cd ef all" are supported for all man pages, but different message/gui translations than en - $LINGUAS is honored - if no --language or $LINGUAS is given it defaults to en Credits for ideas go out to (in no particular order): Tobias Diedrich Sylvain Petreolle Dan Christiansen Dominik Mierzejewski Andriy N. Gritsenko and everyone I've forgotten Andreas Hess <jaska@gmx.net>
author arpi
date Thu, 20 Feb 2003 23:32:47 +0000
parents 44198b2f42db
children 0397b461f0fb
line wrap: on
line source


// keyboard:
static int keyb_fifo_put=-1;
static int keyb_fifo_get=-1;

static void make_pipe(int* pr,int* pw){
  int temp[2];
  if(pipe(temp)!=0) printf("Cannot make PIPE!\n");
  *pr=temp[0];
  *pw=temp[1];
}

void mplayer_put_key(int code){
           fd_set rfds;
           struct timeval tv;

           /* Watch stdin (fd 0) to see when it has input. */
           FD_ZERO(&rfds);
           FD_SET(keyb_fifo_put, &rfds);
           tv.tv_sec = 0;
           tv.tv_usec = 0;

           //retval = select(keyb_fifo_put+1, &rfds, NULL, NULL, &tv);
           if(select(keyb_fifo_put+1, NULL, &rfds, NULL, &tv)>0){
             write(keyb_fifo_put,&code,4);
//             printf("*** key event %d sent ***\n",code);
           } else {
//             printf("*** key event dropped (FIFO is full) ***\n");
           }
}