How to use Open Source DCP tools to change the sound in a DCP

Posted by knuterik on June 14th, 2010 filed in dcp

I sometimes use the command line tool asdcp-test from Cinecert to change the sound in a DCP instead of making a new DCP from scratch in Easydcp Creator.

This comes in handy if the DCP takes 8 hours to make and you are screening the movie in 2 hours and the sound must be changed.

Link to a zip file of the Snow Leopard binaries files I tested with in June 2010 ( asdcplib 1.6.36/asdcp-test, patched opencinematools, SVN openjpeg 2)

To change the sound in a DCP:
Keep the movie.jp2k.mxf with the jpeg2000 sequence and make a new sound movie.pcm.MXF with the 24 bit 48 khz wav sound files in the correct order: L,R,C,LFE,Ls,Rs.

/usr/local/bin/asdcp-test -p 24 -L -l 5.1 -c movie.pcm.mxf folderwith5.1sound/sound.L.wav folderwith5.1sound/sound.R.wav folderwith5.1sound/sound.C.wav folderwith5.1sound/sound.LFE.wav folderwith5.1sound/sound.Ls.wav folderwith5.1sound/sound.Rs.wav

Then make the new metadata with opencinematools:

/usr/local/bin/mkcpl --kind feature --title test --annotation test movie.jp2k.mxf movie.pcm.mxf > movie.cpl.xml

/usr/local/bin/mkpkl --issuer KES --annotation test movie.jp2k.mxf movie.pcm.mxf movie.cpl.xml > mymovie.pkl.xml

/usr/local/bin/mkmap --issuer KES movie.jp2k.mxf movie.pcm.mxf movie.cpl.xml mymovie.pkl.xml

I also did a test to see if you could use these open source tools with 25 fps DCPs in June 2010:
Openjpeg does not have a 25 fps option, only 24 and 48 fps. The 24 fps settings worked ok on the Doremi DCP-2000. The 48 fps setting could also be a possibility. ASDCPLIB and Opencinematools supports 25 fps.

Here is a link to a zip file of the snow leopard binaries files I tested this with (asdcplib 1.6.36, patched opencinematools, SVN openjpeg 2)

This is the now outdated thread on openjpeg google groups where the author of Opencinematools describes how to use the tools:
link to openjpeg google group

This is the updated commands I used to make a 25 fps DCP:
(I had used a trial of Adobe After Effects CS5 to make a 16 bit TIFF sequence with color and gamma converted to XYZ and 2.6)

Use terminal or make shell scripts that run these commands:
/usr/local/bin/image_to_j2k -cinema2K 24 -ImgDir foldername with Gamma and colorspace converted TIFF sequence/ -OutFor j2c

/usr/local/bin/asdcp-test -p 25 -L -c movie.jp2k.mxf foldername with jpeg2000 sequence

/usr/local/bin/asdcp-test -p 25 -L -l 5.1 -c movie.pcm.mxf folderwith5.1sound/sound.L.wav folderwith5.1sound/sound.R.wav folderwith5.1sound/sound.C.wav folderwith5.1sound/sound.LFE.wav folderwith5.1sound/sound.Ls.wav folderwith5.1sound/sound.Rs.wav

/usr/local/bin/mkcpl --kind feature --title test25 --annotation test25 movie.jp2k.mxf movie.pcm.mxf > movie.cpl.xml

/usr/local/bin/mkpkl --issuer KES --annotation test25 movie.jp2k.mxf movie.pcm.mxf movie.cpl.xml > mymovie.pkl.xml

/usr/local/bin/mkmap --issuer KES movie.jp2k.mxf movie.pcm.mxf movie.cpl.xml mymovie.pkl.xml

There are also some old binaries for Windows of acdcp-test, Openjpeg and opencinematools here:
http://code.google.com/p/opencinematools/

To compile asdcp-test yourself:
Source for asdcp-test/ASDCPLIB:
http://www.cinecert.com

Source for opencinematools:
http://code.google.com/p/opencinematools/

Patch for opencinematools to work with the newer ASDCPLIB:
Wolfgang Wohl´s patch
...Change opencinematools-1.1.2/src/mkcpl:592
592c592
< sprintf(buff, “%u %u”, ADesc.SampleRate.Numerator, ADesc.SampleRate.Denominator);
-
> sprintf(buff, “%u %u”, ADesc.EditRate.Numerator, ADesc.EditRate.Denominator);
to fix it.

Leave a Comment