]> git.sesse.net Git - vlc/commitdiff
* modules/codec/theora.c: don't forget to delete the sout instance.
authorGildas Bazin <gbazin@videolan.org>
Sun, 28 Sep 2003 21:54:21 +0000 (21:54 +0000)
committerGildas Bazin <gbazin@videolan.org>
Sun, 28 Sep 2003 21:54:21 +0000 (21:54 +0000)
* modules/mux/ogg.c: fix for embedding theora in Ogg.

modules/codec/theora.c
modules/mux/ogg.c

index f0d09da1d1a3bdb44f19e45b8310a06b34bcf23d..6849588379aa9c4f1ae59fd117ba2b8ae0c22dea 100644 (file)
@@ -2,7 +2,7 @@
  * theora.c: theora decoder module making use of libtheora.
  *****************************************************************************
  * Copyright (C) 1999-2001 VideoLAN
- * $Id: theora.c,v 1.7 2003/09/02 22:36:55 gbazin Exp $
+ * $Id: theora.c,v 1.8 2003/09/28 21:54:20 gbazin Exp $
  *
  * Authors: Gildas Bazin <gbazin@netcourrier.com>
  *
@@ -466,6 +466,11 @@ static int EndDecoder( decoder_t *p_dec )
     if( !p_sys->b_packetizer )
         vout_Request( p_dec, p_sys->p_vout, 0, 0, 0, 0 );
 
+    if( p_sys->p_sout_input != NULL )
+    {
+        sout_InputDelete( p_sys->p_sout_input );
+    }
+
     theora_info_clear( &p_sys->ti );
     theora_comment_clear( &p_sys->tc );
 
index c974f088c86dfa953bee81a1f7813e3cddeb6801..8cc4d82caf26ed776232a506b7b7fa46766087b2 100644 (file)
@@ -2,7 +2,7 @@
  * ogg.c: ogg muxer module for vlc
  *****************************************************************************
  * Copyright (C) 2001, 2002 VideoLAN
- * $Id: ogg.c,v 1.11 2003/09/28 19:58:19 gbazin Exp $
+ * $Id: ogg.c,v 1.12 2003/09/28 21:54:21 gbazin Exp $
  *
  * Authors: Laurent Aimar <fenrir@via.ecp.fr>
  *          Gildas Bazin <gbazin@netcourrier.com>
@@ -791,7 +791,8 @@ static int Mux( sout_mux_t *p_mux )
         p_stream = (ogg_stream_t*)p_input->p_sys;
         p_data   = sout_FifoGet( p_input->p_fifo );
 
-        if( p_stream->i_fourcc != VLC_FOURCC( 'v', 'o', 'r', 'b' ) )
+        if( p_stream->i_fourcc != VLC_FOURCC( 'v', 'o', 'r', 'b' ) &&
+            p_stream->i_fourcc != VLC_FOURCC( 't', 'h', 'e', 'o' ) )
         {
             sout_BufferReallocFromPreHeader( p_mux->p_sout, p_data, 1 );
             p_data->p_buffer[0] = PACKET_IS_SYNCPOINT;      // FIXME