Wednesday, 25 April 2012

Digital Cinema Package Tutorial


In this tutorial I detail how to create a Digital Cinema Package (DCP) from a quicktime video file.  The source video in this example was HD 1920x1080, 25 frames per second in the ProRes codec.  In order to be sure that the DCP will work on any server I convert it to standard cinema 2K pixels and slow it down to 24 fps.  This demonstration is done on MAC but all operations can be done on PC as well.


DISCLAIMER: SINCE RELEASING THIS POST I HAVE BEEN CONTACTED BY PROFESSIONAL DCP ENCODING LABS POINTING OUT FLAWS IN THE WAY OpenDCP CREATES DCPs.  PLEASE READ DAVID MARGOLIS'S POST IN THE COMMENTS SECTION BELOW AND CONSIDER USING A PROFESSIONAL LAB.


The standard DCP resolutions are:
2K  4K
2048 x 858 (2.39 aspect ratio)  4096 x 1716 (2.39 aspect ratio)
1998 x 1080 (1.85 aspect ratio)  3996 x 2160 (1.85 aspect ratio)

Some DCP servers will play back HD 1920x1080 but given that I rarely have a chance to test a DCP before a screening I opt to convert to standard resolutions.

Video is encoded as Jpeg 2000 image sequences and audio is encoded as uncompressed PCM in a WAV container at 24 bits per sample, 48 kHz or 96 kHz. These are then wrapped in MXF containers as designated by Digital Cinema Initiatives.

The software I use in this example is After Effects (although it could be done in most NLE or compositing packages), Audacity and OpenDCP.

A big thanks to Ian Banks, Clive Gillman and Alice Black at the DCA for allowing me to test the DCPs at their fantastic cinema while I was learning the process.

Step 1: Converting video to standard 2K image sequences.

In After Effects I import the video file and drag it onto the film strip icon in the project window to create a new composition which matches the video.

Next, in the Composition Settings dialogue box I change the composition resolution to 1998x1080.  This is the standard 2K 1.85 aspect ratio resolution.  I now have black bars to the left and right of the original video.  I could scale the video up to fill the composition but opt against it so as not to soften the video.

I now add the composition to the render cue and change the format in the Output Module to Tiff Sequence.  If your project has a 10bit or greater colour depth then set Depth to 'Trillions of Colors'.  My source in this example was 8-bit so I left it at 'Millions of Colors'.

I then click on Output To and create a folder in which to store the Tiff sequence and click render.

Step 2: Converting Audio to DCP standard.

I drag and drop the Quicktime file into Audacity (freeware) and use the Change Speed effect to slow the audio down by 4%.  This converts it from 25 to 24 frames a second.

From the drop down arrow at the left of the stereo track I choose Split Stereo Track.  I then double click  on the left channel and choose File, Export Selection.

Under format I choose Other Uncompressed Files, then click Options and set the Header to WAV (Microsoft) and the Encoding to Signed 24 bit PCM.  I then save the file with an "_L" suffix (for left channel).  I then do the same for the right channel with the suffix "_R".

Step 3: Converting the Tiffs into Jpeg2000.

I launch Open DCP (freeware) and leave the Jpeg2000 Encoder Parameters and Image Parameters at their default settings.  I then add the Tiff directory created previously to the Input Directory and create a new folder to hold the Jpeg2000 images under the Output Directory.  Next I click Convert and wait for the Jpeg2000 images to be rendered.

Step 4: Creating the MXF files.


In OpenDCP I switch to the MXF Creator.  I leave MXF Parameters at default and open the folder containing the Jpeg2000 images under Picture Input.  Under Output Files I create a new folder with the suffix "_DCP" and save the file with the suffix "_V.mxf" to label it as the video MXF.  I then click Create MXF.

Next I change the Source in MXF parameters to WAV, keeping the Sound Parameters at Stereo and enter the left and right channel audio in the Sound Input.  Under Output File, in the I save the file with the suffix "_A.mxf" in the DCP folder.  I then click Create MXF.  (According to dcpinfo.com, the Academy require a minimum of three audio channels, left, right and centre, for a DCP to qualify for an Academy Award.  However DCP server systems seem happy with two channels of audio.)

Step 5: Creating the DCP.

Now in OpenDCP I switch to DCP package.  In Composition Parameters I enter the title and any other info.  Then under Reel I enter the video MXF in Picture and the sound MXF in Sound.  The duration of frames should match but if they are out by one frame then use the arrows to reduce the duration of the longer MXF to match the shorter.  Now click Create DCP and select the DCP folder you created for the MXF files to house the Asset Map etc.

The final result should look like this, a folder containing everything a DCP server needs to play your film.  The DCP should be loaded onto a Linux formatted drive, housed in a Dataport hard drive caddy for ingestion onto a DCP server.  I've had success with an NTFS formated Lacie Rugged external drive but this is not recommended.  Knut Erik Evensen has written a great guide to best common practice on delivering DCP's.

The film in this demonstration was Rose Hendry's award nominated short Egg & Fag.