#include <vlc_image.h>
#include <vlc_filter.h>
+#include <vlc_modules.h>
#include "../video_filter/mosaic.h"
static int video_filter_buffer_allocation_init( filter_t *p_filter, void *p_data )
{
- p_filter->pf_vout_buffer_new = video_new_buffer_filter;
- p_filter->pf_vout_buffer_del = video_del_buffer_filter;
+ p_filter->pf_video_buffer_new = video_new_buffer_filter;
+ p_filter->pf_video_buffer_del = video_del_buffer_filter;
p_filter->p_owner = p_data;
return VLC_SUCCESS;
}
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 );
p_sys->p_decoder->p_owner = malloc( sizeof(decoder_owner_sys_t) );
if( !p_sys->p_decoder->p_owner )
{
- vlc_object_detach( p_sys->p_decoder );
vlc_object_release( p_sys->p_decoder );
return NULL;
}
msg_Err( p_stream, "cannot find decoder" );
}
free( p_sys->p_decoder->p_owner );
- vlc_object_detach( p_sys->p_decoder );
vlc_object_release( p_sys->p_decoder );
return NULL;
}
if( p_sys->p_decoder->p_description )
vlc_meta_Delete( p_sys->p_decoder->p_description );
- vlc_object_detach( p_sys->p_decoder );
vlc_object_release( p_sys->p_decoder );
free( p_owner );