summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuenter Bartsch <guenter@users.sourceforge.net>2001-09-25 23:30:38 +0000
committerGuenter Bartsch <guenter@users.sourceforge.net>2001-09-25 23:30:38 +0000
commitf2bac7c0e93563e13686e163af9f692f95dc3ec1 (patch)
tree506c1f160e2af8269831cffed99145f51d5598d8
parentb5051f6d26f333c3f345de4695ccd353bf69dfe6 (diff)
downloadxine-lib-f2bac7c0e93563e13686e163af9f692f95dc3ec1.tar.gz
xine-lib-f2bac7c0e93563e13686e163af9f692f95dc3ec1.tar.bz2
don't expect discontinuities forever
CVS patchset: 695 CVS date: 2001/09/25 23:30:38
-rw-r--r--src/xine-engine/metronom.c14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/xine-engine/metronom.c b/src/xine-engine/metronom.c
index 9dd08d922..ad52e2012 100644
--- a/src/xine-engine/metronom.c
+++ b/src/xine-engine/metronom.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: metronom.c,v 1.27 2001/09/22 13:28:41 mshopf Exp $
+ * $Id: metronom.c,v 1.28 2001/09/25 23:30:38 guenter Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -404,14 +404,14 @@ static void metronom_expect_audio_discontinuity (metronom_t *this) {
printf ("metronom: expecting audio discontinuity\n");
- this->audio_discontinuity = 1;
+ this->audio_discontinuity = 10;
}
static void metronom_expect_video_discontinuity (metronom_t *this) {
printf ("metronom: expecting video discontinuity\n");
- this->video_discontinuity = 1;
+ this->video_discontinuity = 10;
}
static uint32_t metronom_got_video_frame (metronom_t *this, uint32_t pts) {
@@ -458,6 +458,10 @@ static uint32_t metronom_got_video_frame (metronom_t *this, uint32_t pts) {
this->video_wrap_offset);
}
+ /* don't expect discontinuities forever */
+ if (this->video_discontinuity)
+ this->video_discontinuity--;
+
/*
* audio and video wrap are not allowed to differ
* for too long
@@ -578,6 +582,10 @@ static uint32_t metronom_got_audio_samples (metronom_t *this, uint32_t pts, uint
this->audio_wrap_offset);
}
+ /* don't expect discontinuities forever */
+ if (this->audio_discontinuity)
+ this->audio_discontinuity--;
+
/*
* audio and video wrap are not allowed to differ
* for too long