[vlc-devel] [PATCH 05/14] filter: allow the owner not to provide a buffer callback

Rémi Denis-Courmont remi at remlab.net
Tue Sep 17 17:32:38 CEST 2019


Le tiistaina 17. syyskuuta 2019, 17.22.33 EEST Steve Lhomme a écrit :
> In this case we just allocate a picture from the filter output format.
> ---
>  include/vlc_filter.h | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/include/vlc_filter.h b/include/vlc_filter.h
> index 0c756ce10ec..0bc10e91997 100644
> --- a/include/vlc_filter.h
> +++ b/include/vlc_filter.h
> @@ -26,6 +26,7 @@
>  #define VLC_FILTER_H 1
> 
>  #include <vlc_es.h>
> +#include <vlc_picture.h>
> 
>  /**
>   * \defgroup filter Filters
> @@ -160,7 +161,11 @@ struct filter_t
>   */
>  static inline picture_t *filter_NewPicture( filter_t *p_filter )
>  {
> -    picture_t *pic = p_filter->owner.video->buffer_new( p_filter );
> +    picture_t *pic;
> +    if ( p_filter->owner.video != NULL && p_filter->owner.video->buffer_new
> != NULL)

Two checks look redundant, though anyway this callback should go away 
altogether eventually.

> +        pic = p_filter->owner.video->buffer_new( p_filter );
> +    else
> +        pic = picture_NewFromFormat( &p_filter->fmt_out.video );
>      if( pic == NULL )
>          msg_Warn( p_filter, "can't get output picture" );
>      return pic;


-- 
Rémi Denis-Courmont
http://www.remlab.net/





More information about the vlc-devel mailing list