vf_colorspace: don't spam console with warnings if range is unspecified.

This commit is contained in:
Ronald S. Bultje 2016-10-24 16:03:16 -04:00
parent be885da342
commit f141ac4d0b

View File

@ -163,6 +163,8 @@ typedef struct ColorSpaceContext {
yuv2yuv_fn yuv2yuv;
double yuv2rgb_dbl_coeffs[3][3], rgb2yuv_dbl_coeffs[3][3];
int in_y_rng, in_uv_rng, out_y_rng, out_uv_rng;
int did_warn_range;
} ColorSpaceContext;
// FIXME deal with odd width/heights (or just forbid it)
@ -523,8 +525,14 @@ static int get_range_off(AVFilterContext *ctx, int *off,
enum AVColorRange rng, int depth)
{
switch (rng) {
case AVCOL_RANGE_UNSPECIFIED:
av_log(ctx, AV_LOG_WARNING, "Input range not set, assuming tv/mpeg\n");
case AVCOL_RANGE_UNSPECIFIED: {
ColorSpaceContext *s = ctx->priv;
if (!s->did_warn_range) {
av_log(ctx, AV_LOG_WARNING, "Input range not set, assuming tv/mpeg\n");
s->did_warn_range = 1;
}
}
// fall-through
case AVCOL_RANGE_MPEG:
*off = 16 << (depth - 8);