[CinCV TNG] OpenJPEG files inside CinGG outdated?

Andrew Randrianasulu randrianasulu at gmail.com
Mon May 7 00:53:47 CEST 2018

В сообщении от Sunday 06 May 2018 22:15:10 Phyllis Smith написал(а):
> We appreciate the update on libraries because there are a lot of them used
> in cinelerra and hard to keep track.
> On Sun, May 6, 2018 at 11:53 AM, Andrew Randrianasulu <
> randrianasulu at gmail.com> wrote:
> > Hello, all!
> >
> > I was looking into all those new/old codec news, and found OpenJPEG has
> > some
> > speed work last year:
> > http://www.openjpeg.org/2017/10/04/OpenJPEG-2.3.0-released
> > ...
> > so, because I rely on Cinelerra-provided new libraries (system partially
> > outdated), may be files used by Cin-GG can be updated? Right now they at
> > openjpeg-2.1.0-20160221 . I will try to do some tests locally.
> GG will look into updating JPEG soon if no problems - faster jpeg would be
> a nice improvement.  If you do find any problems while testing, please let
> us know.  Hopefully there should be none since it has been out for awhile
> now.

So, after minor hacking in configure.ac and buildscript (I simply downloaded 
openjpeg-2.3.0 release and replaced deleted original xz with tar.gz version) 
Cinelerra-GG was built, and appear to work, but speed on jpeg2000 mxf file 
still way too slow for realtime, but at least picture is decoded correctly (? 
as far as I can see) and you can single-step in file!

File to test:
(download zip, unzip it, open tos_dcp_test_04/tos_video.mxf )

I was unable to find smaller (2k) free sample for those mxf-wrapped jpeg2k 
sequences, but ordinary j2k files appear to work fine.

for example this file - 

Additional link about openjpeg in mxf:

FFmpeg for DCI encoding 
 From version 1.2 onward, FFmpeg can encode DCI-compliant jpeg-2000, that DCP 
servers can read, and take advantage of the versatility of FFmpeg for videos
 Sample Usage 
/usr/local/bin/ffmpeg  -v debug -r 25 -i 
~/Downloads/decomptes-leader_charbon_HD_25i_bip_a_50.mov  -r 25 -an -profile:v 
3 \
          -cinema_mode 1  -format 0 -numresolution 6  -compression_level 
30 -prog_order 4 -pix_fmt gbrp12 \
          -threads 12 -vf rgb2xyz /stuff/j2c/%06d.j2c

"-v debug" : more verbosity
"-r 25" : assume 25 fps on input
" -i ~/Downloads/decomptes-leader_charbon_HD_25i_bip_a_50.mov" : input video 
"-r 25" : output fps 
"-an" : no audio
"-profile:v 3" : utilise profile number 3 from libopenjpeg library : that 
is "cinema2k" (use "4" for "cinema4k")
"-cinema_mode 1" : turn DCI mode on
"-format 0" : output .j2c, not .jp2
"-numresolution 6" : allow 6 different resolutions for decoding
"-compression_level 30" ; this is not the bandwidth ; one could use less 
compression, but it's better to have margin in order to stay under 250 MBits/s
"-prog_order 4" : necessary for DCI
"-pix_fmt gbrp12" : output should have 12 bit per channel
"-threads 12" : encode 12 images at a time
"-vf rgb2xyz" : convert colors from RGB HD to DCI XYZ using the filter rgb2xyz
"/stuff/j2c/%06d.j2c" : save jpeg-2000 in the folder /stuff/j2c/, using a 
6-number naming scheme
EDIT : rgb2xyz filter is now obsolete, as FFmpeg has xyz built-in

--------end quote-----

(it still outputs individual images, you need to wrap them with another tool )

DCI is apparently standard for digital cinema, I never ever saw any such file in 
my life before!

> > Also, some urls in thirdparty/downloads.txt are outdated?
> This file is just a note file used by the developer and hopefully future
> programmers! to be able to more easily find a required library.

More information about the Cinelerra mailing list