[FFmpeg-devel] libavcodec/exr : add support for datawindow who exceed display window

Paul B Mahol onemda at gmail.com
Sat Apr 9 06:54:26 CEST 2016


On 4/9/16, Martin Vignali <martin.vignali at gmail.com> wrote:
> 2016-04-08 22:11 GMT+02:00 Paul B Mahol <onemda at gmail.com>:
>
>> On 4/7/16, Martin Vignali <martin.vignali at gmail.com> wrote:
>> > Hello,
>> >
>> > in attach, a patch with some modifications in size/data window
>> management,
>> > in order to manage
>> > negative datawindow/display window, and datawindow who can exceed
>> > display
>> > window
>> >
>> > Size of the picture is now set from min and max value of the display
>> window
>> > (before the patch, xmin, ymin of the display window are ignored (and
>> assume
>> > to be 0))
>> >
>> > With the previous patch (fix channel detection), official samples
>> > ./scanline/Blobbies.exr
>> > can now be correctly decode.
>> >
>> >
>> > DataWindow bigger than display window is a feature of the openExr.
>> > It can be use in some softwares, (for example to improve blur quality)
>> > Following the official documentation, for display, we need to use the
>> > display window only.
>> >
>> >
>> > In this patch, xmin, xmax, ymin, ymax, are now int32_t instead of
>> uint32_t,
>> > because these values can be negative. (See officiel sample
>> ./Displaywindow
>> >
>> http://download.savannah.nongnu.org/releases/openexr/openexr-images-1.7.0.tar.gz
>> > )
>> >
>> > Comments welcome
>>
>> Crashes with:
>>
>> openexr-images-1.7.0/DisplayWindow/t03.exr
>>
>> Strange, this sample didn't crash for me (Clang, OS 10.9). Decode it's
> still not good after the patch but it's piz compression.
> Can you tell me, what configure line, you use ?

clang version 3.7.0 (tags/RELEASE_370/final)
Target: x86_64-unknown-linux-gnu
Thread model: posix
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/4.8
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/4.8.5
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/4.9
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/4.9.3
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/5.2.1
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.8
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.8.5
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.3
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/5.2.1
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/5.2.1
Candidate multilib: .;@m64
Selected multilib: .;@m64

ffmpeg version git-2016-04-08-1a42beb Copyright (c) 2000-2016 the
FFmpeg developers
  built with clang version 3.7.0 (tags/RELEASE_370/final)
      configuration: --extra-cflags=-I/usr/local/include
--extra-ldflags=-L/usr/local/lib --cc=clang --cxx=clang++ --as=clang
--disable-ffserver --disable-ffplay --disable-indevs --disable-outdevs
--enable-gpl --enable-indev=lavfi --enable-indev=alsa --enable-nonfree
--enable-openssl --enable-outdev=alsa --enable-shared --disable-static
--enable-ladspa --enable-netcdf --enable-fontconfig
--enable-libfreetype --enable-libzimg --enable-libass
--enable-librubberband --disable-stripping --enable-indev=x11grab_xcb
--enable-x11grab --samples=../fate-suite

>
>
>> Please use int and unsigned instead of int32_t and uint32_t.
>>
>>
> Where do you think it's better to use int or unsigned int instead of
> int32_t, uint_32t ?
> Exr Context ?
> Decode block ?
> Both ?

Everywhere.

>
> Thanks for the comments.
>
> Martin
> Jokyo Images
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>


More information about the ffmpeg-devel mailing list