diff --git a/libavfilter/formats.c b/libavfilter/formats.c index 58762806bf..43718e4655 100644 --- a/libavfilter/formats.c +++ b/libavfilter/formats.c @@ -108,17 +108,17 @@ AVFilterFormats *ff_merge_formats(AVFilterFormats *a, AVFilterFormats *b, To avoid that, pretend that there are no common formats to force the insertion of a conversion filter. */ if (type == AVMEDIA_TYPE_VIDEO) - for (i = 0; i < a->format_count; i++) - for (j = 0; j < b->format_count; j++) { - const AVPixFmtDescriptor *adesc = av_pix_fmt_desc_get(a->formats[i]); - const AVPixFmtDescriptor *bdesc = av_pix_fmt_desc_get(b->formats[j]); - alpha2 |= adesc->flags & bdesc->flags & PIX_FMT_ALPHA; - chroma2|= adesc->nb_components > 1 && bdesc->nb_components > 1; - if (a->formats[i] == b->formats[j]) { - alpha1 |= adesc->flags & PIX_FMT_ALPHA; - chroma1|= adesc->nb_components > 1; + for (i = 0; i < a->format_count; i++) + for (j = 0; j < b->format_count; j++) { + const AVPixFmtDescriptor *adesc = av_pix_fmt_desc_get(a->formats[i]); + const AVPixFmtDescriptor *bdesc = av_pix_fmt_desc_get(b->formats[j]); + alpha2 |= adesc->flags & bdesc->flags & PIX_FMT_ALPHA; + chroma2|= adesc->nb_components > 1 && bdesc->nb_components > 1; + if (a->formats[i] == b->formats[j]) { + alpha1 |= adesc->flags & PIX_FMT_ALPHA; + chroma1|= adesc->nb_components > 1; + } } - } // If chroma or alpha can be lost through merging then do not merge if (alpha2 > alpha1 || chroma2 > chroma1)