@ -86,28 +86,31 @@ AVFilterFormats *avfilter_make_format_list(const enum PixelFormat *pix_fmts)
return formats ;
}
int avfilter_add_colorspace ( AVFilterFormats * avff , enum PixelFormat pix_fmt )
int avfilter_add_colorspace ( AVFilterFormats * * avff , enum PixelFormat pix_fmt )
{
enum PixelFormat * pix_fmts =
av_realloc ( avff - > formats , sizeof ( avff - > formats ) * ( avff - > format_count + 1 ) ) ;
enum PixelFormat * pix_fmts ;
if ( ! ( * avff ) & & ! ( * avff = av_mallocz ( sizeof ( AVFilterFormats ) ) ) )
return AVERROR ( ENOMEM ) ;
pix_fmts = av_realloc ( ( * avff ) - > formats ,
sizeof ( ( * avff ) - > formats ) * ( ( * avff ) - > format_count + 1 ) ) ;
if ( ! pix_fmts )
return AVERROR ( ENOMEM ) ;
avff - > formats = pix_fmts ;
avff - > formats [ avff - > format_count + + ] = pix_fmt ;
( * avff ) - > formats = pix_fmts ;
( * avff ) - > formats [ ( * avff ) - > format_count + + ] = pix_fmt ;
return 0 ;
}
AVFilterFormats * avfilter_all_colorspaces ( void )
{
AVFilterFormats * ret ;
AVFilterFormats * ret = NULL ;
enum PixelFormat pix_fmt ;
ret = av_mallocz ( sizeof ( AVFilterFormats ) ) ;
for ( pix_fmt = 0 ; pix_fmt < PIX_FMT_NB ; pix_fmt + + )
if ( ! ( av_pix_fmt_descriptors [ pix_fmt ] . flags & PIX_FMT_HWACCEL ) )
avfilter_add_colorspace ( ret , pix_fmt ) ;
avfilter_add_colorspace ( & ret , pix_fmt ) ;
return ret ;
}