Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc> --- libavfilter/vf_scale.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/libavfilter/vf_scale.c b/libavfilter/vf_scale.c index f741419e7e..bd5c63aa9b 100644 --- a/libavfilter/vf_scale.c +++ b/libavfilter/vf_scale.c @@ -406,6 +406,7 @@ static int filter_frame(AVFilterLink *link, AVFrame *in) AVFilterLink *outlink = link->dst->outputs[0]; AVFrame *out; const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(link->format); + const AVPixFmtDescriptor *out_desc = av_pix_fmt_desc_get(outlink->format); char buf[32]; int in_range; @@ -496,7 +497,11 @@ static int filter_frame(AVFilterLink *link, AVFrame *in) table, out_full, brightness, contrast, saturation); - out->color_range = out_full ? AVCOL_RANGE_JPEG : AVCOL_RANGE_MPEG; + // color_range describes YUV, it is undefined for RGB + if ((out_desc->flags & AV_PIX_FMT_FLAG_RGB) && out_desc->nb_components != 1) { + out->color_range = AVCOL_RANGE_JPEG; + } else + out->color_range = out_full ? AVCOL_RANGE_JPEG : AVCOL_RANGE_MPEG; } av_reduce(&out->sample_aspect_ratio.num, &out->sample_aspect_ratio.den, -- 2.16.2 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel