[vlc-devel] commit: decoders: use vlc_custom_create, generic objects (except in input) ( Rémi Denis-Courmont )

git version control git at videolan.org
Wed Jan 27 20:05:59 CET 2010


vlc | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Wed Jan 27 20:16:58 2010 +0200| [c1abcb019a04234e50764d30c8b6cb63620eeff9] | committer: Rémi Denis-Courmont 

decoders: use vlc_custom_create, generic objects (except in input)

As far as I know, the distinction only matters anymore in the input
loop, for E/S out decoders (due to the evil ObjectKillChildren).

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c1abcb019a04234e50764d30c8b6cb63620eeff9
---

 modules/stream_out/mosaic_bridge.c       |    2 +-
 modules/stream_out/transcode/transcode.c |    2 +-
 src/input/decoder.c                      |    6 ++++--
 src/input/demux.c                        |    5 +++--
 src/misc/image.c                         |    3 ++-
 5 files changed, 11 insertions(+), 7 deletions(-)

diff --git a/modules/stream_out/mosaic_bridge.c b/modules/stream_out/mosaic_bridge.c
index 417765d..89e6deb 100644
--- a/modules/stream_out/mosaic_bridge.c
+++ b/modules/stream_out/mosaic_bridge.c
@@ -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 );
diff --git a/modules/stream_out/transcode/transcode.c b/modules/stream_out/transcode/transcode.c
index 4d7d368..454196e 100644
--- a/modules/stream_out/transcode/transcode.c
+++ b/modules/stream_out/transcode/transcode.c
@@ -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 );
diff --git a/src/input/decoder.c b/src/input/decoder.c
index 6cf4358..fbb70c3 100644
--- a/src/input/decoder.c
+++ b/src/input/decoder.c
@@ -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,
diff --git a/src/input/demux.c b/src/input/demux.c
index d2cddb2..1a3cd83 100644
--- a/src/input/demux.c
+++ b/src/input/demux.c
@@ -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 );
diff --git a/src/misc/image.c b/src/misc/image.c
index 03733d6..c917f58 100644
--- a/src/misc/image.c
+++ b/src/misc/image.c
@@ -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;
 




More information about the vlc-devel mailing list