From: Michael R. <mr...@us...> - 2003-02-26 20:45:29
|
Update of /cvsroot/xine/xine-lib/src/input In directory sc8-pr-cvs1:/tmp/cvs-serv9367/src/input Modified Files: input_dvd.c Log Message: adjust input_dvd to handle DVDNAV_WAIT events properly (that is: wait for the fifos to become empty) Index: input_dvd.c =================================================================== RCS file: /cvsroot/xine/xine-lib/src/input/input_dvd.c,v retrieving revision 1.129 retrieving revision 1.130 diff -u -r1.129 -r1.130 --- input_dvd.c 20 Feb 2003 16:01:57 -0000 1.129 +++ input_dvd.c 26 Feb 2003 20:45:18 -0000 1.130 @@ -628,6 +628,19 @@ /* return NULL to indicate end of stream */ return NULL; } + case DVDNAV_WAIT: + { + int buffers = this->stream->video_fifo->size(this->stream->video_fifo); + if (this->stream->audio_fifo) + buffers += this->stream->audio_fifo->size(this->stream->audio_fifo); + /* we wait until the fifos are empty, ... well, we allow one remaining buffer, + * because a flush might be in progress. */ + if (buffers <= 1) + dvdnav_wait_skip(this->dvdnav); + else + xine_usec_sleep(50000); + } + break; default: printf("input_dvd: FIXME: Unknown event (%i)\n", event); break; @@ -1556,6 +1569,10 @@ /* * $Log$ + * Revision 1.130 2003/02/26 20:45:18 mroi + * adjust input_dvd to handle DVDNAV_WAIT events properly + * (that is: wait for the fifos to become empty) + * * Revision 1.129 2003/02/20 16:01:57 mroi * syncing to libdvdnav 0.1.5 and modifying input plugin accordingly * quoting the ChangeLog: |