Petit guide pour la création d’un DCP
Toutes les étapes pour créer vous même un fichier vidéo pour un projecteur de cinéma numérique avec Photoshop et OpenDCP.
Cette page a été écrite grâce aux conseils du site : http://home-made-dcp.over-blog.fr/ Site au demeurant très intéressant (et très bordélique aussi).
Les fichiers faits sont conforme DCP et testés en grandeur nature sur un serveur Doremi DCP2000.
Vous aurez besoin de :
- Une machine sous Linux pour formater et écrire le disque dur en ext3 dans le cas ou votre vidéo fait plus de 4 minutes, ou le cas échéant, de ExtFS sous OSX (payant, avec période d’essai)
- Photoshop à partir de la CS4, ou le cas échéant After Effects. OSX ou Windows, comme vous voulez.
- Une clé USB formaté en FAT32 ou un disque dur qui sera dédié pour le DCP (il sera repartitionné et reformaté)
- OpenDCP, logiciel libre et gratuit. Il tourne sous Windows, Linux, et OSX
- Une vidéo en HD 1080 à 24, 25 ou 29,97 images par seconde. Progressive ou desentrelacée. Les médias entrelacés sont interdits. Je vous conseille un programme en excellente qualité, et qui a été bien vérifié. L’idéal serait qu’elle soit déjà en 5.1
- Du stockage en conséquence et rapide sur la machine de calcul, celle avec Photoshop/After et OpenDCP. Raid 0 ou 5 hautement conseillé. Comptez 1,26 Gbps de débit brut de base. Soit plus de 600 Go pour une heure. En 8 bits.
- Six œufs frais
- Beaucoup de temps, environ deux fois 5 heures pour 20 minutes de vidéo, pour un Core i7 à 2,66 GHz, avec un raid 5 sur 3 disques de 1,5 To
- Un logiciel de traitement audio : Wavelab, Audition, Audacity… ou sox après la lecture de ce post
- Un logiciel de montage vidéo quelconque pour extraire l’audio de la vidéo
La conversion se fait en plusieurs étapes :
- convertir votre vidéo en suite d’image TIFF
- convertir la suite d’image TIFF en suite d’image JPEG2000
- wrapper la suite d’image JPEG2000 dans un fichier MXF
- extraire l’audio
- convertir l’audio en 24 bits
- normaliser l’audio à -12 dbFS
- exporter l’audio en séparant les canaux
- wrapper l’audio dans un MXF
- créer le DCP : produire les XML qui accompagnent les MXF
- repartitionner et formater le disque dur en ext3
- écrire le DCP sur le disque dur
- Enjoy !
Attachez votre ceinture : on commence.
Convertir votre vidéo en suite d’image TIFF
Mise à jour : attention avec Photoshop
Ouvrez Photoshop.
J’utilise Photoshop, mais After peut convenir, en sachant que j’ai eu de gros problèmes d’engorgement de débit de disque sous Windows avec lui.
Si vous préférez utiliser After, adaptez ce que je fais avec Photoshop, pour au final, faire la même chose.
Vérifiez que votre espace de travail RVB est bien en sRGB. Dans le menu Edition / Couleurs.

Ouvrez la vidéo dans Photoshop.
Changez la taille de la zone de travail :

Définissez la largeur à 1998 pixels

Pourquoi 1998 ? Parce qu’il y a trois formats en cinéma numérique:
- le Flat – F, soit du 1998×1080 en 2K, ce qui fait un ratio de 1,85
- le Scope – S, soit du 2048×858 en 2K, ce qui fait un ratio de 2,39
- le Full – C, soit du 2048×1080 en 2K, ce qui fait un ratio de 1.90
Nous allons faire du flat, c’est ce qu’il y a de plus proche avec la HD.
Ensuite, nous allons ajouter les petites bandes noires à gauche et a droite : ajoutez un calque, et mettez le sous le calque de votre vidéo:

Utilisez le pot de peinture, en noir, pour remplir le Calque 2.

Vous avez maintenant un programme prêt à l’export. Vous pouvez bien sur ajouter des logos, ou faire de la retouche, cela ne change pas.

Fichier / Exportation / Rendu vidéo

