diff libmpdemux/demuxer.h @ 26037:bee99864f397

New member in demuxer_t: reference_clock. If it's != MP_NOPTS_VALUE ds_fill_buffer() will keep on demuxing until the pts of the next_pts is <= reference_clock. It guarantees the compliance with the buffering model indicated by the transmitter of the multiplex and a long-time stability of playback (at least for me). In any case up to a maximum of 64 packets are accumulated to prevent memory hogging and leaks.
author nicodvb
date Sat, 23 Feb 2008 10:31:44 +0000
parents 4129c8cfa742
children ec5749eb6f5f
line wrap: on
line diff
--- a/libmpdemux/demuxer.h	Fri Feb 22 21:24:35 2008 +0000
+++ b/libmpdemux/demuxer.h	Sat Feb 23 10:31:44 2008 +0000
@@ -194,6 +194,7 @@
   off_t movi_end;
   stream_t *stream;
   double stream_pts;       // current stream pts, if applicable (e.g. dvd)
+  double reference_clock;
   char *filename; ///< Needed by avs_check_file
   int synced;  // stream synced (used by mpeg)
   int type;    // demuxer type: mpeg PS, mpeg ES, avi, avi-ni, avi-nini, asf