diff options
Diffstat (limited to 'src/xine-engine/video_decoder.c')
-rw-r--r-- | src/xine-engine/video_decoder.c | 24 |
1 files changed, 8 insertions, 16 deletions
diff --git a/src/xine-engine/video_decoder.c b/src/xine-engine/video_decoder.c index c5a6eebe5..caf40bbae 100644 --- a/src/xine-engine/video_decoder.c +++ b/src/xine-engine/video_decoder.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: video_decoder.c,v 1.25 2001/06/17 19:14:26 guenter Exp $ + * $Id: video_decoder.c,v 1.26 2001/06/23 19:45:47 guenter Exp $ * */ @@ -37,26 +37,14 @@ void *video_decoder_loop (void *this_gen) { while (running) { - /* printf ("video_decoder: getting buffer...\n"); */ + /* printf ("video_decoder: getting buffer...\n"); */ buf = this->video_fifo->get (this->video_fifo); if (buf->input_pos) this->cur_input_pos = buf->input_pos; - /* printf ("video_decoder: got buffer %d\n", buf->type); */ - - /* - * Call update status callback function if - * there is a video decoder initialized, like - * in mpeg1/2 playback. - */ - /* - if(this->cur_video_decoder_plugin != NULL) { - if(this->status == XINE_PLAY) - this->status_callback (this->status); - } - */ - + /* printf ("video_decoder: got buffer %d\n", buf->type); */ + switch (buf->type) { case BUF_CONTROL_START: @@ -69,6 +57,8 @@ void *video_decoder_loop (void *this_gen) { this->video_finished = 0; pthread_mutex_unlock (&this->xine_lock); + this->metronom->video_stream_start (this->metronom); + break; case BUF_VIDEO_MPEG: @@ -102,6 +92,8 @@ void *video_decoder_loop (void *this_gen) { case BUF_CONTROL_END: + this->metronom->video_stream_end (this->metronom); + if (this->cur_video_decoder_plugin) { this->cur_video_decoder_plugin->close (this->cur_video_decoder_plugin); this->cur_video_decoder_plugin = NULL; |