[FFmpeg-devel] OpenEXR Encoder Intentions

Vincent Olivier vincent at up4.com
Fri Apr 26 19:57:51 CEST 2013

Hi guys,

For your consideration, I'm stating my intention to add an OpenEXR encoder in the existing "exr.c" code that only contains a decoder for now, with the following features:

	• Port the to 32-bit float EXR file writing code of the microexr library to "really" native C into FFMPEG for  "rgb24" input.

	• Add optional 32-bit (single) floating point S-gamut/S-log2 RGB chromacities to ACES RGB chromacities computations

And here are some potential future developments I could delve into later:

	• Port the PIZ compression algorithm from the C++ original OpenEXR library to native C. But this is an optional "nice to have".

	• Rewrite the existing FFMPEG EXR decoder to better match the encoder.

	• Fixed-precision to floating point port of the 422 to 444 YUV libswcale resampling code.

	• Fixed-precision to floating point port of the YUV to RGB libswcale conversion code.

	• Add support for Frame-level multithreading

	• Add support for Slice-level multithreading

	• (maybe, only maybe) Port the whole float to half and then 16-bit float EXR file writing code

I'm not committing to anything nor asking anything for now. I'm only letting you know what my intentions are at the moment. I'm open to comments, suggestions, advices, etc. I will still be reading code and specs for the next couple of days and only then put down some C lines of my own.



More information about the ffmpeg-devel mailing list