return s->pf_send( s, id, b );
}
+/****************************************************************************
+ * Encoder
+ ****************************************************************************/
+
+VLC_EXPORT( encoder_t *, sout_EncoderCreate, ( vlc_object_t *obj ) );
+#define sout_EncoderCreate(o) sout_EncoderCreate(VLC_OBJECT(o))
+
/****************************************************************************
* Announce handler
****************************************************************************/
id->p_decoder->b_pace_control = true;
/* Create encoder object */
- id->p_encoder = vlc_object_create( p_stream, VLC_OBJECT_ENCODER );
+ id->p_encoder = sout_EncoderCreate( p_stream );
if( !id->p_encoder )
goto error;
vlc_object_attach( id->p_encoder, p_stream );
#include <vlc_image.h>
#include <vlc_stream.h>
#include <vlc_charset.h>
+#include <vlc_sout.h>
#include <libvlc.h>
static picture_t *ImageRead( image_handler_t *, block_t *,
{
encoder_t *p_enc;
- p_enc = vlc_object_create( p_this, VLC_OBJECT_ENCODER );
+ p_enc = sout_EncoderCreate( p_this );
if( p_enc == NULL )
return NULL;
#include <vlc_meta.h>
#include <vlc_block.h>
+#include <vlc_codec.h>
#include "input/input_interface.h"
mrl_Clean( &mrl );
return psz_chain;
}
+
+#undef sout_EncoderCreate
+encoder_t *sout_EncoderCreate( vlc_object_t *p_this )
+{
+ static const char type[] = "encoder";
+ return vlc_custom_create( p_this, sizeof( encoder_t ), VLC_OBJECT_GENERIC,
+ type );
+}