lavfi/vf_crop: use ff_formats_pixdesc_filter().

This commit is contained in:
Nicolas George 2020-04-16 16:40:53 +02:00
parent 563e1df5d6
commit df123590f0
1 changed files with 4 additions and 17 deletions

View File

@ -94,24 +94,11 @@ typedef struct CropContext {
static int query_formats(AVFilterContext *ctx)
{
AVFilterFormats *formats = NULL;
int fmt, ret;
for (fmt = 0; av_pix_fmt_desc_get(fmt); fmt++) {
const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(fmt);
if (desc->flags & AV_PIX_FMT_FLAG_BITSTREAM)
continue;
if (!(desc->flags & AV_PIX_FMT_FLAG_HWACCEL)) {
// Not usable if there is any subsampling but the format is
// not planar (e.g. YUYV422).
if ((desc->log2_chroma_w || desc->log2_chroma_h) &&
!(desc->flags & AV_PIX_FMT_FLAG_PLANAR))
continue;
}
ret = ff_add_format(&formats, fmt);
if (ret < 0)
return ret;
}
int ret;
ret = ff_formats_pixdesc_filter(&formats, 0, AV_PIX_FMT_FLAG_BITSTREAM | FF_PIX_FMT_FLAG_SW_FLAT_SUB);
if (ret < 0)
return ret;
return ff_set_common_formats(ctx, formats);
}