]> git.sesse.net Git - vlc/commitdiff
Fix subtitle delay < 0
authorClément Stenac <zorglub@videolan.org>
Sun, 6 Feb 2005 16:54:12 +0000 (16:54 +0000)
committerClément Stenac <zorglub@videolan.org>
Sun, 6 Feb 2005 16:54:12 +0000 (16:54 +0000)
DAAP compile fix

modules/demux/subtitle.c
modules/services_discovery/daap.c
src/input/var.c

index d1e7a66ebe8c500dcc7e9cba87656e589462712d..cafc285c4a84095767385560a04236c46fd6460c 100644 (file)
@@ -508,7 +508,7 @@ static int Demux( demux_t *p_demux )
     if( p_sys->i_subtitle >= p_sys->i_subtitles )
         return 0;
 
-    i_maxdate = p_sys->i_next_demux_date;
+    i_maxdate = p_sys->i_next_demux_date - var_GetTime( p_demux->p_parent, "spu-delay" );;
     if( i_maxdate <= 0 && p_sys->i_subtitle < p_sys->i_subtitles )
     {
         /* Should not happen */
index c5e98a3726752786f84ab8437e66c2f79b690b97..378425c23b90668f81ba1ee6ef8c601e97cfdb58 100644 (file)
@@ -632,7 +632,7 @@ static void FreeHost( services_discovery_t *p_sd, dhost_t *p_host )
                                                  FIND_ANYWHERE );
     if( p_playlist )
     {
-        playlist_NodeDelete( p_playlist, p_host->p_node, VLC_TRUE );
+        playlist_NodeDelete( p_playlist, p_host->p_node, VLC_TRUE , VLC_TRUE);
         vlc_object_release( p_playlist );
     }
 
index dbd7b9a068aa134c11588d4323d8b75f8895e1bc..699c8defd7d7ecb73343de5694f30524a72db3ca 100644 (file)
@@ -694,14 +694,16 @@ static int EsDelayCallback ( vlc_object_t *p_this, char const *psz_cmd,
 {
     input_thread_t *p_input = (input_thread_t*)p_this;
 
-    /*Change i_pts_delay to make sure es are decoded in time*/
-    if (newval.i_int < 0 || oldval.i_int < 0 )
-    {
-        p_input->i_pts_delay -= newval.i_int - oldval.i_int;
-    }
 
     if( !strcmp( psz_cmd, "audio-delay" ) )
+    {
+        /*Change i_pts_delay to make sure es are decoded in time*/
+        if (newval.i_int < 0 || oldval.i_int < 0 )
+        {
+            p_input->i_pts_delay -= newval.i_int - oldval.i_int;
+        }
         input_ControlPush( p_input, INPUT_CONTROL_SET_AUDIO_DELAY, &newval );
+    }
     else if( !strcmp( psz_cmd, "spu-delay" ) )
         input_ControlPush( p_input, INPUT_CONTROL_SET_SPU_DELAY, &newval );
     return VLC_SUCCESS;