Vérifiez que :
- Emplacement / Nom : « UN_NOM_DE_FICHIER_SANS_ESPACE_« AVEC UN « _ » à la fin !
- Choisissez un dossier vide
- Option de fichier / Séquence d’images TIFF, avec 5 chiffres
- Bouton paramètre : sans compression, entrelacé, IBM PC, pyramide d’images, pas de calques
- Option de rendu : sans alpha, et fréquence d’images du document
Lancez… et patientez
Convertir la suite d’image TIFF en suite d’image JPEG2000
Ouvrez OpenDCP, onglet JPEG2000

Laissez tout par défaut, sauf si vous savez ce que vous faites, hormis :
- frame rate : celui de votre vidéo
- Threads : égal ou inférieur au nombre de processeurs de votre machine : ici un i7 avec Hyper Treading 2×4 coeurs
- Input et Output directory
- Bandwidth : ne montez pas trop en débit, en 125 ça fonctionne très bien (le JPEG2000 est très efficace)
Attention, le dossier output doit être vide.
Lancez… et patientez encore très longtemps.
Vous pouvez ouvrir les fichiers JPEG2000 avec Photoshop, en définissant le profil de couleur en XYZ.
Dans le menu édition :

Sinon… et bien vous verrez bien la tête de vos couleurs…
Wrapper la suite d’image JPEG2000 dans un fichier MXF
Respirez, le plus long est fait.

Dans OpenDCP, onglet MXF Creator :
- Source JPEG2000
- on fait du MXF SMPTE
- réglez la bonne fréquence d’image
En entrée, votre séquence JPEG2000, et en sortie, un fichier MXF. Donnez lui un nom court, sans accents, et sans espaces.
L’opération est assez rapide : le temps de copie des JPEG2000.
Extraire l’audio
Avec votre logiciel de montage préféré, extrayez le mix audio (wav ou aiff). Il doit avoir la même durée, et être parfaitement synchrone avec la vidéo. Vous pouvez ouvrir le fichier vidéo avec Audition si vous l’avez.
Vous pouvez aussi utiliser sox en suivant cette procédure : Exporter l’audio d’une vidéo pour un DCP. Si cela fonctionne pour vous, passez directement à l’étape Wrapper l’audio dans un MXF, plus bas…
Convertir l’audio en 24 bits
Ouvrez votre fichier audio avec votre éditeur préféré, et lancez une conversion en 24 bits si votre source est en 16 bits.
Le DCP impose le 24 bits.
Normaliser l’audio à -12 dBFS
La crête la plus forte du signal doit être à -12dBFS, c’est imposé par le DCP (en télévision pour un prêt à diffuser, on impose une crête à -9 dbFS). Par contre ici, la dynamique audio n’est pas vraiment restreinte, alors faites vous plaisir.
Normalisez bien tout les canaux ensembles avec le même gain, même en 5.1. Attention, si le 5.1 est recommandé, n’improvisez pas un mix 5.1 sans les outils et les compétences pour le faire (le risque est d’avoir des décalages de phase ou des masques de fréquence apparaitre entre les canaux).
Exporter l’audio en séparant les canaux
Faites un fichier wav, PCM mono, 24 bits, 48 kHz.
Un fichier par canal.
Wrapper l’audio dans un MXF
Retournez dans OpenDCP, onglet MXF Creator

- Source WAV (c’est bien, vous suivez…)
- on fait du MXF SMPTE
- réglez la bonne fréquence d’image, mais ça, vous le saviez déjà
Envoyez vos WAV dans Sound Input, après avoir défini Stereo ou 5.1
En sortie, le deuxième fichier MXF pour l’audio. Donnez lui la aussi un nom court, sans accents, et sans espaces.
Créer le DCP : produire les XML qui accompagnent les MXF
Le DCP c’est, au minimum :
- un MXF pour la vidéo en JPEG2000
- un MXF pour l’audio en WAV PCM
- un fichier VOLINDEX.xml (trivial) qui appel un ASSETMAP
- un fichier ASSETMAP.xml qui référence les deux XML, ainsi qu’un CPL et un PKL
- un fichier *_cpl.xml qui référence votre programme : durée, ratio, titre, etc…
- un fichier *_pkl.xml qui identifie les deux MXF : taille, hash (sha256), mime type.
- tout ça à la racine d’un disque dur/clé usb.
Les XML doivent être produit par OpenDCP : c’est plus simple, plus rapide et plus sûr. Si vous voulez utiliser des fonctions avancées (playlist, cryptage), passez sur une appli pro.
Donc, dans OpenDCP, onglet DCP Package, définissez les titres : Composition Parameters
- Content Title : utilisez le bouton Title Generator

