Skip to content

How to use Digital Cinema Tools

wolfgangw edited this page Apr 17, 2012 · 30 revisions

### How to generate a DCP with [cinemaslides](https://github.com/wolfgangw/digital_cinema_tools/wiki/Cinemaslides)

Open a terminal and run

cinemaslides -t dcp -o DCP_TEST --encrypt -x cut,1 <path to an image file> <path to an audio file>

This will build an encrypted digital cinema package:

  • -t dcp (or --type dcp) means that you want to make a DCP.

  • -o DCP_TEST (or --dcp-out DCP_TEST) specifies the final output location of the DCP.

  • --encrypt will tell cinemaslides to encrypt all generated trackfiles.

  • -x cut,1 (or --transition-and-timing cut,1) means the transition between 2 adjacent images will be a simple cut and each image will last for 1 second. Mind cut,1 which has no spaces between cut and , and 1

  • <path to image file> is just generic notation for the path to a file, like images/master/foo.tif

See cinemaslides' main page for more.

### How to generate a KDM for an encrypted package with [cinemaslides](https://github.com/wolfgangw/digital_cinema_tools/wiki/Cinemaslides)

In a terminal run

cinemaslides --kdm --cpl DCP_TEST/cpl_<use tab completion to complete to the long number here> --target $CINEMACERTSTORE/leaf.signed.pem --start 1
  • --kdm tells cinemaslides to generate a KDM.

  • --cpl <path to CPL> tells cinemaslides to find the content keys referenced in this CPL and pack them up in the KDM.

  • --target $CINEMACERTSTORE/leaf.signed.pem will tell cinemaslides for whom the KDM is intended (Or more exactly: Encrypt the delivered content keys with the public key in leaf.signed.pem. Only the owner of the related private key will be able to decrypt the content keys delivered by the KDM). This is the option where you will specify the certificate of a digital cinema server (You will not be able to decrypt that keys stored in that KDM). But for demonstration purposes we target this KDM at our own example certificate (leaf.signed.pem, generated by Setup) so we can decrypt it later on and confirm that everything is working ok.

  • --start 1' will set the start of the KDM's validity period to 1 day from now. We use 1 day from now` here to ensure that if you run this immediately after installing cinemaslides will not complain about overlapping validity of the KDM signer's certificate and the requested KDM validity (There are extensive checks in place to make sure the generated KDM is valid and will be accepted by servers).

### How to validate and inspect a DCP with [dcp_inspect](https://github.com/wolfgangw/backports#readme)

Run

dcp_inspect DCP_TEST
### How to decrypt a KDM's content

Run

kdm-decrypt.rb <path to KDM file> $CINEMACERTSTORE/leaf.key

where <path to KDM file> would be the path to the KDM generated above. This will of course only work if you targeted the KDM at your own public key certificate.

Like always with long paths or filenames: Use tab completion in your terminal to avoid typos (never ever literally type in a UUID, one of those long numbers which will show up in digital cinema filenames): Type k_ and hit TAB.

Clone this wiki locally