[FFmpeg-trac] #1279(undetermined:new): Transform X'Y'Z' to RGB via lutrgb

FFmpeg trac at avcodec.org
Mon May 7 11:30:26 CEST 2012


#1279: Transform X'Y'Z' to RGB via lutrgb
-------------------------------------+-------------------------------------
             Reporter:  wolfgangw    |                    Owner:
                 Type:  enhancement  |                   Status:  new
             Priority:  wish         |                Component:
              Version:  git-master   |  undetermined
             Keywords:  XYZ j2k      |               Resolution:
             Blocking:               |               Blocked By:
Analyzed by developer:  0            |  Reproduced by developer:  0
-------------------------------------+-------------------------------------

Comment (by wolfgangw):

 Yes, XYZ denotes a colorspace (See
 http://en.wikipedia.org/wiki/CIE_1931_color_space for details). It is used
 in Digital Cinema systems where image essence (in the form of JPEG2000
 files wrapped in MXF containers like the one attached) is delivered in
 X'Y'Z' (the 's denote a gamma compound to 2.6). The reasoning behind this
 decision was to accommodate for possible future display devices
 (projectors) with wider gamuts.

 12 bits per component is mandatory for image essence wrapped in those MXF
 containers used in Digital Cinema.

 Re. libopenjpeg decoder and bit depths: Something seems to be amiss in
 your testing. A build of ffmpeg/libopenjpeg here (version
 N-34352-gf68742b) will decode and playback the attached MXF (or any other
 Digital Cinema compliant image MXF) just fine. See the attached ffplay
 .j2k-mxf-playback.messages. It seems that it is forced to rgb24, though,
 indeed.

 Re. 12bpc RGB sample: See
 https://github.com/downloads/wolfgangw/digital_cinema_tools/rgb-bary-
 12bpc.tiff. This is the source for the attached JPEG2000 image

 Re. OPJ_COLOR_SPACE: Yes, that is a problem, if merely a cosmetic one.
 I'll look into it. Note that Digital Cinema installations will assume
 X'Y'Z' and produce correct colors from this file.

 PS: There is an easy way to generate and reproduce the Digital Cinema
 specific files mentioned here: See
 https://github.com/wolfgangw/digital_cinema_tools_distribution/wiki for a
 setup script to install cinemaslides (and a bunch of related tools), a
 tool to build slideshow DCPs (Digital Cinema Packages). You can throw
 pretty much any type of image file at it. You will be able to inspect the
 intermediary files generated: DCDM source, JPEG2000 result, MXF container.
 The setup works on linux systems, virtualboxes too.

 PPS: In case the reader is stumbling over the uppercase "Digital Cinema"
 notation: I write it like so in order to emphasize the "platform"
 character of all this. "Digital Cinema" is the standardized systems
 environment that is currently replacing film projection worldwide (if
 interested start with SMPTE 429-2).

 Pretty much all of its properties are well-defined in standards documents.
 X'Y'Z', colorspace transforms, gamma 2.6, 12 bits per component, possibly
 encrypted essence, XML infrastructure files, DCP (Digital Cinema Package):
 All these are bread and butter for everyone working with Digital Cinema.

 It's a big one and it would be awesome if we could improve ffmpeg's
 related feature set. Carlos, thanks for looking into it!

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/1279#comment:4>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list