diff options
author | wm4 <nfxjfg@googlemail.com> | 2015-05-07 23:37:18 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2015-05-08 00:44:06 +0200 |
commit | 72e7553125e61847d9cab77fb7de62440dca746b (patch) | |
tree | be0b1f8a2473a7bb9f68936566fd4111e2589374 | |
parent | 3b123353950934e12d04c5c98c98262a196dd651 (diff) | |
download | ffmpeg-72e7553125e61847d9cab77fb7de62440dca746b.tar.gz |
pngdec: set correct range
AV_PIX_FMT_GRAY8/16 are considered YUV formats, and the color_range is
not set - so the API user will have to assume limitted range. (Unless
the API user adds a special-case for the PNG decoder.)
Just export the correct range - full range.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/pngdec.c | 2 | ||||
-rw-r--r-- | tests/ref/fate/png-ya16 | 2 | ||||
-rw-r--r-- | tests/ref/fate/png-ya8 | 2 |
3 files changed, 4 insertions, 2 deletions
diff --git a/libavcodec/pngdec.c b/libavcodec/pngdec.c index 1f8a77b37b..72d75fba80 100644 --- a/libavcodec/pngdec.c +++ b/libavcodec/pngdec.c @@ -633,6 +633,8 @@ static int decode_idat_chunk(AVCodecContext *avctx, PNGDecContext *s, return AVERROR_INVALIDDATA; } + avctx->color_range = AVCOL_RANGE_JPEG; + if ((ret = ff_thread_get_buffer(avctx, &s->picture, AV_GET_BUFFER_FLAG_REF)) < 0) return ret; ff_thread_finish_setup(avctx); diff --git a/tests/ref/fate/png-ya16 b/tests/ref/fate/png-ya16 index 07906c4a70..dffdaf7038 100644 --- a/tests/ref/fate/png-ya16 +++ b/tests/ref/fate/png-ya16 @@ -1,2 +1,2 @@ #tb 0: 1/25 -0, 0, 0, 1, 49152, 0x93ce1cd5 +0, 0, 0, 1, 49152, 0x0801ce78 diff --git a/tests/ref/fate/png-ya8 b/tests/ref/fate/png-ya8 index 3a5c99d9eb..1318af80c6 100644 --- a/tests/ref/fate/png-ya8 +++ b/tests/ref/fate/png-ya8 @@ -1,2 +1,2 @@ #tb 0: 1/25 -0, 0, 0, 1, 49152, 0xed73bf03 +0, 0, 0, 1, 49152, 0x5a1481f8 |