X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Fvideo_filter%2Fpsychedelic.c;h=ab6f92e53f032517a62e561817dc8b366042738b;hb=997c5859d2ab8e7bc613d1c8654335a92c41b0f8;hp=c66b74794d14986f9fcb8496fad21b624396b78a;hpb=7588d6a1def6b9b5a9296342f77d51d4ca6ffc88;p=vlc diff --git a/modules/video_filter/psychedelic.c b/modules/video_filter/psychedelic.c index c66b74794d..ab6f92e53f 100644 --- a/modules/video_filter/psychedelic.c +++ b/modules/video_filter/psychedelic.c @@ -52,7 +52,7 @@ vlc_module_begin(); set_shortname( N_( "Psychedelic" )); set_capability( "video filter2", 0 ); set_category( CAT_VIDEO ); - set_subcategory( SUBCAT_VIDEO_VFILTER2 ); + set_subcategory( SUBCAT_VIDEO_VFILTER ); add_shortcut( "psychedelic" ); set_callbacks( Create, Destroy ); @@ -115,6 +115,7 @@ static void Destroy( vlc_object_t *p_this ) if( p_filter->p_sys->p_image ) image_HandlerDelete( p_filter->p_sys->p_image ); + p_filter->p_sys->p_image = NULL; free( p_filter->p_sys ); } @@ -134,8 +135,9 @@ static picture_t *Filter( filter_t *p_filter, picture_t *p_pic ) int x,y; uint8_t u,v; - video_format_t fmt_out = {0}; picture_t *p_converted; + video_format_t fmt_out = {0}; + fmt_out.p_palette = NULL; if( !p_pic ) return NULL; @@ -171,11 +173,10 @@ static picture_t *Filter( filter_t *p_filter, picture_t *p_pic ) } /* luminance */ - p_filter->p_vlc->pf_memcpy( + p_filter->p_libvlc->pf_memcpy( p_outpic->p[Y_PLANE].p_pixels, p_pic->p[Y_PLANE].p_pixels, p_outpic->p[Y_PLANE].i_lines * p_outpic->p[Y_PLANE].i_pitch ); - /* image visualization */ fmt_out = p_filter->fmt_out.video; fmt_out.i_width = p_filter->fmt_out.video.i_width*p_filter->p_sys->scale/150; @@ -246,7 +247,8 @@ static picture_t *Filter( filter_t *p_filter, picture_t *p_pic ) p_outpic->b_progressive = p_pic->b_progressive; p_outpic->b_top_field_first = p_pic->b_top_field_first; - p_pic->pf_release( p_pic ); + if( p_pic->pf_release ) + p_pic->pf_release( p_pic ); return p_outpic; }