summaryrefslogtreecommitdiff
path: root/src/xine-engine/video_decoder.c
diff options
context:
space:
mode:
authorGuenter Bartsch <guenter@users.sourceforge.net>2001-06-23 19:45:47 +0000
committerGuenter Bartsch <guenter@users.sourceforge.net>2001-06-23 19:45:47 +0000
commitee8df4f4d8e2088da9dbc38e3230fad1de64908f (patch)
tree945c14e183c1c36bf91050e036efa67ae205e5e3 /src/xine-engine/video_decoder.c
parent5e9ccc6f1f1689a317e574f48d3acedce3d11a40 (diff)
downloadxine-lib-ee8df4f4d8e2088da9dbc38e3230fad1de64908f.tar.gz
xine-lib-ee8df4f4d8e2088da9dbc38e3230fad1de64908f.tar.bz2
fixed race between metronom and xine engine, small audio plugin api change to improve responsiveness (unfinished), small demux_mpeg_block bugfix (alignment for DVD plugin)
CVS patchset: 218 CVS date: 2001/06/23 19:45:47
Diffstat (limited to 'src/xine-engine/video_decoder.c')
-rw-r--r--src/xine-engine/video_decoder.c24
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;