diff options
author | Guenter Bartsch <guenter@users.sourceforge.net> | 2002-03-20 23:12:58 +0000 |
---|---|---|
committer | Guenter Bartsch <guenter@users.sourceforge.net> | 2002-03-20 23:12:58 +0000 |
commit | d1eca278036b0abedb86545257a7c1b026d1d0d8 (patch) | |
tree | 6340dbab0f37669ddf38f02f09729d6863bf7d7d /src/xine-engine/video_decoder.c | |
parent | f461a6cb075255690fcab513648911110b63dca6 (diff) | |
download | xine-lib-d1eca278036b0abedb86545257a7c1b026d1d0d8.tar.gz xine-lib-d1eca278036b0abedb86545257a7c1b026d1d0d8.tar.bz2 |
steps towards dvd playback:
- cleanup / more types of discontinuity handling in metronom
- disc detection based on nav-packets
small video_out fix to make exiting xine easier in case it gets stuck
CVS patchset: 1599
CVS date: 2002/03/20 23:12:58
Diffstat (limited to 'src/xine-engine/video_decoder.c')
-rw-r--r-- | src/xine-engine/video_decoder.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/xine-engine/video_decoder.c b/src/xine-engine/video_decoder.c index 6604d2c33..cf6eccb43 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.78 2002/03/16 20:53:50 guenter Exp $ + * $Id: video_decoder.c,v 1.79 2002/03/20 23:12:58 guenter Exp $ * */ @@ -106,7 +106,7 @@ void *video_decoder_loop (void *this_gen) { pthread_mutex_unlock (&this->finished_lock); - this->metronom->video_stream_start (this->metronom); + this->metronom->handle_video_discontinuity (this->metronom, DISC_STREAMSTART, 0); break; @@ -186,7 +186,17 @@ void *video_decoder_loop (void *this_gen) { this->video_in_discontinuity = 1; - this->metronom->expect_video_discontinuity (this->metronom, buf->disc_off); + this->metronom->handle_video_discontinuity (this->metronom, DISC_RELATIVE, buf->disc_off); + + this->video_in_discontinuity = 0; + break; + + case BUF_CONTROL_NEWPTS: + printf ("video_decoder: new pts %lld\n", buf->disc_off); + + this->video_in_discontinuity = 1; + + this->metronom->handle_video_discontinuity (this->metronom, DISC_ABSOLUTE, buf->disc_off); this->video_in_discontinuity = 0; break; |