]> git.sesse.net Git - vlc/commitdiff
decoders: use vlc_custom_create, generic objects (except in input)
authorRémi Denis-Courmont <remi@remlab.net>
Wed, 27 Jan 2010 18:16:58 +0000 (20:16 +0200)
committerRémi Denis-Courmont <remi@remlab.net>
Wed, 27 Jan 2010 19:05:56 +0000 (21:05 +0200)
As far as I know, the distinction only matters anymore in the input
loop, for E/S out decoders (due to the evil ObjectKillChildren).

modules/stream_out/mosaic_bridge.c
modules/stream_out/transcode/transcode.c
src/input/decoder.c
src/input/demux.c
src/misc/image.c

index 417765dfee7468f1c98b35270dd1616b4f7dd7f1..89e6deb88b966df97ffee85817e99af72f526cf5 100644 (file)
@@ -302,7 +302,7 @@ static sout_stream_id_t * Add( sout_stream_t *p_stream, es_format_t *p_fmt )
         return NULL;
 
     /* Create decoder object */
-    p_sys->p_decoder = vlc_object_create( p_stream, VLC_OBJECT_DECODER );
+    p_sys->p_decoder = vlc_object_create( p_stream, sizeof( decoder_t ) );
     if( !p_sys->p_decoder )
         return NULL;
     vlc_object_attach( p_sys->p_decoder, p_stream );
index 4d7d3686e99eae760ea2cdc0e69cc46246a0667a..454196efd5e4f21f1ec0c78505d89ee4980762d6 100644 (file)
@@ -553,7 +553,7 @@ static sout_stream_id_t *Add( sout_stream_t *p_stream, es_format_t *p_fmt )
     id->p_encoder = NULL;
 
     /* Create decoder object */
-    id->p_decoder = vlc_object_create( p_stream, VLC_OBJECT_DECODER );
+    id->p_decoder = vlc_object_create( p_stream, sizeof( decoder_t ) );
     if( !id->p_decoder )
         goto error;
     vlc_object_attach( id->p_decoder, p_stream );
index 6cf435877f40003ee1a67e7d8a0a44bd9e16b19a..fbb70c33ef01d47975cf682881f507c032fb0aed 100644 (file)
@@ -696,7 +696,8 @@ static decoder_t * CreateDecoder( input_thread_t *p_input,
     decoder_owner_sys_t *p_owner;
     es_format_t null_es_format;
 
-    p_dec = vlc_object_create( p_input, VLC_OBJECT_DECODER );
+    p_dec = vlc_custom_create( p_input, sizeof( *p_dec ), VLC_OBJECT_DECODER,
+                               "decoder" );
     if( p_dec == NULL )
         return NULL;
 
@@ -771,7 +772,8 @@ static decoder_t * CreateDecoder( input_thread_t *p_input,
         p_dec->b_need_packetized && !p_dec->fmt_in.b_packetized )
     {
         p_dec->p_owner->p_packetizer =
-            vlc_object_create( p_input, VLC_OBJECT_DECODER );
+            vlc_custom_create( p_input, sizeof( decoder_t ),
+                               VLC_OBJECT_DECODER, "packetizer" );
         if( p_dec->p_owner->p_packetizer )
         {
             es_format_Copy( &p_dec->p_owner->p_packetizer->fmt_in,
index d2cddb22e46c5101ab29a3f53e66221fee92275a..1a3cd838b351cbfb2616659d0605df73cb28acc0 100644 (file)
@@ -312,8 +312,9 @@ int demux_vaControlHelper( stream_t *s,
  ****************************************************************************/
 decoder_t *demux_PacketizerNew( demux_t *p_demux, es_format_t *p_fmt, const char *psz_msg )
 {
-    decoder_t *p_packetizer = vlc_object_create( p_demux, VLC_OBJECT_DECODER );
-
+    decoder_t *p_packetizer;
+    p_packetizer = vlc_custom_create( p_demux, sizeof( *p_packetizer ),
+                                      VLC_OBJECT_GENERIC, "demux packetizer" );
     if( !p_packetizer )
     {
         es_format_Clean( p_fmt );
index 03733d648c61eb15582ae73b6f34cc0510b8192f..c917f58af7c3e8639a45e815cb76e9b527b856e3 100644 (file)
@@ -648,7 +648,8 @@ static decoder_t *CreateDecoder( vlc_object_t *p_this, video_format_t *fmt )
 {
     decoder_t *p_dec;
 
-    p_dec = vlc_object_create( p_this, VLC_OBJECT_DECODER );
+    p_dec = vlc_custom_create( p_this, sizeof( *p_dec ), VLC_OBJECT_GENERIC,
+                               "image decoder" );
     if( p_dec == NULL )
         return NULL;