[FFmpeg-devel] [PATCH 12/24] avcodec/mjpegenc: add support for non-YUVJ formats

Paul B Mahol onemda at gmail.com
Wed May 2 01:22:10 EEST 2018


On 5/2/18, Michael Niedermayer <michael at niedermayer.cc> wrote:
> Hi
>
> On Tue, May 01, 2018 at 09:40:01PM +0200, Paul B Mahol wrote:
>> Signed-off-by: Paul B Mahol <onemda at gmail.com>
>> ---
>>  libavcodec/mjpegenc.c      | 5 ++++-
>>  libavcodec/mpegvideo_enc.c | 3 +--
>>  tests/lavf-regression.sh   | 2 +-
>>  3 files changed, 6 insertions(+), 4 deletions(-)
>
> This doesnt work

It does work, if you want full range set full range as option.
Check visually colors.
This happens because rgb is still marked incorrectly as limited range,
so limited is picked instead.

>
> first create a input file
> ./ffmpeg -f lavfi -i testsrc=640x480 test.ppm
> (if you like check that this has correct white and black) 0,0,0 and
> 255,255,255
>
> now convert to jpeg
> ./ffmpeg -i test.ppm test.jpg
> gimp test.jpg
>
> white and black have RGB values: 16,16,16 and 235,235,235 thats not correct
> and also looks wrong
>
> the strict_std_compliance check that was before this cannot be just droped
>
> If you want jpeg images to interoperate with all software they must be full
>
> range
> the limited range is a not entirely official feature. So it should not be
> used by default
> (that is AFAIK, things may have changed and maybe theres a official way now
>  but from what i remember there was not for images)

Better check actual paper.


More information about the ffmpeg-devel mailing list