* ./modules/access_output/udp.c: if the clock needs to be reset, we do not
authorSam Hocevar <sam@videolan.org>
Sat, 24 May 2003 11:53:12 +0000 (11:53 +0000)
committerSam Hocevar <sam@videolan.org>
Sat, 24 May 2003 11:53:12 +0000 (11:53 +0000)
     wait or we will face delay issues as reported in #794. Fix inspired from
     a suggestion by John Michael Zorko.

THANKS
modules/access_output/udp.c

diff --git a/THANKS b/THANKS
index df44de2..338bbf6 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -1,4 +1,4 @@
-$Id: THANKS,v 1.7 2003/05/20 15:51:03 hartman Exp $
+$Id: THANKS,v 1.8 2003/05/24 11:53:12 sam Exp $
 
 VLC makes extensive use of the following persons' code:
 
@@ -36,6 +36,7 @@ Jean-Pierre Kuypers <Kuypers@sri.ucl.ac.be> - French translation
 Jeffrey Baker <jwbaker@acm.org> - port of the ALSA plugin to the ALSA 1.0 API
 Joel Arvidsson <dogai@privat.utfors.se> - Swedish translation
 Joeri van Dooren <joeri@van.dooren.be> - OS X icon
+Johen Michael Zorko <zorko@att.net> - fix for delay issues in udp sout
 John Paul Lorenti <jpl31@columbia.edu> - ALSA device selection patch
 Julien Blache <jb@technologeek.org> - disc ejection code
 Mark Gritter <mgritter@kealia.com> - fix for netlist packet leak in demuxPSI
index fba7b4b..130df1f 100644 (file)
@@ -2,7 +2,7 @@
  * udp.c
  *****************************************************************************
  * Copyright (C) 2001, 2002 VideoLAN
- * $Id: udp.c,v 1.7 2003/04/01 22:29:41 massiot Exp $
+ * $Id: udp.c,v 1.8 2003/05/24 11:53:11 sam Exp $
  *
  * Authors: Laurent Aimar <fenrir@via.ecp.fr>
  *          Eric Petit <titer@videolan.org>
@@ -383,7 +383,6 @@ static void ThreadWrite( vlc_object_t *p_this )
             return;
         }
         i_wait = i_date + p_buffer->i_dts;
-        mwait( i_wait );
 
         if( i_wait - mdate() > MAX_ERROR ||
             i_wait - mdate() < -MAX_ERROR )
@@ -391,6 +390,11 @@ static void ThreadWrite( vlc_object_t *p_this )
             msg_Warn( p_sout, "resetting clock" );
             i_date = mdate() - p_buffer->i_dts;
         }
+        else
+        {
+            mwait( i_wait );
+        }
+
         send( p_thread->i_handle,
               p_buffer->p_buffer,
               p_buffer->i_size,