Vous devez avoir compris le principe… Pas d’espace ni d’accents ni autre chose que des majuscules pour le titre du film.
Je laisse studio vide, ça marche sans.
- définissez les autre champs comme moi. Je pense que vous pouvez avoir plus de lattidute pour ça – ce ne sont que des métadonnées tierces – mais je n’ai pas pu faire trop d’essais.
- je n’ai jamais utilisé XML digital signature

- Pour Reel, c’est très simple mais n’inversez pas picture et sound
- Vérifiez que les durations soient bien identiques
- Create DCP pour lancer l’ensemble. Patentez, c’est un peu long, le temps du calcul des SHA256 sur les deux MXF
J’ai eu un bug avec la version Windows (0.0.22) sur la taille « vue » du MXF vidéo par OpenDCP dans le XML _pkl. Si vous avez le problème, utilisez OpenDCP sous OSX ou Linux (ne copiez que les deux MXF si vous avez préparé l’ensemble sous Windows comme moi).
Repartitionner et formater le disque dur en ext3
Deux solutions : utilisez Linux si vous en avez un sous la main, ou alors utilisez ExtFS for Mac OS X.
Sous Linux
Vérifier votre disque : la table de partition doit être de type DOS/MBR et ne doit y avoir qu’une seule partition (en fait, la configuration par défaut). Si le disque vient d’un Mac (GUID/GPT), il faut repartitionner.
Vous pouvez utiliser fdisk, ou gparted.
Puis formatez en ext3.
sudo mkfs.ext3 -j -I 128 /dev/sdx0 -L "DCP"
Remplacez sdx0 par votre périphérique.
Le « -I 128″ est obligatoire.
N’utilisez pas des outils graphique si vous n’êtes pas sûr que ce paramètre est bien utilisé.
Utilisez tune2fs pour ne pas avoir de problème si votre disque fait beaucoup d’allez retours entre le serveur de projection et votre machine
sudo tune2fs -i 0 -c 1000 /dev/sdx0
Sous Mac
Avec ExtFS d’installé et en utilisant l’utilitaire de disque, effacez le disque en « Extended Format ». C’est tout.
Ecrire le DCP sur le disque dur
Faite une simple copie à la racine du disque du DCP, c’est à dire des 4 XML et 2 MXF.
Ensuite, vous pouvez faire une dernière vérification (facultative) : calculez la somme de contrôle sha256 des deux MXF, puis allez dans le fichier _pkl.xml, vous avez 3 assets : la vidéo, l’audio, et le _cpl.xml
Dans la balise <hash> vous avez, codé en base64, la calculez la somme de contrôle sha256 calculée par OpenDCP.
Avec ce petit script :
#!/bin/sh INPUT=$1; echo $INPUT > /tmp/hash.txt openssl enc -d -base64 -in /tmp/hash.txt -out /tmp/hash.txt.done cat /tmp/hash.txt.done hexdump /tmp/hash.txt.done rm /tmp/hash.txt rm /tmp/hash.txt.done
que vous exécutez avec en paramètre votre hash en base64 base64.sh JzU4RGZ9XwTjm+M2UkEWcb/qOMs= Vous obtiendrez le sha256 calculé par OpenDCP
0000000 27 35 38 44 66 7d 5f 04 e3 9b e3 36 52 41 16 71 0000010 bf ea 38 cb 0000014
soit ici : 27353844667d5f04e39be33652411671
A utiliser si vous avec un problème de reconnaissance du fichier par le serveur de projection. Comparez aussi la taille de vos fichiers et ceux inscrits dans le pkl, j’ai eu des bugs avec la version d’OpenDCP sous Windows.
Enjoy !
Ingestez le serveur avec votre disque dur.
(Vous pouvez maintenant vous cuire une omelette avec vos œufs, devant un bon film, vous l’avez mérité)
Mise à jour du 06/04/2012
Citation de la procédure en utilisant sox
Contact