View Full Version : Digital Cinema Package
Felix_Opahle
05-13-2010, 09:36 AM
Hello everybody,
Iīm new to this forum but I was reading this great thread for two days and it is amazing, which amount of knowledge has come together in it.
Last year I did research for a small work for university and i finally ended up at Fraunhofers easyDCP(+) and the easyDCP Player. At that time, it was enough for me to find that solution (there is also a hardware based solution from Dolby, the SCC2000 Secure Content Creator, which can be connected to renderfarms but for a price much higher than any easyDCP creator can be). I had also found the opencinematools but I considered them dead cause I couldnīt find tutorials or howtos for using them....I hadnīt found this great forum yet. But now Iīm curious about making my first DCPs without the watermark in the upper left corner :drool5: and most important 3D DCPs for my actual work for university.
Concerning the encryption process: yes Pavel, youīre right. easyDCP+ can do the job. When I worked on the task last year, I spoke to the people at Fraunhofers about the encryption process and they told me they can help customers to create the needed keychains , KDMs etc. On the easyDCP+ product page it is metioned, that easyDCP uses software from the openSSL project....
Iīm not a software engineer and so the encryption-subject itself is too high for me at the moment, but I just wanted to confim Pavelīs assumption :001_smile: .
Greetings,
Felix
Time: 23:48
Status: Success!
Yeeaaah! I just created my first DCP with OCT! Ok, I involved AfterFX for the X'Y'Z transformation but now Iīll proceed to ImageMagick for the job. Had to solve the
"Expecting uncompressed essence, got format type 65534
File does not begin with FORM header
AUDIO_2.wav: Unknown file type, not ASDCP-compatible essence."
error with the Windows Extensible Wave but with the information from Peter + Wolfgang + SoX I could finish the creating-process!
Wonderful!
Felix_Opahle
05-15-2010, 01:27 PM
Ok, now I tried to use a workflow with ffmpeg and ImageMagick. Works fine and I get a nice folder full of *.tif files after all.
But when I use them with the image_to_j2k.exe I get the message
"AdobeDeflate compression support is not configured", he renders the tile and creates the j2c file but it is only 2KB large an contains just a black screen.
That didnīt occur when I converted the Tiffs created by AfterFX, there everything was fine. Can anybody help me with that? Iīm confused because that workflow with the open source applications is just what worked for most the people here and I thought the thing with AfterFX would cause more trouble....but now itīs completely different for me.
I use WinXP 32bit.
Thank you very much,
greetings
Felix
Wolfgang Woehl
05-15-2010, 11:40 PM
Felix, look at ImageMagick's '-compress' options ('convert -list compress') and try 'none' or 'lzw'. It seems your version of openjpeg is linked against a libtiff lacking deflate support. Wonder why, though ...
Pavel Klepinin
05-16-2010, 01:02 AM
Ok, now I tried to use a workflow with ffmpeg and ImageMagick. Works fine and I get a nice folder full of *.tif files after all.
But when I use them with the image_to_j2k.exe I get the message
"AdobeDeflate compression support is not configured", he renders the tile and creates the j2c file but it is only 2KB large an contains just a black screen.
That didnīt occur when I converted the Tiffs created by AfterFX, there everything was fine. Can anybody help me with that? Iīm confused because that workflow with the open source applications is just what worked for most the people here and I thought the thing with AfterFX would cause more trouble....but now itīs completely different for me.
I use WinXP 32bit.
Thank you very much,
greetings
Felix
I've had that kinds of errors working with tiffs that's why now I use ppm's as temp image format (video->ppm->tiff->DCP). The reason for me was that adobe (and maybe other applications) adds some unknown tags in tiffs, that image_to_j2k cannot recognize, so it gives up.
You can check how it's done in my script here (http://reduser.net/forum/showpost.php?p=536577&postcount=52) as well as use it.
Felix, look at ImageMagick's '-compress' options ('convert -list compress') and try 'none' or 'lzw'. It seems your version of openjpeg is linked against a libtiff lacking deflate support. Wonder why, though ...
And why is it named "AdobeDeflate" is there any adobe app's in his workflow?
Felix_Opahle
05-16-2010, 04:09 AM
Thanks, Wolfgang and Pavel, I could solve the issue.
I finally used the -compress option by myself last night and with the compression forced to "lzw" or "none" everything was fine. But I also wondered why the ImageMagick used adobe deflate by default, I thought "none" would be the standard compression setting in tiff.
Concerning the libtiff in OpenJpeg I can only imagine that the OpenJpeg I downloaded has been tweaked in some way. I couldnīt download it from www.openjpeg.org (http://www.openjpeg.org) becaue the site seems to be down for some days, I always get "network timeout"....can anybody confirm that or lays the problem at my browser? I was glad to find in a topic in this thread a link to a google code page, where I could download an openjpeg package. But the ImageMagick is genuine from their project page.
Thanks Pavel, I already used your cool script as guideline for my own command line batch commands and to understand the whole thing with the command line.
But when you mention, you use video->ppm->tiff->dcp then you also incorporate the tiff in one step. My chain is video(mov uncompressed)->png(via ffmpeg)->tiff(gamma and colorspace xyz via Imagemagick)->j2c(via image_to_j2k in OCT)->DCP. But as it seems to work now, the search for the error is mainly academic task :-) (sorry donīt know if you can say this in english that way)
Now the next thing will be 3D DCPs and I think your script will show me the way. Thank you very much.
Best regards,
Felix
Wolfgang Woehl
05-16-2010, 04:20 AM
Yes, http://www.openjpeg.org/ is down.
Pavel Klepinin
05-16-2010, 04:37 AM
But when you mention, you use video->ppm->tiff->dcp then you also incorporate the tiff in one step.
Yes, I've told not quite correctly. On some steps of my experiments, when I used tiffs for everything, some tags (as I remember adobe) incorporated in it. And it caused image_to_j2k's errors (thanks to Wolfgang showing me the way to solve it). And that's why I used ppm before tiff as well as ppm contain no tags.
Felix_Opahle
05-16-2010, 04:57 AM
Yes, I think I remember you talking about those tag-problems when I was reading through the amount of pages of this thread. I was surprised when my AfterFX Workflow didnīt create errors on the j2c encoding site.
Has anyone information about any reason, why openjpeg.org went offline? Or is it just a temporal failure?
And one last thing: are people still working on the encryption task? I see for tests or short films and so on, encryption is not really important but for a complete and fully functional workflow it would be interesting.
Thanks
greetings
Felix
Wolfgang Woehl
05-16-2010, 10:22 AM
Felix, openjpeg code lives at http://code.google.com/p/openjpeg/downloads/list
Wrt encryption etc., yes, working on it on and off. It's not number 1 on the list of things, though. But eventually we'll need it for some of our restoration projects. There's a number of use-cases outside of mainstream anti-piracy efforts.
sirdavid32
05-18-2010, 08:58 AM
is this the same process to follow over a dolby3d digital package?
Felix_Opahle
05-20-2010, 11:20 AM
As far as I know, in general there isnīt an difference on which system you do the playback of your DCP. When it follows the rules of a 3D DCP, then every 3D system should be able to play it properly (Xpand, RealD, Dolby3D/Infitec etc.). Thatīs the point of a standardized package like DCP.
Ok, the truth is that every 3D system has more or less problems with ghosting, what means that the glasses cannot seperate the two pictures completetly (depending on the amount of contrast between the frames etc.). So the 3D DCPs in the past had to be tuned for the specific display technology, a process called "Ghostbusting" (not so good for a standardized distribution of a DCP). As the developement of the Cinema-Servers is still in progress, ghostbusting will be implemented in the software / hardware and will be done during playback.
But in this thread the main topic wasnīt on 3D DCP, more on how to generate a DCP in general. Pavelīs script is made for 3D (as far as I remeber). There are some points you must pay attention to when doing 3D DCP but in general, the workflow is similar.
Hope this was useful for you,
best regards
Felix
Knut Erik Evensen
05-22-2010, 09:17 AM
For a RED user that wants to make a DCP I have these tips:
2048x1024(2:1) is not a standard preset on a digital cinema projector, neither is 2048x1080. 2048x858 (Scope 2.39:1) and 1998x1080 (Flat 1.85:1) are.
The new Fraunhofer Easydcp Creator can make 25 fps SMPTE DCPs. I have tested this on the Doremi DCP-2000 server and it works. AFAIK all servers will play 25 fps SMPTE DCPs soon.
Made a description on how to this here (http://www.knuterikevensen.com/?p=105)
The new Fraunhofer Easydcp Creator can also bypass the RGB->XYZ conversion so a image sequence graded for digital cinema can be used.
This makes the jpeg2000 encoding even faster.
Don't use 8 bit image sequences.
Jean-Charles Wolfarth
05-22-2010, 10:35 AM
Knut,
Thanks bvery much for the insight... Too bad EasyDCP is so expensive (3500 euros for the + version). I was wondering why the DCP standard didn't include 25P, well, let's hope this is going to be corrected soon.
Subhadip Sen
05-22-2010, 10:49 AM
Thanks Knut. So, if I have a 1.85:1 film, I should render it as 1998x1080 right off the NLE, right? As for a 1.78:1 film, crop it to 1.85:1?
There are quite a few steps in the encoding process yes. EasyDCP is too expensive for many of us. I wish there were an encoder that would encode directly to JPEG2000 from the video file.
Vegas Pro has DPX, TIFF and JPEG output, amongst other image sequence formats. I wonder if these would help. It is about time they included a JPEG2000 DCP compatible render! Would save us so much trouble! Vegas Pro does have JPEG, like I mentioned. Maybe someone can tell us exactly how different JPEG is from JPEG2000.
PS: Ok, Vegas Pro does have a JPEG2000 option, after all! It is under Quicktime 7. So it encodes your video as JPEG2000 frames and writes it to a .mov container/file. Now, the question is, how do I proceed from here? The JPEG2000 frames are inside the mov file. Also, I am not really sure how compatible these are to the DCP standards.
Wolfgang Woehl
05-22-2010, 02:21 PM
The specification for JPEG 2000 is very powerful and flexible, you can have a gazillion different kinds. Nice primers at http://www.intopix.com/pdf/JPEG%202000%20Handbook.pdf and http://www.digitalpreservation.gov/formats/fdd/fdd000211.shtml for digital cinema related notes (Bitrates, tiling, markers)
So for cinema you need a dedicated codec that outputs the right codestream and the right markers etc. I'm guessing, but Vegas Pro's JPEG2000/mov output won't be usable directly for cinema authoring. They would let you know very clearly.
Felix_Opahle
05-22-2010, 04:16 PM
Interesting, the 25fps option in easyDCP. Would be nice to know, if the cinema servers will have to be updated to support it reliably or if they could always play 25 fps but not officially supported...would you start to use 25 fps more often in future? I think people who produce for cinema regularly (commercials etc., not to mention films) are used to produce in 24 fps, maybe the 25 fps option is more interesting for people new to the subject, short films which havenīt been shot exactly for the cinema...
Concerning Jpeg2000: does anybody know, if the people from the CUDA powered converter will make a version of their software which can create the needed j2c files? Are there any news?
And at last a noob question:
Chris Perry writes on his blog "making a dcp entirely with open source tools" that the encoding process of the pictures "must be run one frame at a time, but it's very easy to distribute ranges of frames to multiple processors if you have them". Ok, does that mean that there is a way to start multiple encoding processes simultaneously on one machine equipped for example with a dual or quad core or do you have to use multiple pc workstations side by side, feeding them with the ranges of frames?
Sorry for the stupid question but I havenīt used command line tools much before...and for example the jpeg2000 encoding with the image_to_j2k only uses about 45 to 50 % of my cpu capacity.
Thanks for help
Felix
Wolfgang Woehl
05-22-2010, 05:42 PM
Felix, if you're asking about CUJ2K: no news so far.
A shell script can fire off a number of threads (or background jobs) to segment the workload. It depends on your box's architecture whether this will improve the overall runtime. Kernel scheduling, hyperthreading, core throttling all play a part.
Running background jobs can be as easy as
$ job1 &
$ job2 &
Nick Shaw
05-23-2010, 05:36 AM
Vegas Pro has DPX, TIFF and JPEG output, amongst other image sequence formats. I wonder if these would help. It is about time they included a JPEG2000 DCP compatible render! Would save us so much trouble! Vegas Pro does have JPEG, like I mentioned. Maybe someone can tell us exactly how different JPEG is from JPEG2000.
PS: Ok, Vegas Pro does have a JPEG2000 option, after all! It is under Quicktime 7. So it encodes your video as JPEG2000 frames and writes it to a .mov container/file. Now, the question is, how do I proceed from here? The JPEG2000 frames are inside the mov file. Also, I am not really sure how compatible these are to the DCP standards.
JPEG is DCT, and JPEG2000 is wavelet, so very different indeed!
Not 100% on this, but I believe QuickTime's JPEG2000 implementation is only 8-bit, so not really any good for DCP. And if your export from Vegas was RGB QuickTime JPEG2000, it would need to be converted to XYZ and re-compressed for DCP, so it would be no better an intermediate format than anything else, and indeed worse than many others!
Subhadip Sen
05-23-2010, 12:02 PM
Yes, I did a bit of research, and indeed, the QuickTime JPEG2000 is not quite the DCP standard. It is about time they added a DCP compatible JPEG2000 image sequence though! About time!
CUJ2K does sound interesting.
Felix_Opahle
05-23-2010, 03:32 PM
Wolfgang, thanks for the explanation.
CUj2K really seems to be very fast, in their Benchmark they compare it with encoding speed of the proprietary Kakadu 6.2 encoder and CUj2K does very well. I think Iīll also write to the team in Stuttgart if there is any hope that the needed functions will be implemented in CUj2k.
One thing concerning DCPs of long movies:
Does the film have to be cut into reels (I read about 20 minutes each reel) or is it possible or advisable to make a DCP with a "solid" movie of 60 minutes or even more? Will there be any syncronisation problems during playback?
Thanks,
Felix
Wolfgang Woehl
05-23-2010, 11:37 PM
Reels are not mandatory. 1-reeler DCPs are perfectly valid.
But, although a tad counter-intuitive in the age of digital, the reel concept has a number of benefits: It facilitates file-handling (feature length work has ~150.000 frames which makes file browsers cringe and trackfile sizes huge) and allows random-access of trackfiles (like play a part of a trackfile in reel 1, play another part of that trackfile in reel 2 etc., see <EntryPoint> and <Duration>).
Actually this reuse of trackfiles is something I'm going to put to good use in a pet project of mine, a tool to create digital cinema slideshows. I love slideshows :)
What makes me shudder when I think DCP and slideshow is the apparent inefficiency: Storing/Encoding stills for the entire run of a slide (apart from faded and crossfaded frames) would be nuts, wouldn't it? Sparse assets (via reels) to the rescue: Make minimal length trackfiles and replay (next reel). Actually, I should test what happens with 1-frame reels, not sure about minimum reel length (trackfiles are 1 second minimum).
I'll post cinemaslides here in due time, of course, still needs some love. Would anyone be interested to test and play?
Pavel Klepinin
05-24-2010, 12:30 AM
I'll post cinemaslides here in due time, of course, still needs some love. Would anyone be interested to test and play?
I can play it with DSS 200. It's interesting are you making some kind of automation tool for slideshowmaking. Or it's just a provement of a concept?
Chris Perry writes on his blog "making a dcp entirely with open source tools" that the encoding process of the pictures "must be run one frame at a time, but it's very easy to distribute ranges of frames to multiple processors if you have them". Ok, does that mean that there is a way to start multiple encoding processes simultaneously on one machine equipped for example with a dual or quad core or do you have to use multiple pc workstations side by side, feeding them with the ranges of frames?
I can show you the way to distribute. Btw, i haven't used it, but it should work. For linux it's just a meter of SSH execution. You just have to put you source material in a shared folder.
The problem is windows machines. There is a freeware tool for console remote execution named PsExec (from systernal's PsTools). It helps you to execute your file on a remote machine (you have to know it admin's password for it).It can even temporally copy your execution file on a remote machine. Anyway you still need shared folder for source material and jp2000 files.
Wolfgang Woehl
05-24-2010, 01:02 AM
Pavel, cinemaslides is a ruby script to create digital cinema slideshows. For example
$ cinemaslides --montagepreview --type preview,dcp --size 2k --aspect flat --black 5 --transition_and_timing crossfade,1,5 --title "feature title" --annotation "package annotation" --issuer "package issuer" image1.tiff image2.jpg image3.dpx ...
will display a thumbnail montage of images (to check how images fit onto the targeted plane), create a full length preview of the slideshow (to check how timing sits etc.) and create a 2k flat DCP with 5 seconds black header/footer and 1 second crossfade transition between 5 second slides.
No audio yet, no 3D yet, no subtitles yet. Needs linux, ruby, imagemagick, mplayer, asdcplib, opencinematools, a jpeg2000 codec (openjpeg or kakadu, which is available for non-commercial purposes) and, like I said, some love, too.
Pavel Klepinin
05-24-2010, 05:02 AM
Needs linux, ruby, imagemagick, mplayer, asdcplib, opencinematools, a jpeg2000 codec
Is it really linux only? Looks like all the staff is available for Windows as well, I hope :)
Agustin Goya
05-24-2010, 06:21 AM
Pavel, cinemaslides is a ruby script to create digital cinema slideshows. For example
$ cinemaslides --montagepreview --type preview,dcp --size 2k --aspect flat --black 5 --transition_and_timing crossfade,1,5 --title "feature title" --annotation "package annotation" --issuer "package issuer" image1.tiff image2.jpg image3.dpx ...
That sounds great! I don't know how you are achieving it, but maybe editing the Composition XML to create a loop between each 1 second slide could be an option.
Wolfgang Woehl
05-24-2010, 07:13 AM
Pavel, it's entirely possible that cinemaslides will run on windows (in a properly setup cygwin environment) and mac boxen. Keep in mind, though, that it's early alpha (like pm alpha). It won't do anything nasty but it will choke on typos in options, the occasional off-by-one bug should be hiding in there, stuff like that. Ping me if you want to try this.
Augustin, like I mention in the response to Felix' question about reels: Sparse assets (minimum-length trackfiles played in a sequence of reels) are the obvious thing to do with DCP slideshows. Coming up. Right now cinemaslides does the nutty thing: Create full-length trackfiles and therefore quite large DCPs. Not that it matters much in playback. It's just not efficient, let alone elegant.
Wolfgang Woehl
05-24-2010, 07:23 AM
Oh, btw, one kind of bass-ackwards side effect of how cinemaslides does things is that you can create the usual motion picture DCP. Like
$ cinemaslides -t dcp -x fade,0,0.04167,0 [image_sequence]
The -x option specifies the kind of transition and timing parameters: Fade-in/out for 0 seconds and show each slide at full level for 1/24 seconds. Think of a Kodak Carousel going 24fps-berserk.
M Sullivan
05-24-2010, 10:29 AM
Hey Wolfgang. I've been struggling with trying to get a Linux workflow for DCP slideshows going for a while now and I'd love to take a look at cinemaslides to get some help and inspiration. Happy to test and play.
Wolfgang Woehl
05-24-2010, 10:45 AM
Great, give me a day or two. It needs to put clothes on.
Alexander Savin
05-25-2010, 08:40 AM
Hey guys. Just wanted to thank you for the great discussion. Took me couple of weeks to create my own stereo DCP, but now it's all good, and we got it succesfully played on the Dolby DSS100 last week.
I tried to gather all the thoughts into one article on DCP creation. Check it out:
http://www.stereofinland.com/?page_id=49
Comments are welcome.
Felix_Opahle
05-25-2010, 03:51 PM
Wow, Alexander, as far as I can say fast-reading through your article, thats really a good piece of work! Thank you for sharing it! I would say, everybody who reads it and searches little bit through this reduser-thread here should be able to create DCPs on his own....amazing!
Congrats for your sucessful test on the Dolby DSS100.
But thereīs one thing that would interest me very much:
In this thread here on reduser, everything is about picture, pixel, colorspace conversion and so on. But there is few information concerning the audio specifications. I donīt mean samplerate or bit-depth, the noumber of channels, itīs more about the audio-levels etc. Ok, people who did audio mastering for film projects which were printed to film or were given to a DCP posthouse wonīt have any problems cause they know everything about it. But I think about people who donīt know much about leveling, distributions channels, dB scales etc. are happy about OCT and the chance to bring their content to cinema, maybe create their DCP with completely wrong levels and when this file is played back in the cinema (even if itīs only for test pupose) it would be bad if they do any damage to the audio equipment...
Ok, maybe Iīm to careful but I just remember the handbook for creating content for E-Cinema applications when I gave the materials to rowo-digital and in that handbook there were things written about special levels for audio about -82 dB leq as specification for commercials etc. For the film, there will be different specifications I think but maybe it would be good to add some facts about audio mastering to this thread here.
Just my 2 cents,
greetings
Felix
NDTM studio
05-25-2010, 04:16 PM
Great thread guys, you are always briliant!!!
Wolfgang Woehl
05-25-2010, 04:21 PM
Cinemaslides is up on http://github.com/wolfgangw/digital_cinema_tools
Run cinemaslides -h to see the docs, basically. Run cinemaslides -v debug [...] to see some guts.
Wolfgang Woehl
05-27-2010, 09:58 PM
I donīt mean samplerate or bit-depth, the noumber of channels, itīs more about the audio-levels etc.
Digital Cinema System Specification Section 3.3 Audio Specification:
3.3.2.5. Digital Reference Level
Digital inputs and outputs shall have a nominal reference level of -20 dBFS (decibel
below full scale) and output 85 dBc (decibels referenced to the carrier) sound pressure
level per channel measured with pink noise.
Jean-Charles Wolfarth
05-28-2010, 02:56 AM
Speaking of a 25P DCP, is there a way to make a 2K or 4K SMPTE 25P DCP with open cinema tools ? Or are we stuck with easydcp ? Thanks !
Terrence Meiczinger
05-28-2010, 08:18 AM
Cinemaslides is up on http://github.com/wolfgangw/digital_cinema_tools
Run cinemaslides -h to see the docs, basically. Run cinemaslides -v debug [...] to see some guts.
Nice. I wonder if slideshows could also be achieved using timed-text tracks. I think you can display PNGs directly, set display duration, and fade in/out. The server would need to support SMPTE 429-5 and I'm not sure if they all do.
Wolfgang Woehl
05-28-2010, 11:02 AM
Hey Terrence, awesome. Now that's the obvious thing to do :) great idea.
Wolfgang Woehl
05-28-2010, 11:58 AM
wrt subpicture specs: DCI's Compliance Test Plan has
section 4.5.4. Timed Text Resource Encoding which says:
"... The subpicture must be of PNG format, decode without errors, and the size (geometry) must be smaller than, or equal to, that of the main picture ..."
Totally like the idea. Might need MainPicture assets which could be tiny, though ...
Terrence Meiczinger
05-30-2010, 06:56 PM
wrt subpicture specs: DCI's Compliance Test Plan has
section 4.5.4. Timed Text Resource Encoding which says:
"... The subpicture must be of PNG format, decode without errors, and the size (geometry) must be smaller than, or equal to, that of the main picture ..."
Totally like the idea. Might need MainPicture assets which could be tiny, though ...
It was something I had thought about awhile ago, but never really dug deeper into it. I had hope to re-visit it again, because generating a single PNG would be a lot easier and faster than doing everything in final cut and creating a DCP.
Wolfgang Woehl
06-02-2010, 01:15 AM
I tried to gather all the thoughts into one article on DCP creation. Check it out:
http://www.stereofinland.com/?page_id=49
Comments are welcome.
Step 3 in your article has the chronological order of Interop and SMPTE mixed up: Interop was implemented on servers to have a working scheme while SMPTE developed related standards. They're done for some time now and around now there's a firmware rollout to update servers.
Knut Erik Evensen
06-02-2010, 08:52 PM
Speaking of a 25P DCP, is there a way to make a 2K or 4K SMPTE 25P DCP with open cinema tools ? Or are we stuck with easydcp ? Thanks !
Compiled asdcplib-1.6.34 that is used in open cinema tools and typed the command asdcp-test -h
...
-p <rate> - fps of picture when wrapping PCM or JP2K:
Use one of [23|24|48], 24 is default
...
No 25 fps.
To answer the digital cinema resolutions question from Subhadip Sen:
HD workflows where the 1920x1080 container of HDCAM-SR tape is standard should be changed to 2K workflows for digital cinema work. The 1.77 aspect 1920x1080 fits ok, but 1.85 or 2.39 inside a 1920x1080 container does not fit. The RED 2K 2:1 2048x1024 resolution does fit the 2.39 digital cinema presets with cropping to 2048x858 (if this was intended when shooting), but to get to the 1.85 digital cinema preset you have to crop and scale to get to 1998x1080. 1920x1080 1.77 material can have black padding on the sides to achieve 1998x1080 or be scaled and cropped. Digital cinema servers can play 1920x1080 but the standard is 1998x1080 so it is preferable. The reason that 1080 material fits better than 1024 material is that the side masking can be adjusted in a common height cinema. I would recommend padding to 1998x1080. if all the 2048x1024 information is vital scale to a 1998x1080 container, but remember that having this much black padding above and below the picture kills the contrast.
The main problem when making 24 fps DCPs from 25 fps material, even with software like time factory 2 which keeps the channels in phase and keeps the pitch, is that they could alter the sound mix in the conversion process and introduce artifacts. If you slow down the sound you get a pitch change. So being able to play 25 fps DCPs on the doremi cinema server is great.
I did use the openjpeg encoder first to make DCPs but found it too slow for time critical use.
The biggest problem with mastering DCPs is the Quality Control stage. The best option is to check it where it will be played, if you get a DCP made or checked at a post house make sure they know what they are doing and tell them exactly what you want and what equipment the DCP will be played on.
Christopher Lowden
06-02-2010, 10:38 PM
To note: You can do the 4% pitch change from 25fps to 24fps without a change to the pitch. Protools, amongst others, does it well. There are many methods so it is important to try each to see which work best for the film.
M Sullivan
06-03-2010, 01:51 AM
Cinemaslides is up on http://github.com/wolfgangw/digital_cinema_tools
Run cinemaslides -h to see the docs, basically. Run cinemaslides -v debug [...] to see some guts.
That's great; thanks for making that available; I'll download and play around with it. Cheers!
Jean-Charles Wolfarth
06-03-2010, 03:04 AM
Compiled asdcplib-1.6.34 that is used in open cinema tools and typed the command asdcp-test -h
...
-p <rate> - fps of picture when wrapping PCM or JP2K:
Use one of [23|24|48], 24 is default
...
No 25 fps.
Thanks Knut but are you sure ? I'm not an expert at all, I don't understand anything about these command-line things, but for the 1.6.34 version the change logs are :
- Added edit rate constants to AS_DCP.h (25, 30, 50, 60).
Doesn't that mean a possibility of adding 25 fps ?
Gosh, this is so complicate ! I wonder why nobody releases a simple plugin to export DCPs from Adobe Media Encoder, Compressor, etc...
Wolfgang Woehl
06-03-2010, 09:17 AM
The latest asdcplib release (1.6.34) indeed has those framerate-related changes. Only that 2 sets of changes are missing plus the -h output wasn't updated. I guess John will release a fix in due time. Basically asdcplib is set and ready to roll 24, 25, 30, 48, 50 and 60 fps.
Bigger problem, it seems, would be the changed rate constraints for the JPEG2000 codestreams.
Jean-Charles Wolfarth
06-04-2010, 08:03 AM
Thanks Wolfgang. It looks like EaysDCP is the way to go to be sure of the result at the theatres... Is there anyone else interested in the basic licence (2000 euros) ? I would need it just for a 2K and a 4K version of a feature film. If there are other people interested for a few encodes maybe we could make a common purchase ?
Wolfgang Woehl
06-05-2010, 05:07 AM
Actually, looking at openjpeg's code (svn checkout http://openjpeg.googlecode.com/svn/branches/v2/ openjpeg-read-only for v2) suggests that the necessary changes to comply with additional framerate/codestream constraints should be trivial. Probably coming up soon.
I can't get over the missing framerate issue, though. Those missing framerates (16 to 24 for historical works) are a /big/ deal for restoration projects, cinematheques, for film culture -- the knowledge about and appreciation of the many-winded roads film history took us along.
When you're used to seeing works from the silent era in native speeds (ranging from 16 to 24, this on a 3-blade shutter film projector) any pull-up or blending technique (to get 24 fps digital) will look apalling, mildly put.
The argument, at the time, against the inclusion of lower framerates (to my knowledge, which is limited) was "It might break optimization schemes for 24/48 fps". Anyone knows more about the related process?
Jean-Charles Wolfarth
06-05-2010, 07:30 AM
Yes Wolfgang, I really don't understand why the DCP norm didn't fully integrate the other usual frame rates 16, 24, 25, 30. It's not a problem for many video projectors (2k and 4k included), so it would have been so practical.
I decided to shoot my first feature at 25P to get no problems for the DVD release which is the most common way for people to watch a movie today. The blu-ray norm gives the possibility of putting the 25P into a 1080i stream. Really, I don't understand this DCP norm.
Wolfgang Woehl
06-05-2010, 11:53 AM
24, 25, 30, 48, 50 and 60 are in place and will work on all installed platforms, it's a matter of firmware/software updates.
What's missing are speeds below 24 fps. 16 fps wouldn't be enough, by the way. Production and presentation in the silent era utilized the whole range from ~ 12 to ~30. For example see the attached Kopienbegleitkarte for Alt-Heidelberg (1922). It has very specific speed instructions for screenings which were accompanied by an orchestra.
Not being able to play this adequately on a modern high-tech platform is somewhat ironic and bitter sad at the same time, at least that's how I feel about it.
Wolfgang Woehl
06-06-2010, 10:52 AM
Tiny DCP for testing SMPTE 429-5 compliance (Subtitle trackfiles) on cinema servers is up on http://github.com/wolfgangw/digital_cinema_tools/raw/master/dcp_s429-5_test.tar
It's been assembled with the test material from cinecert's site (http://www.cinecert.com/asdcplib/S429-5-test.tar.gz) and should display 1-2-3-4 on a black background (00:00:05:00 - 00:00:06:23). Let us know whether it works on your server.
See http://wiki.github.com/wolfgangw/digital_cinema_tools/misc for a note on how to build asdcplib's S429-5-cgi.cpp
Knut Erik Evensen
06-07-2010, 01:46 AM
Thanks Knut but are you sure ? I'm not an expert at all, I don't understand anything about these command-line things, but for the 1.6.34 version the change logs are :
- Added edit rate constants to AS_DCP.h (25, 30, 50, 60).
Doesn't that mean a possibility of adding 25 fps ?
Yes. You can make a 25 fps SMPTE DCP with asdcplib. Compiled asdcplib 1.6.34 again with the missing framerates added to asdcp-test.cpp and used -p 25 to wrap the jpeg2000 sequence/wav files in 25 fps MXF wrappers. Compiled opencinematools with the fixes/updated dependencies from Wolfgang and made a 25 fps dcp that plays ok on the doremi cinema server. Used openjpeg with the 24 fps setting to make the jpeg2000 sequence, according to John Hurst from Cinecert this should work ok with a 25 fps DCP.To do the color conversion I downloaded a trial of After Effects CS 5.
John Hurst from Cinecert gave me the missing framerates that should have been in asdcp-test and will be added to asdcp-test in the next release:
To modify asdcp-test, replace the PictureRate() and szPictureRate() in methods of the Command Options class (in asdcp-test.cpp) with the following:
//
Rational PictureRate()
{
if ( picture_rate == 23 ) return EditRate_23_98;
if ( picture_rate == 25 ) return EditRate_25;
if ( picture_rate == 30 ) return EditRate_30;
if ( picture_rate == 48 ) return EditRate_48;
if ( picture_rate == 50 ) return EditRate_50;
if ( picture_rate == 60 ) return EditRate_60;
return EditRate_24;
}
//
const char* szPictureRate()
{
if ( picture_rate == 23 ) return "23.976";
if ( picture_rate == 25 ) return "25";
if ( picture_rate == 30 ) return "30";
if ( picture_rate == 48 ) return "48";
if ( picture_rate == 50 ) return "50";
if ( picture_rate == 60 ) return "60";
return "24";
}
Terrence Meiczinger
06-07-2010, 08:15 AM
Hey guys, I'm putting together a new site, dcinemaforum.com. It is something I've been wanting to do for awhile. My hope is that we can have a site where we can share all kinds of information about digital cinema, whether you are somebody trying to create content or a theater owner looking for information about projectors or whatever. There isn't much there at the moment and the structure is evolving. I've been putting up information about creating DCPs as a starting point. If you have any ideas, let me know.
Terrence Meiczinger
06-08-2010, 01:48 PM
Tiny DCP for testing SMPTE 429-5 compliance (Subtitle trackfiles) on cinema servers is up on http://github.com/wolfgangw/digital_cinema_tools/raw/master/dcp_s429-5_test.tar
It's been assembled with the test material from cinecert's site (http://www.cinecert.com/asdcplib/S429-5-test.tar.gz) and should display 1-2-3-4 on a black background (00:00:05:00 - 00:00:06:23). Let us know whether it works on your server.
See http://wiki.github.com/wolfgangw/digital_cinema_tools/misc for a note on how to build asdcplib's S429-5-cgi.cpp
Wolfgang,
There is a target in the Makefile for S429-5-cgi. I just typed make S429-5-cgi and it built fine, but haven't tried it. Did you try that?
Wolfgang Woehl
06-08-2010, 10:21 PM
Terrence, the last asdcplib version to provide a S429-5-cgi make target is v1.3.18 from February 2008. It's the version that's shipped with the last (and ancient) release of opencinematools. Current asdcplib version is v1.6.34.
There is no need (and I wouldn't recommend) to use anything from opencinematools' dep package. Actually, there is no need or good reason to use opencinematools in the first place: A number of problems in the code, development is stalled, the dev has expressed lack of time and money.
Using asdcplib directly to read out mxf metadata and writing xml with some tool is the way better option.
Terrence Meiczinger
06-09-2010, 08:17 AM
Terrence, the last asdcplib version to provide a S429-5-cgi make target is v1.3.18 from February 2008. It's the version that's shipped with the last (and ancient) release of opencinematools. Current asdcplib version is v1.6.34.
There is no need (and I wouldn't recommend) to use anything from opencinematools' dep package. Actually, there is no need or good reason to use opencinematools in the first place: A number of problems in the code, development is stalled, the dev has expressed lack of time and money.
Using asdcplib directly to read out mxf metadata and writing xml with some tool is the way better option.
I'm using asdcplib 1.6.34 and it has a S429-5-cgi target. Anyway, I was looking at the specs on our Dolby DSS100 and it only says it supports TI Cinecanvas for subtitles. The DSS200 says it supports TI Cinecanvas and SMPTE 428-7-2007. Have you been able to try out the timed text?
Wolfgang Woehl
06-09-2010, 01:19 PM
The test package doesn't ingest completely on a XDC Solo G3 (Solo server version 5.4.2.69, player driver version 5.24.13.12822, firmware 5.24.63.12822, ~ 3 months old versions). The ingest skips the timed text trackfile and presents the rest as ingested. Need to check with XDC for updates. The same, or along those lines, with EasyDCP Player+, error message is "unknown partition type". Their manual says so, though. As of now they don't support S429-5 resources.
Hello,
when Im change the framerate in asdcp.cpp like Knut Erik Evensen told us everything works fine but with two bugs:
- when i use -p 25 in asdcp-test for Video wrapping and -p 25 for audio wrapping then mkcpl, mkpkl and mkmap give me erro then sound file is not a 24/1 or 48/1 and cant open it. So I have no playlist file, packing file and I CAN NOT PLAY IT ON DOREMI SERVER.
- second thing - when i use -p 25 only for video wrapping audio file is ready and no error is on mkmap, mkcpl,mkpkl so I can play it on doremi but with very bad thing. Sound is not synchronised with video - i think is quicker but is only see that on dialog. Without dialog u can not see that. :)
Can u tell me, give my some advice what can i do? Thanks u.
Robert.
Knut Erik Evensen
06-14-2010, 07:23 AM
Hello,
when Im change the framerate in asdcp.cpp like Knut Erik Evensen told us everything works fine but with two bugs:
- when i use -p 25 in asdcp-test for Video wrapping and -p 25 for audio wrapping then mkcpl, mkpkl and mkmap give me erro then sound file is not a 24/1 or 48/1 and cant open it. So I have no playlist file, packing file and I CAN NOT PLAY IT ON DOREMI SERVER.
- second thing - when i use -p 25 only for video wrapping audio file is ready and no error is on mkmap, mkcpl,mkpkl so I can play it on doremi but with very bad thing. Sound is not synchronised with video - i think is quicker but is only see that on dialog. Without dialog u can not see that. :)
Can u tell me, give my some advice what can i do? Thanks u.
Robert.
You have to patch opencinematools like Wolfgang says here on his webpage:
http://wiki.github.com/wolfgangw/digital_cinema_tools/misc
Have posted the binaries I compiled on snow leopard on my webpage at: http://www.knuterikevensen.com/?p=125
Have not tested them on a clean snow leopard install.
and this is everything what is needed to get true playing with 25fps audio and video? Becouse error "cant open file" give me too mkmap and mkpkl... :(
Knut Erik Evensen
06-15-2010, 03:28 PM
and this is everything what is needed to get true playing with 25fps audio and video? Becouse error "cant open file" give me too mkmap and mkpkl... :(
There was some files missing in the with first zip file i uploaded, it should be working now.
Knut Erik Evensen
06-19-2010, 06:21 PM
ASDCPLIB is now updated to support 25 FPS.
Hello,
I have still problem with 25fps. Im not programmer but I put the fix (http://wiki.github.com/wolfgangw/digital_cinema_tools/misc) my friend who is and ho told me that by compiling for WIN was many errors. So DCP in 25fps still have problem under Windows (pic) "Invalid CompositionPlaylist File..."
Is here anyone who know compile this under windows for me? :undecided:
Mkcpl have error too when is used 3D file. But i think that all this trouble will repair with last Wolfgans patch "http://wiki.github.com/wolfgangw/digital_cinema_tools/misc"
Thank you a lot.
CLIPBOARD: http://leteckaposta.cz/592076953
fabrizio carraro
07-18-2010, 10:12 AM
KDM generation
I'm trying to read a KDM and generate KDMs for other DCI servers. I'm not sure if it is feasible.
What was easy: create a new self certified private and public key with openssl. The public key is a certificate that a DCP production workstation understands. In my case I use DVS Clipster. To make things easy I created a small single reel DCP. Then I told Clipster to create a KDM using the new certificate created with openssl. Clipster produced the KDM. Now I think it should be easy to extract from the KDM the AES key and decrypt the small test movie, using my new private key (even if I don't know yet which tool to use for extracting the key: openssl? xmlsec? ).
But the final goal is to generate new KDMs for other DCP servers. I know that all I need from the original DCP is the CPL, and the references inside the CPL have to match. But then I suppose I have to include in the new KDM some element that still I don't know how to produce: the root, intermediate and leaf certificates that are included at the end of each KDM, and the signature value. I imagine that if I could find the private key inside the Clipster I may just copy those elements from the KDM that Clipster produces for itself. From the private key I can build the public key (this is the way openssl do) and with it encode all the modified information. But if Clister keeps its private key secret (as DCI servers do) I need to produce the certificates and sign myself.
Probably in what I said there are lots of errors: any hint?
fabrizio carraro
07-23-2010, 09:20 AM
KDM generation part 2
I'll continue sharing my experiences hoping somebody is interested in DCP encryption.
My first goal was to see just an image after the decryption process.
The <Cipherdata> section of the KDM was succesfully decrypted using
base64 -di cipherdata.txt | openssl rsautl -inkey my_privkey.pem -decrypt -oaep > decoded-cipherData.bin
The resulting 138 bytes file corresponds to that defined in the SMPTE document S430.1. The last 16 bytes
contain the AES128 key.
Now that the key is available I only know two options: decrypt all the asset using mxfcrypt, or extract j2c files using "asdcp-test -x"
and then decrypt them using "openssl enc -d".
Unfortunately both solutions failed: mxfcrypt was just useful to understand that the even-odd bytes of the key found in the <cipherdata>
had to be swapped: if the key is wrong mxfcrypt complains (this is very helpful!). But then the unencrypted mxf file is
unusable: asdcp-test cannot open it, and easyDcpPlayer says that the index table is missing.
"openssl enc" needs the correct option: there are many aes128 variants. After many hours I discovered that DCI uses the CBC
block cipher mode, and no "salt" in the key. Unsure about "padding". But still openssl needs the IV (initialization Vector) in addition to the key.
Trying to give the key as a password (option lower -k) didn't work.
Now: why openssl needs key and IV and mxfcrypt only needs the key? I could not find the IV inside the mxf header. How to continue?
Agustin Goya
07-23-2010, 09:26 AM
KDM generation part 2
I'll continue sharing my experiences hoping somebody is interested in DCP encryption.
Hi Fabrizzio! I'm really interested in KDM generation, unfortunatelly I'm not an expert in the area, so I don;t think I could help you, but just wanted you to know that I'm very interested in making a full open source DCP generation.
Thanks for sharing
Wolfgang Woehl
07-23-2010, 10:57 AM
Fabrizio, great to see someone working on this in the open.
wrt initialization vector: According to SMPTE 429-6-2006 (D-Cinema Packaging — MXF Track File Essence Encryption) -> section 9 (Reference Decryption Processing Model) -> 9.2.4 (Encrypted Triplet Decryption Module) the first 16 bytes (in network byte order) of a given input encrypted triplet's source value shall be used as the initialization vector used by the CBC mode.
Also, and again according to 429-6-2006, this is merely one of the needed components. You mention padding to 16 byte multiples and index table generation.
See AS_DCP.h and AS_DCP_AES.cpp from cinecert's/Hurst's asdcplib for an implementation of this.
Please keep posting your experiments and results. It's great you're digging into it.
heath
07-28-2010, 11:35 PM
I have figured out everything except for creating an actual KDM (I haven't spent the time on it yet).
I have created a self signed certificate and it worked on obtaining a kdm for the dci reference dcp, and I successfully decrypted the kdm using the source code provided in the dci specs, so far only got it to work on ubuntu. I can't test it fully since I don't have the reference DCP.
On windows I have not had any trouble encrypting and decrypting the essence (indivudual j2c frames/wav files). I'd really like to get my hands on a real DCP and KDM for my certificate to see if what I have tested to work in theory, will work on a real world DCP.
I'd be happy to share more details, let me know if anyone is interested.
I am a digital animation and visual effects student, but I'm doing this outside of class to learn more about the technical side of movie distribution.
I know it's a long shot, but does anyone know if it would be possible for someone like me to obtain a DCP for a feature film that is in 2nd run or home video status?
Wolfgang Woehl
07-29-2010, 04:57 AM
Hi Heath
On windows I have not had any trouble encrypting and decrypting the essence (indivudual j2c frames/wav files). I'd really like to get my hands on a real DCP and KDM for my certificate to see if what I have tested to work in theory, will work on a real world DCP.
Do you have acces to SMPTE 429-6-2006 (D-Cinema Packaging MXF Track File Essence Encryption)? There are some important specifics the process needs to match.
I'd be happy to share more details, let me know if anyone is interested.
I think one of the best ways to share code and information is by setting up a public code repository (with something like googlecode or github). This gives you tools to track updates, feedback, some space for documentation etc. Your work can also become a catalyst for other interesting things when it's out in the wild. Also, as you mention that you're a student, these things are generally not frowned upon in a CV.
Brian Lucas
07-31-2010, 01:31 PM
I've taken some time to make a test and this is the result:
This is the original footage as taken in Canon 7D
http://www.briancommunications.com/DCP/ORIGINAL.jpg
------------------------------------------------------------------
After Effects XYZ Gamma 2.6
http://www.briancommunications.com/DCP/AE-RenderXYZ.jpg
------------------------------------------------------------------
Fusion RGB to XYZ
http://www.briancommunications.com/DCP/FUSION-Render.jpg
------------------------------------------------------------------
Nuke RGB to Cineon - I didn't find any XYZ colorspace in Nuke, but I assume Cineon is XYZ.
http://www.briancommunications.com/DCP/NUKE-Render.jpg
--------------------------------------------------------------------
DCP IN EasyDCP Unregistered - Played in EasyDCP Player [unregistered]
--------------------------------------------------------------------
After Effects Sequence.
http://www.briancommunications.com/DCP/AE-easyDCP-Player%20EasyDCP.jpg
--------------------------------------------------------------------
Fusion Sequence
http://www.briancommunications.com/DCP/FUSION-easyDCP-Player%20EasyDCP.jpg
---------------------------------------------------------------------
NOTE: EasyDCP+ was unable to make a DCP from Nuke Cineon Sequence
---------------------------------------------------------------------
-------------------------------------------------------------------------
DCP IN EasyDCP Unregistered - Played in Stereoscopic Player [unregistered]
-------------------------------------------------------------------------
After Effects Sequence
http://www.briancommunications.com/DCP/AE-easyDCP-Player%20Steroscopic.jpg
----------------------------------------------------------------------
Fusion Sequence
http://www.briancommunications.com/DCP/FUSION-easyDCP-Player%20Steroscopic.jpg
-------------------------------------------------------------------------
DCP IN Opencinematools DcpMaker - Played in EasyDCP Player [unregistered]
-------------------------------------------------------------------------
After Effects Sequence
http://www.briancommunications.com/DCP/AE-DCP-Maker-Open-Player%20EasyDCP.jpg
-------------------------------------------------------------------------
Fusion Sequence
http://www.briancommunications.com/DCP/FUSION-DCP-Maker-Open-Player%20EasyDCP.jpg
-------------------------------------------------------------------------
Nuke Sequence
http://www.briancommunications.com/DCP/NUKE-DCP-Maker-Open-Player%20EasyDCP.jpg
-------------------------------------------------------------------------
DCP IN Opencinematools DcpMaker - Played in Stereoscopic Player [unregistered]
-------------------------------------------------------------------------
After Effects Sequence
http://www.briancommunications.com/DCP/AE-DCP-Maker-Open-Player%20Stereoscopic.jpg
-------------------------------------------------------------------------
Fusion Sequence
http://www.briancommunications.com/DCP/FUSION-DCP-Maker-Open-Player%20Stereoscopic.jpg
-------------------------------------------------------------------------
Nuke Sequence
http://www.briancommunications.com/DCP/NUKE-DCP-Maker-Open-Player%20Stereoscopic.jpg
As you may notice in this test, only AE XYZ colorspace plays OK in both EasyDCP player and Stereoscopic player. This is kind of weird because only Stereoscopic player can convert on the fly to RGB colorspace. Another thing is that EasyDCP+ could not make a DCP from Nuke cineon and opencinematools made it.
I don't really know what happened with Fusion and Nuke colorspace that didn't play OK on Stereoscopic Player. Well, I'm not rich guy. I don't have Fusion nor Nuke. I had to drive 150 miles to a friend to make those sequences and maybe I didn't use the correct parameters. Any comment or test will be highly appreciated.
And my question is: After I have the DCP, what am I supposed to do to have this played in a cinema digital projector?
Hope this will help for those having Fusion or Nuke.
Nick Shaw
08-02-2010, 02:14 AM
Nuke RGB to Cineon - I didn't find any XYZ colorspace in Nuke, but I assume Cineon is XYZ.
The Nuke Colorspace node does have CIE-XYZ as an option, certainly in the current version. Cineon is NOT XYZ.
heath
08-02-2010, 03:59 AM
Do you have acces to SMPTE 429-6-2006 (D-Cinema Packaging MXF Track File Essence Encryption)? There are some important specifics the process needs to match.
I Don't, but I have been using the DCI Compliance Test Plan for the majority of my testing, it seems to have most of the information I need.
I think one of the best ways to share code and information is by setting up a public code repository (with something like googlecode or github). This gives you tools to track updates, feedback, some space for documentation etc. Your work can also become a catalyst for other interesting things when it's out in the wild. Also, as you mention that you're a student, these things are generally not frowned upon in a CV.
I'm currently redesigning my website, so it will have details of many of my projects including my adventures in digital cinema, but for now, the updated site is not up yet. Hopefully I'll have it done by the end of this week, here's the address: www.heathjepson.com (http://www.heathjepson.com).
So far, I don't have any code to share yet, but I may in the future since I have a tiny bit of experience with Java, C and C++.
And if anyone here knows anything about film booking, is it possible for an individual to rent a DCP for a movie that is in 2nd run or home release? I know it's a long shot, but worth a try, any tips?
Wolfgang Woehl
08-02-2010, 06:08 AM
And if anyone here knows anything about film booking, is it possible for an individual to rent a DCP for a movie that is in 2nd run or home release? I know it's a long shot, but worth a try, any tips?
You can rent DCPs through the established contacts of a commercial theater, targeting one of their servers (Distributors will, obviously, not rent out to an unknown cinema server/certificate). But this wouldn't be useful for your purposes as you want to test your own certificate creation process.
Leaves DCI's reference DCP and CineCert's KDM Generator (http://www.cinecert.com/dci_ref_01/) -- this as info for others as you have already tried that. Alas, the reference DCP seems to be unavailable at the moment, at least the link (http://www.dcimovies.com/reference/) is nil. Might turn up again, I've asked John Hurst, will post what he says.
What's wrong again with making your own simple DCP and testing your process on a server?
heath
08-03-2010, 12:08 AM
Thanks for the info. I was afraid of that, I wasn't sure if sever certificates had to come from an approved vendor or if self signed would do, but now I know.
The only thing keeping me from doing a complete test (creating an encrypted DCP, generating a KDM for my self signed cert, decrypting, playing the DCP on my computer and finally trying it out at my local cinema) is that I have not figured out how to generate KDMs yet, honestly I have not spent a great deal of time on it.
Sophieliucm
08-05-2010, 05:00 AM
hi,fabrizio:
Have you find the method to get the IV in the mxf? I recently met the same problem.I can get the aes 128 key,but I didn't know where to get the iv.
expect you reply.thanks
KDM generation part 2
I'll continue sharing my experiences hoping somebody is interested in DCP encryption.
My first goal was to see just an image after the decryption process.
The <Cipherdata> section of the KDM was succesfully decrypted using
base64 -di cipherdata.txt | openssl rsautl -inkey my_privkey.pem -decrypt -oaep > decoded-cipherData.bin
The resulting 138 bytes file corresponds to that defined in the SMPTE document S430.1. The last 16 bytes
contain the AES128 key.
Now that the key is available I only know two options: decrypt all the asset using mxfcrypt, or extract j2c files using "asdcp-test -x"
and then decrypt them using "openssl enc -d".
Unfortunately both solutions failed: mxfcrypt was just useful to understand that the even-odd bytes of the key found in the <cipherdata>
had to be swapped: if the key is wrong mxfcrypt complains (this is very helpful!). But then the unencrypted mxf file is
unusable: asdcp-test cannot open it, and easyDcpPlayer says that the index table is missing.
"openssl enc" needs the correct option: there are many aes128 variants. After many hours I discovered that DCI uses the CBC
block cipher mode, and no "salt" in the key. Unsure about "padding". But still openssl needs the IV (initialization Vector) in addition to the key.
Trying to give the key as a password (option lower -k) didn't work.
Now: why openssl needs key and IV and mxfcrypt only needs the key? I could not find the IV inside the mxf header. How to continue?
fabrizio carraro
08-08-2010, 10:24 AM
Hi Sophieliucm,
actually I did not progress on that topic, since my priority was to make a KDM generator, and I got some good results, as I'll explain. About decrypting the content I'm looking forward to follow Wolfgang Woehl precious suggestions posted on 23-7-2010 as soon I've got time.
About KDM generation I tested a workflow that until now worked on two DCP servers, but I have to try it on all servers to be sure. This workflow at this time needs a commercial software, the Fraunhofer KDM generator, nice and quite affordable (euro 750). It is intended only to generate KDMs for DCP produced with EasyDcp+, but if you are able to extract the aes keys from another KDM you can easily produce the "digest" file that makes the Fraunhofer generator work. In this way I managed to build a KDM generator avoiding to use an expensive workstation (a Clipster) for everyday KDM generation.
Unfortunately it does not work under linux (only PC and mac) and since it is not handy for my workflow I'm trying an alternative (and free) solution too: to generate a new KDM just re-editing an exsisting one (of course generated for a certificate where I have the private key as well). A first naive attempt to decrypt and re-encrypt with another certificate only the <ciphertext> session failed: the doremi server ingest log said: DBCHECK_ETM_PRIVATE_INTEGRITY_FAILURE, that makes sense, since I didn't care about modifiying the <ds:SignatureValue> content. But taking care of all the (boring) required details I'm confident it will work.
Fabrizio
Wolfgang Woehl
08-09-2010, 11:01 PM
Alas, the reference DCP seems to be unavailable at the moment, at least the link (http://www.dcimovies.com/reference/) is nil. Might turn up again, I've asked John Hurst, will post what he says.
John writes that the reference package was withdrawn as it was old and contained errors. He writes that he is working on a new package (which is getting delayed by other work) and that soon SMPTE will be selling a digital leader DCP which he considers a reference DCP.
margolisd
08-29-2010, 06:41 AM
Hey guys. We run a DCP authoring facility in Soho, London called ExpressDCP. We have our own SMPTE compliant digital cinema to test our DCPs in. We use a powerful OpenCube server that allows us to work at twice real-time speed. We stock and hire DCI compliant CRU DX115 hard drives. And we've created and distributed digital cinema content all over the world for several major titles. We are great value for money and if you quote "Red" we'll give you a 5% discount (valid until Dec31st 2010).
Check us out at www.expressdcp.com (http://www.expressdcp.com)
M Most
08-29-2010, 08:57 AM
Hey guys. We run a DCP authoring facility in Soho, London called ExpressDCP. We have our own SMPTE compliant digital cinema to test our DCPs in. We use a powerful OpenCube server that allows us to work at twice real-time speed. We stock and hire DCI compliant CRU DX115 hard drives. And we've created and distributed digital cinema content all over the world for several major titles. We are great value for money and if you quote "Red" we'll give you a 5% discount (valid until Dec31st 2010).
You mean you won't do it for free? You actually expect the people here to pay you for it?
What a novel concept...
Ia anyone here who use the cinematools under Windows?
Pavel Klepinin
09-07-2010, 10:30 PM
Let it be me :)
Knut Erik Evensen
09-10-2010, 07:28 AM
I've tested the open source DCP tools Windows frontend DCPC and it does actually work. I've documented my test here:
http://www.knuterikevensen.com/?p=197
you find it at:
http://cinema.terminal-entry.de/
It can multithread the openjpeg jpeg2000 encoder.
It includes the imagemagick color space conversion.
It can also make metadata from MXF files.
Does not yet support 25 fps.
James Gardiner
09-11-2010, 07:29 AM
Hi,
I was wondering if anyone knew the price for dcp-Player from fraunhofer.
The demo seems to work Ok, but also seems to want special expensive graphic cards.
Compared to dcpPlayer form www.digitall.net.au at only $250us and works well on pretty much any modern system. Does some smart processing to let the video PLAY by cutting corners if the system does not have the power to do full quality.
Great for a dcp viewer on no so great hardware.
And it does sound cheap at $250. How much is fraunhofer??
Its not on the website..
James
I've tested the open source DCP tools Windows frontend DCPC and it does actually work. I've documented my test here:
http://www.knuterikevensen.com/?p=197
you find it at:
http://cinema.terminal-entry.de/
***********
And thats problem. I can not get 25fps in 3D movie. In 2D is OK. :( (Windows)
Chris Swinbanks
09-15-2010, 06:01 PM
Hi,
I was wondering if anyone knew the price for dcp-Player from fraunhofer.
The demo seems to work Ok, but also seems to want special expensive graphic cards.
Compared to dcpPlayer form www.digitall.net.au at only $250us and works well on pretty much any modern system. Does some smart processing to let the video PLAY by cutting corners if the system does not have the power to do full quality.
Great for a dcp viewer on no so great hardware.
And it does sound cheap at $250. How much is fraunhofer??
Its not on the website..
JamesJames, the basic Player is Euro1000, the Player+ is Euro2500.
Player+ has some very handy features such as XYZ to RGB colour conversion on-the-fly, also plays stereo in a variety of formats.
Terrence Meiczinger
09-21-2010, 02:41 PM
This past weekend, I started working on a project which has an ambitious goal of being a complete open source tool for creating DCPs, along the lines of easyDCP.
The first part I tackled were the routines to create the XML files. To make them useful to me until the entire package is complete, I built a command line for them, which results in a replacement for opencinematools in my current work flow. I think it resolves some shortcomings while hopefully not introducing too many more. It is a single command line tool, rather than three, can handle multiple reels, detect MXF interop/SMPTE, 3D, generate hash digests if desired, etc.
If anybody is interested in testing it out, feedback would be appreciated. I have compiled and run it on Linux and OS X, but it should compile under Windows without much effort. It still requires the AS-DCP libraries and its dependencies. I haven't had a chance to try it on a digital server yet.
I'm sure there are plenty of bug fixes or improvements needed...
Anyway, to try it
http://code.google.com/p/opendcp/
Wolfgang Woehl
09-22-2010, 12:42 AM
Terrence, nice work. I hope we can bounce a couple of ideas around. About time that lamentable opencinematools mess got fixed. Left a couple of notes at http://code.google.com/p/opendcp/issues/list.
Also, take a look at Cinemaslides (http://github.com/wolfgangw/digital_cinema_tools/blob/master/cinemaslides) and its CPL_SMPTE_429_7_2006, PKL_SMPTE_429_8_2007 and AM_SMPTE_429_9_2007 classes for a script-ish oct replacement prototype.
Terrence Meiczinger
09-22-2010, 06:30 AM
Thanks for input Wolfgang! I'll get some fixes out. I wrote it while watching football, so I figured I'd have a issue or two or more. Hopefully, it is a good starting point. Did you find the command line usage to be ok?
Wolfgang Woehl
09-22-2010, 09:38 AM
Wrt usage: Without tab completion I'd probably end up in an institution. So having to say
$ opendcp_xml -r one.mxf:and_another.mxf
is a bit awkward (bash completion appends a space after the fact), no biggie though. I'm not familiar with C stdlib's getopts but I guess there should be a way to provide completion-friendly lists?
Good starting point indeed. You're going for a GUI system, right? Have you considered writing this in, at least, C++? I would think that getting stuff robust and solid (which, in my experience, is actually -- just like the old fellows say -- 90% of the work) and being flexible and quick at the same time in C would be a major pita in the long run.
I've looked at Python and the community support for neat stuff like inline C/C++/... and contemporary gui toolkits is very reassuring. It's not just a prototype platform, I'm sure you know.
Have you considered going git? In combination with something like github (no affiliation) it can take a huge load off your shoulders. Branching becomes painless, hence I use it more and enjoy the freedom for experimenting. googlecode, in comparison, is quite frugal in its offering, isn't it?
Terrence Meiczinger
09-22-2010, 12:01 PM
Yeah, the colon separators were me being lazy. I should be able to get rid of them without too much effort.
The GUI is the ultimate plan. What I'm working on first are all the routines, which could be hooked into by a CLI or GUI.
I'm not using C++ mostly out of personal preference, but if the GUI ends up being a pain using C, then I'm open to C++. Originally, I had done quite a bit of stuff in objective c with plans to only support OS X. Then I figured it would be more useful to people if I went a more cross-platform approach.
I'll check out github, never used it before. Googlecode hasn't been as smooth as I had hoped.
Hello everyone,
Im still waiting for compiled windows opendcp which will workin with 25fps in 3D too. But now I have another question. :)
Is possible make DCP in Cineasset from DoremiLabs and than play it on another machine (from another manufacturer)?
Thanks
Terrence Meiczinger
09-23-2010, 06:06 AM
Hello everyone,
Im still waiting for compiled windows opendcp which will workin with 25fps in 3D too. But now I have another question. :)
Is possible make DCP in Cineasset from DoremiLabs and than play it on another machine (from another manufacturer)?
Thanks
Remember, a 25fps 3D movie is actually going to be played back at 50fps. I haven't seen any servers specify playback faster than 48fps, but that doesn't mean they can't. Edit: I should add that AS-DCP will create 25fps and 30fps 3D files
Yes, if other server is DCI compliant, it will play the content made by CineAsset... assuming CineAsset makes a proper DCP.
James Gardiner
09-26-2010, 07:22 AM
I have some terrible news on SMPTE DCP creation.
In my investigation of its support on many different SMS's I have some to discover that current hardware will never be able to do more then 25fps.
So 30,50,60 are a no go.
This is not welcome news as the support for those frame rates are great for film festivals etc.
The extra frame rates are only likely to be available in the next generation SMS (The IMB, internal media block, in projector).
Yes I know, if it can do 48.. why not at least 30? Well, apparently, it just cannot.
very disappointing.
James Gardiner
www.cinetechgeek.com
deppen_s
09-28-2010, 07:28 AM
hello everyone, i'm new here n new to dcp. i read all post n i don't understand how to make mpeg2 dcp. i want to make a mpeg2 dcp. i want to use open tool to make it.
ps- sorry for bad english
Wolfgang Woehl
09-29-2010, 01:18 AM
Hi deppen_s,
thought I might just google that for you: http://code.google.com/p/opencinematools/issues/detail?id=34
James Gardiner
09-29-2010, 04:25 AM
I have some terrible news on SMPTE DCP creation.
In my investigation of its support on many different SMS's I have some to discover that current hardware will never be able to do more then 25fps.
So 30,50,60 are a no go.
This is not welcome news as the support for those frame rates are great for film festivals etc.
The extra frame rates are only likely to be available in the next generation SMS (The IMB, internal media block, in projector).
Yes I know, if it can do 48.. why not at least 30? Well, apparently, it just cannot.
very disappointing.
www.cinetechgeek.com
Update,
Doremi DO support 30fps. They actually support pretty much every standard frame rate up to 30 in 2D and 3D. So thats well done for Doremi.
Anything over 30fps will come in the new SMS hardware some time next year. Ie 60fps content. I am actually very keen to see stuff shot right in 60fps.
James
Rainer Fritz
09-30-2010, 01:49 AM
on which format do you format your transport harddisks for the servers?? which one works best on which dcp server?
deppen_s
09-30-2010, 03:33 AM
thankx for reply Wolfgang Woehl but i don't get any info about mpeg2 dcp. i know how to export movie in image sequence tiff or dpx but i don't know which one is use for mpeg2 dcp.
From avid we can export move to .mxf, can we use this .mxf file for dcp if not then what type of tool we need. i'm using after effect cs4
Terrence Meiczinger
10-07-2010, 11:11 PM
I've added a new tool called opendcp_j2k to the OpenDCP package. It is basically a stripped down image_to_j2k designed to only support digital cinema profiles. The main advantage is that it will support any frame rate. The input should be a 12-bit tiff in the XYZ colorspace. It doesn't support folders, so you'll want to wrap a script around it. It requires the OpenJPEG 1.3 library. It may work with v2, but I have not tried it.
Let me know of any issues.
http://code.google.com/p/opendcp/
Antony
10-12-2010, 08:52 AM
Hellllp!!!!!!
I have created a working DCP with open cinema tools. Everything encoded fine without issues, however, the clip i take to the theatre on playback on a Sony 4K suddenly starts to drift out of sync at 2mins from the end. All is ok up to that point. Initially, I thought it could be a difference in the frame rate, but both audio and video have been working to 24fps. I am completely frustrated. What's very odd is no matter how many times I create the DCP it drops out of sync at the same place. Any Ideas??????
Just to make things clear. All is in sync on the original timelines.
Wolfgang Woehl
10-12-2010, 09:46 AM
Post the CPL. Try on a different server/projector setup. Check with Sony.
Antony
10-12-2010, 11:58 AM
Hi Wolfgang,
The Sony server seems to be fine as it plays other DCP's without fail or issues.
Here is the CPL
<?xml version="1.0" encoding="UTF-8"?>
<CompositionPlaylist xmlns="http://www.smpte-ra.org/schemas/429-7/2006/CPL">
<Id>urn:uuid:583e1a6a-76d1-42fb-8602-76661f6bcb60</Id>
<AnnotationText>SUMMERTIME7_FTR-1_S_EN-XX_UK-XX_51_2k_TIF_20100419</AnnotationText>
<IssueDate>2010-10-12T19:49:05+00:00</IssueDate>
<Issuer>antony@localhost</Issuer>
<Creator>OpenCinemaTools - mkcpl 1.1.2</Creator>
<ContentTitleText>SUMMERTIME7_FTR-1_S_EN-XX_UK-XX_51_2k_TIF_20100419</ContentTitleText>
<ContentKind>feature</ContentKind>
<ContentVersion>
<Id>urn:uuid:d63fcb91-fddc-40b2-be23-3d8db85cdef2</Id>
<LabelText>d63fcb91-fddc-40b2-be23-3d8db85cdef2</LabelText>
</ContentVersion>
<RatingList></RatingList>
<ReelList>
<Reel>
<Id>urn:uuid:a19e578d-582a-4f04-9dd4-5a53d89d4477</Id>
<AssetList>
<MainPicture>
<Id>urn:uuid:0e7c4cba-f206-4b45-b1b6-26cd828795f6</Id>
<EditRate>24 1</EditRate>
<IntrinsicDuration>10657</IntrinsicDuration>
<EntryPoint>0</EntryPoint>
<Duration>10657</Duration>
<FrameRate>24 1</FrameRate>
<ScreenAspectRatio>2048 858</ScreenAspectRatio>
</MainPicture>
<MainSound>
<Id>urn:uuid:b1fc3fd5-8aad-4f2b-9148-c6715d22371c</Id>
<EditRate>24 1</EditRate>
<IntrinsicDuration>10657</IntrinsicDuration>
<EntryPoint>0</EntryPoint>
<Duration>10657</Duration>
</MainSound>
</AssetList>
</Reel>
</ReelList>
</CompositionPlaylist>
Terrence Meiczinger
10-12-2010, 08:02 PM
Hi Wolfgang,
The Sony server seems to be fine as it plays other DCP's without fail or issues.
Here is the CPL
<?xml version="1.0" encoding="UTF-8"?>
<CompositionPlaylist xmlns="http://www.smpte-ra.org/schemas/429-7/2006/CPL">
<Id>urn:uuid:583e1a6a-76d1-42fb-8602-76661f6bcb60</Id>
<AnnotationText>SUMMERTIME7_FTR-1_S_EN-XX_UK-XX_51_2k_TIF_20100419</AnnotationText>
<IssueDate>2010-10-12T19:49:05+00:00</IssueDate>
<Issuer>antony@localhost</Issuer>
<Creator>OpenCinemaTools - mkcpl 1.1.2</Creator>
<ContentTitleText>SUMMERTIME7_FTR-1_S_EN-XX_UK-XX_51_2k_TIF_20100419</ContentTitleText>
<ContentKind>feature</ContentKind>
<ContentVersion>
<Id>urn:uuid:d63fcb91-fddc-40b2-be23-3d8db85cdef2</Id>
<LabelText>d63fcb91-fddc-40b2-be23-3d8db85cdef2</LabelText>
</ContentVersion>
<RatingList></RatingList>
<ReelList>
<Reel>
<Id>urn:uuid:a19e578d-582a-4f04-9dd4-5a53d89d4477</Id>
<AssetList>
<MainPicture>
<Id>urn:uuid:0e7c4cba-f206-4b45-b1b6-26cd828795f6</Id>
<EditRate>24 1</EditRate>
<IntrinsicDuration>10657</IntrinsicDuration>
<EntryPoint>0</EntryPoint>
<Duration>10657</Duration>
<FrameRate>24 1</FrameRate>
<ScreenAspectRatio>2048 858</ScreenAspectRatio>
</MainPicture>
<MainSound>
<Id>urn:uuid:b1fc3fd5-8aad-4f2b-9148-c6715d22371c</Id>
<EditRate>24 1</EditRate>
<IntrinsicDuration>10657</IntrinsicDuration>
<EntryPoint>0</EntryPoint>
<Duration>10657</Duration>
</MainSound>
</AssetList>
</Reel>
</ReelList>
</CompositionPlaylist>
One thing you can try is to edit the EntryPoint values to something past the time at which the sync issue begins. Something like 8640 would get you 6 minutes in. If they are still out of sync, it would seem like your source media a/v is out of sync.
Wolfgang Woehl
10-12-2010, 11:41 PM
Antony, the CPL is ok. In addition to what Terrence suggests: Check whether the image codestream turns funky around the de-sync spot. Simon Burley, recently over on cml-post, pointed at an issue with Doremi media block firmware issues preceding v21.1Z (in this case full bitrate 3D streams, perfectly within specs but still crashing the media block). Suggesting there can be deep issues with media block/firmware and certain material combinations. Unless your source is out of sync, of course.
Terrence, custom entry point and duration might be a neat addition to opendcp_xml.
Antony
10-13-2010, 01:32 AM
Hi Wolfgang/Terence,
Thanks for your help. I will investigate further and post any findings here.
Terrence Meiczinger
10-13-2010, 08:10 AM
Terrence, custom entry point and duration might be a neat addition to opendcp_xml.
Good idea. I can add single duration/entry points easily. The only hard thing would be if you wanted different values for each asset. That would make for a convoluted command line. That is where a GUI will be nice.
deppen_s
10-14-2010, 01:08 AM
plz, someone help me. i want to make mpeg2 dcp. i read all the tutorial from all user. i have all software like after effect, open cinema tool, converter and dcpc. in dcpc i'm getting "JIT" error and in open cinema i'm also getting a error.
Wolfgang Woehl
10-14-2010, 01:29 AM
deppen_s, you sure you read the link I had posted (http://code.google.com/p/opencinematools/issues/detail?id=34) answering your question? It's all in there and it works just fine. It also involves building a patched version of opencinematools if you choose to go that route.
Also, this forum has a real-names-policy. While none of my business, of course, it does feel somewhat awkward for a german to address you as "deppen_s". See http://reduser.net/forum/showthread.php?t=27544 to fix that.
deppen_s
10-14-2010, 02:04 AM
hi woifgang, i checked your given link but i not able to find any thing. i know how to make mpeg2 dcp but i'm not able to make dcp coz of errors. i'm using windows xp. in windows how apply patch in open cinema tool.
Antony
10-18-2010, 07:40 AM
Hi Guys, here's an update on my syncing issue.
It turns out that the picture/sound wasn't drifting. It was consistently out by 4 frames. The logical answer to this problem is that light travels faster than sound. Surely, the theatres are geared up for this though aren't they? I have checked with them and they don't get issues on other DCPs. They used to get it now and again with Celluloid but the compensated for that manually. However, they used to compensate at 4 frames so that it would sync up.
As I mentioned before, both video and audio are in sync on the timeline and when split up and used within different software. I tried adjusting the entry point, but it corrupted the CPL and the Sony server wouldn't even recognise it.
These leaves me with one area left that hopefully you guys could shed some light on. Is it conceivable that it could be happening during the MXF wrapping stage?
Yet, this doesn't make sense, because all image files and audio add up to the same length.
Any thoughts?
Wolfgang Woehl
10-18-2010, 11:32 AM
Antony, indeed 35mm release prints carry sound 21 frames ahead of the corresponding picture (the sound reader cannot sit right at the image gate). In a film projector that distance can be tweaked (to a certain amount) by short-loading between image gate and sound reader.
Assuming your DCP's audio is synced correctly and the venue's audio chain doesn't introduce additional delay you would have to be ~57 metres away from the screen to hear a sync point 4 frames late (167ms). Is that it?
To adjust your DCP you would have to re-author because the packing list carries values to check the integrity of assets (size and file digests).
Also, I believe, a cinema server's behaviour is undefined in the case of an audio asset being playback-short (in comparison to MainPicture). I'd append 4 black frames to image and 4 audio frames to audio, just to make sure.
MichaelP
10-18-2010, 12:45 PM
At 24 frames per second, a 4 frame delay would be 1/6th of a second. 167/6 is not 57 but 27.8.
Michael
Terrence Meiczinger
10-18-2010, 01:06 PM
As Wolfgang pointed out, the main audio sync compensation done in film is due to the distance between the picture gate and sound gate, which varies depending on the audio format being decoded. There is also some delay introduced between the sound gate, audio processor, and speakers. Additionally, the size of the venue can affect the delay. All of these are typically accounted for during equipment installation and calibration. If there was an issue, it would be in all of the material. However, it is possible it would be more noticeable in some scenes than others. I'm not sure I would notice a consistent delay of 4 frames.
You could create a DCP to test the calibration. You know, like those film ones that show a number counting down and then play a sound.
Wolfgang Woehl
10-18-2010, 01:06 PM
Rule of proportion: 167 ms (4 frames@24 fps) * 343 metres (distance sound travels during 1 second) / 1000 ms = 57 metres (343 metres / 6 = 57 metres)
Unless Jennifer Jones is up on the screen.
Wolfgang Woehl
10-18-2010, 01:35 PM
You could create a DCP to test the calibration. You know, like those film ones that show a number counting down and then play a sound.
Couple of days ago Hal Smith pointed me to a BBC research paper (Managing a real world Dolby E broadcast workflow (http://downloads.bbc.co.uk/rd/pubs/whp/whp-pdf-files/WHP175.pdf)) which includes a description of BBC's audio sync test signal (Section 4.3 Synchronisation in the Home). Very neat as it allows you to closely judge the offset.
Btw, that paper is so awesome. After learning everything about Dolby E you hadn't even imagined one could ask and know make sure you read the appendices for an explanation of time deceleration. It involves the author's daughter, a telephone and a bill.
deppen_s
10-20-2010, 08:48 AM
first thankx wolfgang for helping me and other like me. now i can make mpeg2 dcp with software like dcpc and i want to know 2 things
1. how to make mpeg dcp from single image in XYZ color
2. how to transform movie in XYZ color space
Terrence Meiczinger
10-21-2010, 09:57 AM
first thankx wolfgang for helping me and other like me. now i can make mpeg2 dcp with software like dcpc and i want to know 2 things
1. how to make mpeg dcp from single image in XYZ color
2. how to transform movie in XYZ color space
You don't, mpeg doesn't use XYZ colorspace.
deppen_s
10-21-2010, 11:13 AM
You don't, mpeg doesn't use XYZ colorspace.
i read your earlier post in which you showed the way to make mpeg using ffmpeg command "ffmpeg -i source.mts -flags +ildct+ilme -s 1920x1080 -an -sameq final.m2v". through this i made m2v file for DCP. now i have a still slide n want to make a 10 sec. DCP. using after effect i can make movie or i should use some other way to make movie.
In earlier post you also mention about cinemaslides, which we can run on windows using cygwin. can we use this for making my 10 sec. DCP? i don't know about Linux commands, so can you help me
thank you
Wolfgang Woehl
10-22-2010, 11:04 AM
While cinemaslides' main purpose is to make slideshow DCPs you might be well advised to do this with AE, since you mention being unfamiliar with linux environments. Installing cinemaslides is not entirely trivial, so there. I'll write a guide to facilitate the process, I promise ...
Cursory googling tells me you can import single frames in AE (uncheck the "Sequence" option) and export as MPEG2 elementary stream (common extension "m2v").
deppen_s
10-23-2010, 03:47 AM
While cinemaslides' main purpose is to make slideshow DCPs you might be well advised to do this with AE, since you mention being unfamiliar with linux environments. Installing cinemaslides is not entirely trivial, so there. I'll write a guide to facilitate the process, I promise ...
Cursory googling tells me you can import single frames in AE (uncheck the "Sequence" option) and export as MPEG2 elementary stream (common extension "m2v").
thankx for making a guide for cinemaslides, i i hope everyone will happy to hear this. well i'm trying to export movie in m2v from AE but it show some error. i think AE doesn't support export m2v in 2048x858. even ffmegp is not giving me this size. i want to make DCP from mp4 file. is there any other way to make and convert file to m2v? easy way so all can understand in single read.
Wolfgang Woehl
10-23-2010, 05:01 AM
$ ffmpeg -i some.mp4 -sameq -s 2048x858 es.m2v works, of course.
I very much doubt that AfterEffects shouldn't be able to export 2048x858. Read the manual?
ps: Whenever you're asking for help about errors you get from any app it makes an insane amount of sense to include the error messages in your request. Gives people an incentive to consider to look at the problem in detail.
deppen_s
10-26-2010, 04:52 AM
$ ffmpeg -i some.mp4 -sameq -s 2048x858 es.m2v works, of course.
I very much doubt that AfterEffects shouldn't be able to export 2048x858. Read the manual?
ps: Whenever you're asking for help about errors you get from any app it makes an insane amount of sense to include the error messages in your request. Gives people an incentive to consider to look at the problem in detail.
Ae don't support export movie in m2v at 2048x858 but we can export movie in mov( Quick time) at 2048x858 then we can convert that movie in m2v though ffmpeg. Or there is another way to make m2v in windows.
deppen_s
11-08-2010, 10:09 AM
hello dear, how are you. now i want to make mpeg from image squence ( Test_001.jpg ........ Test_240.jpg) . i'm using this command ffmpeg.exe -f image2 -i H:\NewFolder\test_%03d.jpg -sameq -s 2048x858 foo.m2v and its not working. i'm getting this error message swScaler: Unknown format is not supported as input pixel format. frame rate should be 24 fps.
Wolfgang Woehl
11-09-2010, 12:09 AM
Use Imagemagick's "identify <your image>" to check bit-depth per component. Your source is probably not 8bpc. Your line should work fine with 8bpc source. "ffmpeg -pix_fmt list" will tell you about (theoretically) supported pixel formats. In practice 16bpc source support in ffmpeg (rgb48be, rgb48le) still seems flaky. You'd need the right -pix_fmt ahead of the -i switch.
Wolfgang Woehl
11-09-2010, 01:00 AM
Fabrizio, hi. We've set out to work on digital cinema signatures, essence encryption and ultimately KDMs. We, that's Terrence Meiczinger, Ronan Delacroix, Heath Jepson, Chris Perry, Samuel Trygger, Alaric Hamacher, myself.
The goal is to document and implement the process as transparently as possible.
I'm well aware that all of us have busy schedules and a number of projects on our hands. So this will take some time. Doesn't matter. I'm confident we can pull it off.
Now I think it should be easy to extract from the KDM the AES key and decrypt the small test movie, using my new private key (even if I don't know yet which tool to use for extracting the key: openssl? xmlsec? ).
You've probably solved this already. If not look at kdm-decrypt (http://www.dcimovies.com/DCI_CTP_v1_1.pdf (http://www.dcimovies.com/DCI_CTP_v1_1.pdf) (section C. Source Code)
$ kdm-decrypt <kdm-file> <rsa-private-key-pem-file>
will decrypt a KDM's <CipherValue> content if it was targeted at the corresponding certificate.
You can test this with make-dc-certificate-chain.rb (https://github.com/wolfgangw/digital_cinema_tools/blob/master/make-dc-certificate-chain.rb) which is a proof-of-concept script to generate a digital cinema compliant certificate chain. Take the generated "leaf.signed.pem" to CineCert's KDM Generator for DCI Test Content v1.3 (http://www.cinecert.com/dci_ref_01/) and generate a KDM targeting your leaf certificate (which is sort of mis-used here as a device certificate).
Please get in touch if you want to share your findings and experiments. Also take a look at Digital cinema authentication (https://github.com/wolfgangw/digital_cinema_tools/wiki/Content-protection) where we collect notes and snippets.
deppen_s
11-09-2010, 05:37 AM
this is my identify test report of image "test_001.jpg JPEG 2048x858 2048x858+0+0 8-bit DirectClass 783KB 0.016u 0:00.030". its 8 bit image if this image ie right then whats wrong with my command or is not a right image then how can make it work. i'm trying to make a batch file for all this prosses. and i need your help in this so plz help us
Wolfgang Woehl
11-09-2010, 06:43 AM
Yes, looks ok. You can try "identify -verbose <image>" for more output.
deppen_s
11-17-2010, 12:27 AM
today i got chance to checked my first DCP in a cinema and i failed. only audio is coming out, no video. i don't know where i was wrong. i'm showing you my all steps how i made that DCP.
1 i got a movie in 720x576 in quicktime format (mov)
2 ffmpeg -i some.mov -sameq -s 2048x858 es.m2v
3 ffmpeg -i some.mov -sameq es.wav
4 using audio software changed my wave file
5 for making DCP i use Digital Cinema Package Creator V1.3.7.5 with these settings
mxf mode :- SMPTE Ul ( Mxf interop also there)
color mode:- sRGB -> X'Y'Z'
Video/Audio frame Alignment :- Active
Also there is 1 setting left which i didn't use that is
Keep temp J2K Files
those was all setting for mpeg DCP which i used. now plz help me, where i'm wrong. with affter effect i can make move in 2048x858 in MoV format ( export in QuickTime ). is there any other way to make this movie then plz let me know
deppen_s
11-17-2010, 05:38 AM
i also checked my DCP in easyDCP player and i got this error
Warnings for CPL "H:/dcp/new/Kalpana_TVC/DCP\CPL_Kalpana_TVC.xml":
Picture track file with UUID 00b23337-f5b6-4271-8af6-581bc03b5d64 is referenced by a CPL, but not listed in the PKL.
Wolfgang Woehl
11-17-2010, 11:08 AM
Upon ingest a DCP player (like a DCI cinema server) looks for an assetmap file, which maps assets (image/audio/subtitles/closed caption trackfiles) to a location on the ingest medium (or stream).
An assetmap needs to list 1 packing list (PKL) which in turn lists assets and associated metadata. Usually a packing list would contain at least 1 composition playlist (CPL. It doesn't have to, though).
In a composition playlist everything is brought together to produce the final presentation for the screen.
You need to use a specific projector preset in order to play packages with MPEG2 essence. These are usually called something along the lines of "MXFI".
You need to track down easydcp player's warning message: Did your authoring app create a trackfile with that uuid? Use "asdcp-test -v -i <mxf trackfile>" to check uuid's. If it did you need to ask the app's author why that asset didn't end up in the packing list.
By the way: Offering srgb->xyz colorspace transform for MPEG2 essence makes no sense.
deppen_s
11-18-2010, 05:10 AM
This is my CPL_CNM_TVC_60sec.xml
<?xml version="1.0" encoding="UTF-8" ?>
- <CompositionPlaylist xmlns="http://www.digicine.com/PROTO-ASDCP-CPL-20040511#">
<Id>urn:uuid:4d9f7a93-0394-4d12-bffa-06d411eecbb2</Id>
<AnnotationText>CNM_TVC_60sec</AnnotationText>
<IssueDate>2010-11-11T15:38:06+05:30</IssueDate>
<Issuer>CNM_TVC_60sec</Issuer>
<Creator>Digital Cinema Package Creator V1.3.7.5 by Lars Reichel</Creator>
<ContentTitleText>CNM_TVC_60sec</ContentTitleText>
<ContentKind>feature</ContentKind>
<RatingList />
- <ReelList>
- <Reel>
<Id>urn:uuid:acb54e47-186e-4939-84da-ebe7d3082d2b</Id>
- <AssetList>
- <MainPicture>
<Id>urn:uuid:e875b9ca-37b3-4e10-96ad-ee0aff3a8a7f</Id>
<EditRate>24 1</EditRate>
<IntrinsicDuration>1457</IntrinsicDuration>
<EntryPoint>0</EntryPoint>
<Duration>1457</Duration>
<Hash>YtP1ib6wOWiLtZxNZycYSxCGMXM=</Hash>
<FrameRate>24 1</FrameRate>
<ScreenAspectRatio>4 3</ScreenAspectRatio>
</MainPicture>
- <MainSound>
<Id>urn:uuid:4df1efeb-bf31-4b35-b8b9-93521e085adb</Id>
<EditRate>24 1</EditRate>
<IntrinsicDuration>1457</IntrinsicDuration>
<EntryPoint>0</EntryPoint>
<Duration>1457</Duration>
<Hash>TqXwXZzfM7q6AKYsqpiPfMuQnQk=</Hash>
</MainSound>
</AssetList>
</Reel>
</ReelList>
</CompositionPlaylist>
This is my PKL_CNM_TVC_60sec.pkl.xml
<?xml version="1.0" encoding="UTF-8" ?>
- <PackingList xmlns="http://www.digicine.com/PROTO-ASDCP-PKL-20040311#">
<Id>urn:uuid:35dedb5c-420c-4e06-bee7-bf5b0e06fabd</Id>
<AnnotationText>CNM_TVC_60sec</AnnotationText>
<IssueDate>2010-11-11T15:38:07+05:30</IssueDate>
<Issuer>CNM_TVC_60sec</Issuer>
<Creator>Digital Cinema Package Creator V1.3.7.5 by Lars Reichel</Creator>
- <AssetList>
- <Asset>
<Id>urn:uuid:e875b9ca-37b3-4e10-96ad-ee0aff3a8a7f</Id>
<Hash>YtP1ib6wOWiLtZxNZycYSxCGMXM=</Hash>
<Size>51671175</Size>
<Type>application/x-smpte-mxf;asdcpKind=Picture</Type>
<OriginalFileName>v_CNM_TVC_60sec.M2V.mxf</OriginalFileName>
</Asset>
- <Asset>
<Id>urn:uuid:4df1efeb-bf31-4b35-b8b9-93521e085adb</Id>
<Hash>TqXwXZzfM7q6AKYsqpiPfMuQnQk=</Hash>
<Size>17529834</Size>
<Type>application/x-smpte-mxf;asdcpKind=Sound</Type>
<OriginalFileName>a_CNM_TVC_60sec.PCM.mxf</OriginalFileName>
</Asset>
- <Asset>
<Id>urn:uuid:4d9f7a93-0394-4d12-bffa-06d411eecbb2</Id>
<Hash>EvBsng3E13LVgQ9+qE6mWMZYzk4=</Hash>
<Size>1400</Size>
<Type>text/xml;asdcpKind=CPL</Type>
<OriginalFileName>CPL_CNM_TVC_60sec.xml</OriginalFileName>
</Asset>
</AssetList>
</PackingList>
And this is my asdcp-test test report
H:\Digital_Cinema\opencinematools-1.1.2-bin-win32\opencinematools-1.1.2\bin>asd
p-test -v -i H:\dcp\new\CNM_TVC_60sec\DCP\v_cnm_tvc_60sec.m2v.m xf
File essence type is MPEG2 video.
ProductUUID: 7d836e16-37c7-4c22-b2e0-46a717e84f42
ProductVersion: 1.5.32
CompanyName: WidgetCo
ProductName: asdcp-test
EncryptedEssence: No
AssetUUID: e875b9ca-37b3-4e10-96ad-ee0aff3a8a7f
Label Set Type: MXF Interop
SampleRate: 25/1
FrameLayout: 0
StoredWidth: 2048
StoredHeight: 858
AspectRatio: 4/3
ComponentDepth: 8
HorizontalSubsmpl: 2
VerticalSubsmpl: 2
ColorSiting: 3
CodedContentType: 1
LowDelay: 0
BitRate: 104857200
ProfileAndLevel: 68
ContainerDuration: 1457
deppen_s
11-18-2010, 05:18 AM
now some one told me that easydcp player dose not support mpeg dcp. my friend is using same software and his dcp is work fine. he is using image sequence to build mpeg file. i don't know how he do it. can u tell all the steps and command to make mpeg dcp.
Ronan Delacroix
11-18-2010, 06:03 AM
Hey Deppen,
It seems to me with a first look that your PKL contains the video mxf file reference. You need to look if the path and hash is good too.
Also, you should write your assetmap here too to see if that there is any problem in it.
I personnaly dont know a lot about mpg2 mxf but I dont think it is the key of your problem.
Cheers,
R.
deppen_s
11-19-2010, 12:58 AM
i checked frame rate of my mpeg2 and that was 25 fps should i change it to 24 fps or its ok.
Chris Perry
11-20-2010, 05:17 PM
FYI DCP folks: I've updated my open source DCP pipeline to reflect some recent discoveries, particularly in the area of proper audio handling. The DCPs we've made this way have played successfully on Doremi, Dolby DSS, and XDC Cinestore servers (the only ones we've tested on to date).
http://bitfilms.blogspot.com/2010/11/making-dcp-entirely-with-open-source.html
- chris
deppen_s
11-30-2010, 10:35 PM
today i found new dcp player which plays only jpeg2000 dcp. use this link to download it
http://www.digitall.net.au/downloads/dcpPlayer.1.0.0.5.demo.exe
any one know about dcp player which play mpeg dcp other then Stereoscopic Player
deppen_s
11-30-2010, 10:50 PM
still now i'm not able to make any mpeg dcp. we are using e-cinema servers. you all are talking about j2k and j2k need huge space, other then mpeg its use less space. is there other way to make mpeg dcp for e- cinema. i used all the command to make this dcp. openDCP maker not work with mpeg, its giving me error and there are patch available but thats for Linux and Mac not for windows.
Terrence Meiczinger
12-01-2010, 08:19 AM
still now i'm not able to make any mpeg dcp. we are using e-cinema servers. you all are talking about j2k and j2k need huge space, other then mpeg its use less space. is there other way to make mpeg dcp for e- cinema. i used all the command to make this dcp. openDCP maker not work with mpeg, its giving me error and there are patch available but thats for Linux and Mac not for windows.
Deppen,
If you want help, you need to be more specific as to what the failure is and what commands you are using.
What are the exact commands you issued?
What are the error messages you received?
Just saying something doesn't work doesn't give us much to go on.
deppen_s
12-01-2010, 09:16 AM
we are using e-cinema server
all steps how i made that DCP.
1 i got a movie in 720x576 in quicktime format (mov)
2 ffmpeg -i some.mov -sameq -s 2048x858 es.m2v
3 ffmpeg -i some.mov -sameq es.wav
4 using audio software changed my wave file
5 for making DCP i use Digital Cinema Package Creator V1.3.7.5 with these settings
mxf mode :- SMPTE Ul ( Mxf interop also there)
Video/Audio frame Alignment :- Active
open cinema tool is not support mpeg n its giving error "ESS_MPEG2_VES is not Supported."
i'm using windows and i need solution for windows only
Terrence Meiczinger
12-01-2010, 10:47 AM
we are using e-cinema server
all steps how i made that DCP.
1 i got a movie in 720x576 in quicktime format (mov)
2 ffmpeg -i some.mov -sameq -s 2048x858 es.m2v
3 ffmpeg -i some.mov -sameq es.wav
4 using audio software changed my wave file
5 for making DCP i use Digital Cinema Package Creator V1.3.7.5 with these settings
mxf mode :- SMPTE Ul ( Mxf interop also there)
Video/Audio frame Alignment :- Active
open cinema tool is not support mpeg n its giving error "ESS_MPEG2_VES is not Supported."
i'm using windows and i need solution for windows only
Did you use asdcp-test to create the video and audio MXF files?
Try using OpenDCP (http://code.google.com/p/opendcp/) to generate the XML files once you have the appropriate MXF files created.
Wolfgang Woehl
12-05-2010, 10:42 PM
Proof-of-concept code to build signed and encrypted DCPs and create KDMs (key delivery messages) for those packages is up on https://github.com/wolfgangw/digital_cinema_tools/wiki/Cinemaslides-Usage. Use make-dc-certificate-chain.rb (https://github.com/wolfgangw/digital_cinema_tools/blob/master/make-dc-certificate-chain.rb) to create a required set of digital cinema compliant X.509 certificates.
This has been tested extensively on our XDC Solo G3. It'd be great if we could extend the range and run some tests on other servers. Someone interested?
Terrence Meiczinger
12-06-2010, 09:05 PM
Proof-of-concept code to build signed and encrypted DCPs and create KDMs (key delivery messages) for those packages is up on https://github.com/wolfgangw/digital_cinema_tools/wiki/Cinemaslides-Usage. Use make-dc-certificate-chain.rb (https://github.com/wolfgangw/digital_cinema_tools/blob/master/make-dc-certificate-chain.rb) to create a required set of digital cinema compliant X.509 certificates.
This has been tested extensively on our XDC Solo G3. It'd be great if we could extend the range and run some tests on other servers. Someone interested?
Your tenacious persistence is impressive. This is a huge milestone for open source digital cinema.
Pavel Klepinin
12-08-2010, 03:56 AM
Proof-of-concept code to build signed and encrypted DCPs and create KDMs (key delivery messages) for those packages is up on https://github.com/wolfgangw/digital...maslides-Usage. Use make-dc-certificate-chain.rb to create a required set of digital cinema compliant X.509 certificates.
This has been tested extensively on our XDC Solo G3. It'd be great if we could extend the range and run some tests on other servers. Someone interested?
It's an excellent news an an excellent job. Greetings to all of the team. We can test your project on DSS 200 firmware 4.2.1.3 if it would be usefull.
And another dcp-related question. People from my russian-speaking forum (http://cinemaprofs.ru/viewtopic.php?f=7&t=2) inquire if someone tried to solve a problem of audio normalization (using something script-related, to make it automatic)?
Wolfgang Woehl
12-08-2010, 05:05 AM
Pavel, testing on DSS200 would be great. There's a test DCP up on github (plaintext and encrypted version):
PLAINTEXT-BLUE_TST_F_2K_20101208_WOE_OV.zip (https://github.com/wolfgangw/digital_cinema_tools/raw/master/PLAINTEXT-BLUE_TST_F_2K_20101208_WOE_OV.zip) and CRYPT-BLUE_TST_F_2K_20101208_WOE_OV.zip (https://github.com/wolfgangw/digital_cinema_tools/raw/master/CRYPT-BLUE_TST_F_2K_20101208_WOE_OV.zip)
These are 3 seconds blue screen with 2 channel audio. Let me know how I can get your server certificate and I'll send you a KDM for testing.
Wrt audio normalization: sox will do that. I'm using
def sox_conform( audiofile, samplerate, bps, channelcount, asset ) # and normalise to -20 dB FS (SMPTE 428-2-2006)
`sox #{ audiofile } -r #{ samplerate } -b #{ bps } -c #{ channelcount } -s -t wavpcm #{ asset } gain -n -20`
end
in cinemaslides' audio section.
Wolfgang Woehl
12-08-2010, 05:30 AM
Terrence, yes, I sure hope we'll be able to get some advanced authoring features out of the freezer. Contrary to some people's worries I think that commoditizing these features will be good for the platform and that it will possibly generate more business, not less.
Hey, I'm seeing version 0.14 of your http://code.google.com/p/opendcp/, great. You move fast :)
Terrence Meiczinger
12-08-2010, 10:26 AM
These are 3 seconds blue screen with 2 channel audio. Let me know how I can get your server certificate and I'll send you a KDM for testing.
Did you happen to find out if there is a central repository for server certificates? I know we give module number/serial numbers to Technicolor. They would then have to get the cert from Dolby in our case. I guess they must then keep an additional database that ties each server to a location.
Terrence Meiczinger
12-08-2010, 10:48 AM
Terrence, yes, I sure hope we'll be able to get some advanced authoring features out of the freezer. Contrary to some people's worries I think that commoditizing these features will be good for the platform and that it will possibly generate more business, not less.
I would agree. You increase interest when there is a low barrier to entry. It may seem counter intuitive, but that can increase business for professionals. You increase demand overall as people become aware. While some are happy with the do it yourself approach, many will go on to seek out commercial solutions.
Hey, I'm seeing version 0.14 of your http://code.google.com/p/opendcp/, great. You move fast :)[/QUOTE]
I added MXF file creation, so its almost a real solution now. I think it has simplified the process we were all using just a few months ago. I hadn't even considered adding encryption, but seeing Cinemaslides has inspired me to put it in my todo list.
Wolfgang Woehl
12-08-2010, 02:06 PM
XDC, a server vendor located in Belgium and rather strong in Europe, has server certificates up on ftp.xdcinema.com (user: certif pass: certif). For example the certificate for our XDC Cinestore Solo G3 (sn 200100400530; CID 000487) and the corresponding certificate chain can be found in ftp.xdcinema.com/200100400530/.
Alaric mentioned that Doremi has the same, rather accessible, approach. Anyone has a link?
Related is FLMx (Facility list message) and ISDCF's efforts to extend the standards. Some info on http://flm.foxpico.com (user: isdcf pass: isdcf) -- This is linked to from ISDCF at http://www.isdcf.com/ISDCF/Meetings.html.
Wolfgang Woehl
12-08-2010, 02:20 PM
I added MXF file creation, so its almost a real solution now. I think it has simplified the process we were all using just a few months ago.
Great to see how things are taking off.
I hadn't even considered adding encryption, but seeing Cinemaslides has inspired me to put it in my todo list.
Thanks to asdcplib the encryption part is easy and you'll be able to include that without much of a hassle. KDM generation is a tad more finnicky. But again thanks to a number of open source tools (xmlsec and openssl for core work) the effort won't be gruesome.
Ping me whenever this hits the top of your todo list, I'd be glad to help.
jonathanj
12-09-2010, 04:31 AM
Pavel, testing on DSS200 would be great. There's a test DCP up on github (plaintext and encrypted version):
PLAINTEXT-BLUE_TST_F_2K_20101208_WOE_OV.zip (https://github.com/wolfgangw/digital_cinema_tools/raw/master/PLAINTEXT-BLUE_TST_F_2K_20101208_WOE_OV.zip) and CRYPT-BLUE_TST_F_2K_20101208_WOE_OV.zip (https://github.com/wolfgangw/digital_cinema_tools/raw/master/CRYPT-BLUE_TST_F_2K_20101208_WOE_OV.zip)
These are 3 seconds blue screen with 2 channel audio. Let me know how I can get your server certificate and I'll send you a KDM for testing.
I'll ingest your test DCP on our Doremi DCP2000 and wait for a KDM, so I can test it when we have a quiet moment here.
I'm not sure how to get you the right certificate, unless you just mean the server serial number?
It's really exciting, all this recent development in the opensource DCP community.
Digital screenings are quite new here in Denmark, and it's interesting to follow the "first" footsteps of the companys who dare to walk the road of DCP :)
For a little pet project of mine, I have found all the info here in this thread a big help and inspiration to start builing my on scripts for opensource DCP making.
Specially with OpenDCP it seems more simple to optimize the workflow and utilize more than one cpu core.
It'll keep me happy until a CUDA based jpeg2k encoder sees the light of day... one that can spit out files with the correct attributes of course.
Terrence Meiczinger
12-09-2010, 11:04 AM
Specially with OpenDCP it seems more simple to optimize the workflow and utilize more than one cpu core.
It'll keep me happy until a CUDA based jpeg2k encoder sees the light of day... one that can spit out files with the correct attributes of course.
Parallel processing is an interesting thing and gets complicated. A GPU might be faster compressing a single large where it can take advantage of its architecture to do micro-calculations. However, say you needed to process multiple images at the same time, it might be faster on a multi-core CPU. It all depends on where the processing bottlenecks are.
Wolfgang Woehl
12-09-2010, 01:09 PM
I'll ingest your test DCP on our Doremi DCP2000 and wait for a KDM, so I can test it when we have a quiet moment here.
I'm not sure how to get you the right certificate, unless you just mean the server serial number?
Test would be great. Thanks Jonathan.
For targeting a KDM to a cinema server one needs the actual server certificate. Facilities who do this for mainstream distributors invest considerable amounts of money and time into collecting and nursing their in-house databases. These databases gather all required information about screens, servers and certificates. It's a business and they will, naturally, not share their hard-earned info.
While this 1000-islands approach works (most of the time) people in the industry are aware of its shortcomings. The level of inefficiency is outlandish. Tracking changing screen/server information by endless email blasts should be, I can only imagine, nightmarish. End users (theatres) are encouraged to join a dozen service providers for easier access to keys etc.pp.
Outside the mainstream distribution paths we are, for now, pretty much left with the same brittle and inefficient mechanism: Collect data one by one, stuff it in a database and come up with some kinds of access to it.
For our test case we want to correlate your server's serial number to a location on Doremi's site for certificates (which we have to find in the first place). Another option is to ask your integrator (the guys who sold and installed your equipment). When we bought our XDC Solo G3 last summer asking for our certificate was the 2nd question. Integrator gave us a blank stare. Called XDC and after a short Kafka run a dev told me about their ftp server and the required access info (See a previous post).
Well, we'll get there :)
It's really exciting, all this recent development in the opensource DCP community.
Digital screenings are quite new here in Denmark, and it's interesting to follow the "first" footsteps of the companys who dare to walk the road of DCP :)
Yes, interesting indeed. And somewhat depressing, considering the platform was conceived almost a decade ago, right?
For a little pet project of mine, I have found all the info here in this thread a big help and inspiration to start builing my on scripts for opensource DCP making.
You got public code somewhere?
Specially with OpenDCP it seems more simple to optimize the workflow and utilize more than one cpu core.
Yes, Terrence's work is a big leap forward. I mean, on the open-source side of the pond we're still living in caves, grinding away on stone tools -- For example take CineCert's Wailua and the scope of its authoring features and one can see that there's a lot of work left to even approach that kind of flexibility. I'm very glad that people like Terrence decided to dedicate time and energy to improve our tools.
Rodney Recor
12-15-2010, 05:19 PM
Just this week, I logged in to Reduser after being away for a long, long time. Interestingly enough, I came upon this thread. I say "interestingly" because I have spent the past few weeks in my own little learning curve world medium-painfully working to determine how to make my own DCP. So, I just read through this entire thread from beginning to end.
I succeeded in making my own DCP, and now I realize that I did so in no small part due to some of the ambitious work that you all have admirably done ahead of me. Thank you!
Here is just a little detail from my own research that may be of some value to you fellows who are working on your own dcp systems. (If this is just old information for you already, please excuse my naivete.)
In the Imagemagic batch command to convert a TIFF sequence from rgb to xyz, some of you (who are totally insane like myself about knowing the details about stuff like this) may want to know exactly what is going on in that matrix of numbers. Here is some data on that subject:
(I temporarily re-formatted the text to make this easier to read)
-recolor "
0.4124564 0.3575761 0.1804375
0.2126729 0.7151522 0.0721750
0.0193339 0.1191920 0.9503041"
means this:
X = (.412 x REDrgb) + (.358 x GREENrgb) + (.180 x BLUErgb)
Y = (.213 x REDrgb) + (.715 x GREENrgb) + (.072 x BLUErgb)
Z = (.019 x REDrgb) + (.119 x GREENrgb) + (.950 x BLUErgb)
CIE Recommendation 709.
The white point is D65 coordinates fixed as (xn;yn)=(0.312713;0.329016).
The RGB chromacity coordinates are:
Red: xr=0.64 yr=0.33 zr=1-(xr+yr)=0.03
Green: xg=0.30 yg=0.60 zg=1-(xg+yg)=0.10
Blue: xb=0.15 yb=0.06 zb=1-(xb+yb)=0.79
RGB -> CIE XYZccir709 (709):
|X| |0.412411 0.357585 0.180454| |Red |
|Y| = |0.212649 0.715169 0.072182| * |Green|
|Z| |0.019332 0.119195 0.950390| |Blue |
This provides the formula to transform RGB to CIE XYZccir709 and vice-versa:
RGB -> CIE XYZccir709 (D65)
X = 0.412*Red+0.358*Green+0.180*Blue
Y = 0.213*Red+0.715*Green+0.072*Blue
Z = 0.019*Red+0.119*Green+0.950*Blue
CIE XYZccir709 (D65) -> RGB
Red = 3.241*X-1.537*Y-0.499*Z
Green = -0.969*X+1.876*Y+0.042*Z
Blue = 0.056*X-.204*Y+1.057*Z
Leerafel
01-04-2011, 10:48 PM
I had no idea when I started this thread that it would evolve and bloom into the foremost comprehensive poor-mans guide to DCP creation LOL. I was looking back into DCP creation to see if there was a better poor-man's way yet... and this thread was in the top 4 on google. :ohmy:
Very cool stuff on here after I left! I'm only on page 28 trying to catch up... :violent5:
Flemming Lund
01-05-2011, 04:59 AM
Hi
How do you create a "SMPTE subtitles - subtitle.mxf" for OpenDCP version 0.15?
https://dci.foxpico.com/basic/subtitle-test-v7/
Thanks for a great thread and super apps
Terrence Meiczinger
01-05-2011, 09:28 AM
Hi
How do you create a "SMPTE subtitles - subtitle.mxf" for OpenDCP version 0.15?
https://dci.foxpico.com/basic/subtitle-test-v7/
Thanks for a great thread and super apps
OpenDCP version 0.15 will package an existing subtitle MXF into a DCP. However, it will not create a subtitle MXF itself. It is a feature that will be implemented, but probably not for another couple releases.
In the mean time you can use asdcp-test to create the subtitle MXF. It can then be packaged using OpenDCP.
Leerafel
01-05-2011, 12:54 PM
I was all proud of myself to get a working (although watermarked) DCP back at the beginning of this, but now I can't even figure out how to use Terrence's openDCP. I feel like a real dummy. I have no idea how to use these .exe files beyond double clicking on them, and that is doing nothing useful. Do I need an external program like Visual Studio, or what? Can someone point me in the right direction? 64 bit Windows Vista Home Premium.
By the way, REAL name is Jake D. Working on getting that swapped over from Leerafel
UPDATE: Ah. I was trying to run the exe files by clicking on them. That doesn't do anything. I figured out that I had to just run the commands within a command terminal. Problem solved.
Agustin Goya
01-05-2011, 01:08 PM
@Leerafelthis might help you with OpenDCP http://code.google.com/p/opendcp/wiki/Documentation
Leerafel
01-05-2011, 09:43 PM
I'm just about done creating my first DCP using openDCP... I wanted to test it out on easyDCP player... but all attempts to locate and download it have been futile. Any ideas on altranate DCP players?
UPDATE: I found a demo for a product called dcpPlayer from a company called "digitAll", but it gives me errors when I try to play any DCP, including my previous DCP that is tested and confirmed in working order. Still hunting for another app that I can test this new DCP out on...
Leerafel
01-05-2011, 10:44 PM
Also, I'd like to try puting this DCP on a DVD this time, as it is just under 4GB. I have a few filesystem choices: ISO9660, and UDF versions 1.5, 2.0, or 2.5. Will any of these systems work, from anyone's experience?
Rodney Recor
01-06-2011, 01:08 AM
There is another DCP Player Demo from "DigitAll" on this page:
http://www.digitall.net.au/products/dcpplayer.html
Jake, do you mean to put your DCP onto a DVD just for storage, (A place to put it) or do you mean you want to try to deliver it to a movie theater on DVD? I'm under the impression that a DCP must be delivered on a Hard Drive usiing an 'ext3' or 'NTFS' file system. Am I mistaken?
regards, ~RR
Rainer Fritz
01-06-2011, 04:11 AM
short question please on cinemascope....
As i read in the specsheet from DCI it says it should be 2048x858 but thats spheric.
How should be the picture dimension for anamorphotic DCPs? 2048x1716 for example ??????
thx for info...
rainer
Wolfgang Woehl
01-06-2011, 04:30 AM
How do you create a "SMPTE subtitles - subtitle.mxf"
Look at CineCert's http://www.cinecert.com/asdcplib/S429-5-test.tar.gz which has example code and material.
Wolfgang Woehl
01-06-2011, 04:33 AM
I'm under the impression that a DCP must be delivered on a Hard Drive usiing an 'ext3' or 'NTFS' file system.
ISDCF has some notes on the topic at http://www.isdcf.com/old/ISDCF_Public/HDD_Recommendations.html
Wolfgang Woehl
01-06-2011, 04:41 AM
short question please on cinemascope....
As i read in the specsheet from DCI it says it should be 2048x858 but thats spheric.
How should be the picture dimension for anamorphotic DCPs? 2048x1716 for example ??????
DLP dimensions are 2048x1080 (1.896:1). No anamorphic DCPs in SMPTE standards. Also I'm not aware of a single installation with anamorphic lenses over here. Maybe in Austria? These projectors are quite flexible when it comes to mapping source to target dimensions so you probably could work something out.
We're basically stuck with 2048x858 (or the 4K equivalent).
Flemming Lund
01-06-2011, 05:16 AM
OpenDCP version 0.15 will package an existing subtitle MXF into a DCP. However, it will not create a subtitle MXF itself. It is a feature that will be implemented, but probably not for another couple releases.
In the mean time you can use asdcp-test to create the subtitle MXF. It can then be packaged using OpenDCP.
Thanks Terrence
so i need to create same amount of frames in PNG as the clip?
(is there a way in avisynth to create PNG from *.smi text file or other programs?)
and then use asdcp-test to create the subtitle MXF
(i'm a new to asdcp-test what would the command line look like for create subtitle MXF ?)
and finaly use OpenDCP version 0.15 for "mux"
thanks for your help
Rodney Recor
01-06-2011, 08:12 AM
short question please on cinemascope....
As i read in the specsheet from DCI it says it should be 2048x858 but thats spheric.
How should be the picture dimension for anamorphotic DCPs? 2048x1716 for example ??????
thx for info...
rainer
Hello, Rainer,
There is no anamorphic DCP as we are used to having with film prints. "Scope" is precisely defined in the DCI to be 2.39:1 (Slightly wider than film which has been 2.35:1). A theatrical Digital Cinema Package must be delivered in a 2048 x 1080 container for 2K, with picture letterboxed to 2048 x 858. 4K is delivered in a 4096 x 2160 container letterboxed to 4096 x 1716.
FYI: A 16 x 9 original can meet the 1.85:1 "Flat" standard delivered 2k in the 2048 x 1080 container, by letterboxing in either of two formats: 1920 x 1080 with 39-pixel side pillar bars, or enlarged to 1998 x 1038 (losing 21 pixels at the top and bottom of the frame). The "flat" container for 4k is 3996 x 2160.
regards, ~RR
Leerafel
01-06-2011, 08:58 AM
There is another DCP Player Demo from "DigitAll" on this page:
http://www.digitall.net.au/products/dcpplayer.html
Jake, do you mean to put your DCP onto a DVD just for storage, (A place to put it) or do you mean you want to try to deliver it to a movie theater on DVD? I'm under the impression that a DCP must be delivered on a Hard Drive usiing an 'ext3' or 'NTFS' file system. Am I mistaken?
regards, ~RR
You know, thats what I thought too, but the booth manager I was working with said that he got trailers and advertisements in DCP format on plain old DVD-R all the time. But then again, that is why I wanted to ask one here. I'm headed down to the the megaplex today to try out a couple of different filesystems. I'll let you all know my results...
Leerafel AKA Jake D.
Leerafel
01-06-2011, 09:12 AM
ISDCF has some notes on the topic at http://www.isdcf.com/old/ISDCF_Public/HDD_Recommendations.html
Ah yeah, here is what it says about DVDs:
"4. Optical media such as DVD or CD may be used where appropriate. If DVD format is used, the disks should be single-sided, single-layered, 4.7 GB data format. The storage partition format should be UDF."
Excellent. Since it doesn't specify, I'm going to test a few different UDF formats, starting with version 1.5. This makes things much easier for me on a Windows system. It was a pain finding a program that would let me format my little usb drive to ext3 before, and if I can just toss it on a DVD, then I'm a happy camper.
Oh, and as far as digitAll's DCP player, I haven't had any luck. It keeps giving me errors about a "texture," and then the image doesn't show, but the audio plays fine--that goes for my brand new untested DCP created using OpenDCP, and my theater-confirmed-working DCP.
Rodney Recor
01-06-2011, 10:17 AM
I also read the piece that Wolfgang posted. After a lot of hard work at this, it's the first time that I came upon this information about delivery on DVDs. I am amazed at how the learning goes on and on. I am baffled that I missed this until now, and shown once again that I learn something new every day in this business.
Terrence Meiczinger
01-06-2011, 10:40 AM
I also read the piece that Wolfgang posted. After a lot of hard work at this, it's the first time that I came upon this information about delivery on DVDs. I am amazed at how the learning goes on and on. I am baffled that I missed this until now, and shown once again that I learn something new every day in this business.
We get policy trailers all the time on DVD. We also get them on USB sticks which are formatted in FAT32, EXT3, or once in awhile HFS+. The distributor of the trailers doesn't know what servers we use, so I would assume it is pretty standard all the major ones read these formats.
Rodney Recor
01-06-2011, 11:33 AM
We get policy trailers all the time on DVD. We also get them on USB sticks which are formatted in FAT32, EXT3, or once in awhile HFS+. The distributor of the trailers doesn't know what servers we use, so I would assume it is pretty standard all the major ones read these formats.
Thanks, Terrence.
This info is very enlightening for me. I have some colleagues who are as surprised as I am by this knowledge. It's good news.
It's a funny thing that in the back of my mind, a little voice was wondering, "Why only hard drives?" I realize now that I was mislead by the people that I've been hanging around with. Since the Academy requires DCPs on hard drives, I (and my producer colleagues) wrongly accepted that the requirement was standard accross the industry.
Leerafel
01-06-2011, 11:46 AM
Excellent. I just got back from the theater, and UDF 1.5 worked like a charm... although it took a loooooooong time to copy it over for playback. It wasn't quite synced properly, and it was kinda choppy, but that was a poor conversion from 60i on my part. I just wanted to test the ease of use of openDCP and I kinda rushed it lol. Two thumbs up!
Terrence Meiczinger
01-06-2011, 02:55 PM
Thanks Terrence
so i need to create same amount of frames in PNG as the clip?
(is there a way in avisynth to create PNG from *.smi text file or other programs?)
and then use asdcp-test to create the subtitle MXF
(i'm a new to asdcp-test what would the command line look like for create subtitle MXF ?)
and finaly use OpenDCP version 0.15 for "mux"
thanks for your help
The overall duration of the subtitle MXF needs to match that of the main picture, but you don't need a PNG file for each frame. You only need 1 PNG file per subtitle and in the XML you give it the in and out time to show each subtitle.
So a 60 second clip might have a series of lines like (not real syntax)
<subtitle="1" TimeIn="00:00:05:00" TimeOut="00:00:05:48">subtitle1.png</subtitle>
<subtitle="2" TimeIn="00:00:10:00" TimeOut="00:00:10:23">subtitle2.png</subtitle>
<subtitle="3" TimeIn="00:00:30:00" TimeOut="00:00:30:23">subtitle3.png</subtitle>
<subtitle="4" TimeIn="00:00:60:00" TimeOut="00:00:60:00">subtitle4.png</subtitle>
I've never created a subtitle track, so I'm just kinda guessing on this stuff a bit.
Rainer Fritz
01-06-2011, 03:56 PM
THX a lot Wolfgang and Rodney!
Terrence Meiczinger
01-09-2011, 08:54 PM
Excellent. I just got back from the theater, and UDF 1.5 worked like a charm... although it took a loooooooong time to copy it over for playback. It wasn't quite synced properly, and it was kinda choppy, but that was a poor conversion from 60i on my part. I just wanted to test the ease of use of openDCP and I kinda rushed it lol. Two thumbs up!
Hopefully, OpenDCP made things easier!
Avi Liani
01-11-2011, 04:22 AM
Does anyone knows workflow on MAC?
Peter Nevedal
01-14-2011, 01:58 AM
Hello Wolfgang,
please can you help me?
i read the post about DCP free creation here.
I can create DCP files with picture and sound.
Please can you help me with subtitles?
How can i add subtitles to the DCP package?
thank you for your help
Best regards
Peter Nevedal
peter@filmpark.sk (peter@filmpark.sk)
Rodney Recor
01-14-2011, 09:29 AM
Hello Wolfgang,
please can you help me?
i read the post about DCP free creation here.
I can create DCP files with picture and sound.
Please can you help me with subtitles?
How can i add subtitles to the DCP package?
thank you for your help
Best regards
Peter Nevedal
peter@filmpark.sk (peter@filmpark.sk)
Hello, Peter
Perhaps I can assist you. I'll include here everything that I know about DCP subtitles. I strongly request that other forum members contribute to this.
I must say that in my research on the subject, I have found several different versions of the "correct" way to do this. These varying explanations are similar, but sometimes contradictory and confusing as to what is the "exact and proper" way to do it. I have not yet made a DCP myself that includes subtitles, so I have no real experience as to which of all these options really works. I hope that other members here (especially any members who have accompished a finished DCP with subtitles) will add, comment, and correct what I write here so that we can eliminate all the extraneous info to arrive at what actually works on any DCP server.
I understand that subtitles can be made by either of two methods:
1. Generated automatically from the .xml on a server that has the Texas Instruments "Cine-Canvas" software
or (for precise control of subtitle appearance)...
2. Superimposed by the DCP server from .png image files of each subtitle.
If not using a Cine-Canvas system...
The font files referred to in the subtitle XML file must be supplied.
The PNG files referred to in the subtitle XML file must be supplied.
1998x1080 PNG files must be supplied in one directory per reel with the XML file.
PNG file names must include the film title, language, reel number, and title number.
Ex: "MOVIE_TITLE_English_Reel1_0001.png"
Here are THREE similar but varying examples of how a good XML file should appear when viewed in a text editor.
The format of the timecode is Hours:Minutes:Seconds:Ticks
where a Tick is a value of between 0 and 249 and lasts 4 milliseconds.
The approximate conversion is 1 frame = 10 ticks.
Optional <Font> attributes:
Color="FFFFFFFF" Size="28" Id="Font1" Italic="yes" EffectColor="FF000000" Effect="border"
The file MUST include a valid UUID in the file using the switch <SubtitleID>
.xml EXAMPLE 1:
"MOVIETITLE.subtitle.reel1.xml"
-------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<!-- *** XML Subtitle File *** -->
<!-- *** Created by Your Company *** -->
<!-- *** Creation Date *** -->
<!-- *** FFP = 00:00:00:000 Running Speed = 24fps *** -->
<DCSubtitle Version="1.0">
<SubtitleID>urn:uuid:xxxxxxxx-xxxx-4xxx-xxxx-?xxxxxxxxxxx</SubtitleID>
<MovieTitle>Name of Movie</MovieTitle>
<ReelNumber>1</ReelNumber>
<Language>Your Language</Language>
<LoadFont Id="Arial" URI="arial.ttf" />
<Font Id="Arial" Effect="shadow" Size="42">
<Subtitle SpotNumber="0001" TimeIn="00:00:05:042" TimeOut="00:00:07:156">
<Text VAlign="bottom" VPosition="15.00">Top line of first subtitle.</Text>
<Text VAlign="bottom" VPosition="9.00">Bottom line of first subtitle</Text>
</Subtitle>
<Subtitle SpotNumber="0002" TimeIn="00:00:08:113" TimeOut="00:00:10:218">
<Text VAlign="bottom" VPosition="9.00">Single line second title.</Text>
</Subtitle>
<Subtitle SpotNumber="0003" TimeIn="00:00:12:204" TimeOut="00:00:15:016">
<Text VAlign="bottom" VPosition="9.00"><Font Italic="yes">Third title in italics.</Font></Text>
</Subtitle>
</Font>
</DCSubtitle>
.xml EXAMPLE 2:
"YOUR_MOVIE_TITLE_English_Reel1.xml"
-----------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<!-- *** FFP = 00.00.00.000 Running Speed = 24fps *** -->
<SubtitleReel
xmlns:dcst="http://www.smpte-ra.org/schemas/428-7/2007/DCST"
xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.smpte-ra.org/schemas/428-7/2007/DCST ../dcst.xsd">
<SubtitleID>urn:uuid:xxxxxxxx-xxxx-4xxx-xxxx-?xxxxxxxxxxx</SubtitleID>
<ContentTitleText>YOUR_MOVIE_TITLE_English_Reel1</ContentTitleText>
<IssueDate>2001-12-17T09:30:47-00:00</IssueDate>
<Language>en-us</Language>
<EditRate>24 1</EditRate>
<TimeCodeRate>24</TimeCodeRate>
<StartTime>00:00:00:00</StartTime>
<LoadFontID="FontFileName" URI="FontFileName.ttf" />
<SubtitleList>
<Subtitle
SpotNumber="0"
TimeIn="00:00:05:00"
TimeOut="00:00:05:23"
FadeUpTime="00:00:00:00"
FadeDownTime="00:00:00:00">
<Image
Valign="bottom"
Vposition="9.00">
urn:uuid:YOUR_MOVIE_TITLE_English_Reel1_00001.png
</Image>
</Subtitle>
</SubtitleList>
</SubtitleReel>
.xml EXAMPLE 3:
----------------------
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<DCSubtitle Version="1.0">
<SubtitleID>urn:uuid:xxxxxxxx-xxxx-4xxx-xxxx-?xxxxxxxxxxx</SubtitleID>
<MovieTitle>MOVIE_TITLE</MovieTitle>
<ReelNumber>1AB</ReelNumber>
<Language>en-us</Language>
<LoadFont Id="theFont" URI="Font/FONTNAME.TTF" />
<Font Id="theFont" Color="FFFFFFFF" Effect="shadow" EffectColor="FF000000" Size="60">
<Subtitle SpotNumber="1" TimeIn="01:00:42:125" TimeOut="01:00:43:177">
<Text HAlign="center" HPosition="0.0" VAlign="bottom" VPosition="13.00">??</Text>
</Subtitle>
<Subtitle SpotNumber="2" TimeIn="01:00:46:219" TimeOut="01:00:47:167">
<Text HAlign="center" HPosition="0.0" VAlign="bottom" VPosition="13.00">??!</Text>
</Subtitle>
<Subtitle SpotNumber="3" TimeIn="01:00:54:010" TimeOut="01:00:55:031">
<Text HAlign="center" HPosition="0.0" VAlign="bottom" VPosition="13.00">??</Text>
</Subtitle>
</DCSubtitle>
regards, ~RR
Rodney Recor
01-14-2011, 04:00 PM
This afternoon, I contacted the Texas Instruments DLP group to request clarification on the "Cine-Canvas" specs and requirements.
Please take a look at these:
http://www.rodneyrecor.com/Digital/DCP/DLP_SubtitleSpec_XML.pdf
and
http://www.rodneyrecor.com/Digital/DCP/TI_Subtitling_Overview.pdf
Special thanks to Reiner Doetzkies, Kateri Gemperle, and Tony Adamson at Texas Instruments for these docs.
regards, ~RR
Vincent Baloran
01-14-2011, 08:34 PM
Hi guys could anyone help me on this.
Im getting an error while converting tiff to jpeg2000 using opendcp. Please see attached image.http://img153.imageshack.us/i/photo0257w.jpg/ I extracted the tiff file from mp4 using ffmpeg.
http://i800.photobucket.com/albums/yy283/lharvince/Photo0257.jpg
Rodney Recor
01-14-2011, 10:40 PM
Hello, Vincent.
This is what I think may be the situation.
First, did you use something like this command to get your TIFs?
"ffmpeg -r 24 -i YOURMOVIE.mp4 -f tif %08d.tif"
Second, all you need now to go to J2Ks is...
"opendcp_j2k -i tif -o j2c"
(-p cinema2k -r 24) should not be used
"-p cinema2k" is already exactly what opendcp_j2k is already doing.
"-r 24" was already done with ffmpeg
(Your original movie should already be rendered at 24fps and you should already have 24 TIFs per second)
regards, ~RR
Rodney Recor
01-14-2011, 11:06 PM
Oh, silly me!
(I shouldn't be giving advice when it is so late and I am this tired.)
Vincent,
I neglected to say also that I suspect you have not converted your TIFs from RGB to XYZ color space. It must be done.
Terrence Meiczinger
01-15-2011, 09:45 PM
Hi guys could anyone help me on this.
Im getting an error while converting tiff to jpeg2000 using opendcp. Please see attached image.http://img153.imageshack.us/i/photo0257w.jpg/ I extracted the tiff file from mp4 using ffmpeg.
http://i800.photobucket.com/albums/yy283/lharvince/Photo0257.jpg
This error indicates your images are not 8, 12, or 16-bit tifs. What command did you use with ffmpeg?
Terrence Meiczinger
01-15-2011, 10:02 PM
Hello, Vincent.
This is what I think may be the situation.
First, did you use something like this command to get your TIFs?
"ffmpeg -r 24 -i YOURMOVIE.mp4 -f tif %08d.tif"
Second, all you need now to go to J2Ks is...
"opendcp_j2k -i tif -o j2c"
(-p cinema2k -r 24) should not be used
"-p cinema2k" is already exactly what opendcp_j2k is already doing.
"-r 24" was already done with ffmpeg
(Your original movie should already be rendered at 24fps and you should already have 24 TIFs per second)
regards, ~RR
The frame rate is independent of whatever ffmpeg does. That is opendcp_j2k would require a frame rate value for anything other than the default, which is 24. Also, opendcp_j2k performs the xyz colorspace conversion.
Vincent Baloran
01-16-2011, 05:17 AM
Thanks Rodney and Terrrence for the inputs. I used this command on ffmpeg "ffmpeg -i sample.mp4 -an -r 24 -vcodec tif tif/%06d.tif" I guess Terrence is right regarding the bit depth. I think ffmpeg converts it to tiff in 32-bit. I'm also using an old 32-bit windows version of ffmpeg under 64-bit Windows 7. I'll try this later on Linux.
By the way I used this bat script "MD converted
FOR %%a in (*.tif) DO convert %%a -type TrueColor -alpha Off -depth 12 -gamma 0.454545 -gamma 2.6 converted\%%a
PAUSE" with the tiff files then opendcp_j2k works with it. I'll test the DCPs i've created on our office tomorrow.
And oh before i forgot i could help for the testing of DCPs (or KDMs), we have Qube, DC20, Doremi and Dolby servers.
Wolfgang Woehl
01-16-2011, 03:54 PM
Vincent, testing encrypted packages and KDMs (SMPTE variant) would be nice. There's a tiny test DCP at https://github.com/wolfgangw/digital_cinema_tools/raw/master/CRYPT-BLUE_TST_F_2K_20101208_WOE_OV.zip. Post your server info (serial numbers etc.) and I'll get you a set of KDMs to test. Results so far are being collected at https://github.com/wolfgangw/digital_cinema_tools/wiki/Digital-Cinema-Authentication (bottom of the page).
If you are familiar with linux boxes you might want to try running cinemaslides (https://github.com/wolfgangw/digital_cinema_tools/wiki/Cinemaslides) yourself to create encrypted packages and KDMs, probably more fun. Also Terrence is working on signature code for opendcp (http://code.google.com/p/opendcp/). Anyway, thanks in advance for the offer to test.
ArtReaktor
01-18-2011, 02:45 PM
Hi!
I am designer and one of my business is DCP adaptation. Usually it is short adv clips.
I'm using Adobe AfterEffects for preparation source video.
The question is: is there some requirements about safe-margins of significant information (i.e. logo or text titles) from screen edges?
We have a dispute at our russian-language DCP-forum about right DCP-pipeline. My position is to keep significant content inside AfterEffect's title safe area to prevent clipping. If significant information is placed near screen edges I add black margins and reduce source video to fit safe area. Is it right?
My search in DCI Specification was ineffectual, so it will be great to hear your opinion or to get a link to specialized technical literature about this subj.
Wolfgang Woehl
01-20-2011, 01:53 AM
ArtReaktor,
Yes, it is an issue that should be observed in postproduction, due to screen curtain setup, installation-specific corrections for keystone etc. Nothing in the related current standards describes this yet, alas.
ISDCF's http://www.isdcf.com/ISDCF/ISDCF_Activities.html lists a very interesting paper on the topic (http://www.isdcf.com/files/SafeImageAreaSMPTE.pdf, ismember+intersociety) by Howard Lukk.
ArtReaktor
01-20-2011, 03:59 AM
Thank you, Wolfgang!
Vincent Baloran
01-20-2011, 05:32 AM
Hi Wolfgang,
Do I need to get the server certificates (.pem , .sha, etc..)?
Below are some serial numbers of cinema servers.
DC20 server: QCPD-10048-12-09
Doremi: 208711D
Dolby: 601704
Dolby:
Wolfgang Woehl
01-20-2011, 12:28 PM
Somewhat yes: Whoever wants to deliver content keys to a digital cinema server will need that server's certificate (which contains the public part of the server's key pair) and the signing chain of certificates down to its root authority from a trusted location. The higher the content's value the more trust you want to have in that location.
Wrt the DC20: Wasn't aware of the vendor, interesting. Contacted them (techsupport@datasatdigital.com (mailto:techsupport@datasatdigital.com)) and asked where to get their certs. Update: techsupport writes "The DC20 certificates can be found on ftp://certificates.qubecinema.com. They are located in the SMPTE directory."
Doremi keeps server certificates at ftp://doremilabs.com/dcp2000/Certificates/ (user: service, pass: t3chn1c1an)
Wrt Dolby: Terrence had contacted Dolby about access to server certs. They'll answer inquiries sent to dolbycerts@dolby.com (mailto:dolbycerts@dolby.com). Update: Dolby writes they need site and screen info, serial and the CAT862 serial (should be a 6 digit number starting with 51).
Say, will you need KDMs from my side or are you going to run cinemaslides yourself? Content keys for the test DCP are up at https://github.com/wolfgangw/digital_cinema_tools/tree/b0548b7387e536dbe08f4c6808aa212fa64a6cc9/kdm/content_keys/cpl_5b7f206c-29e1-495b-bd00-8760d746f6a3. Anyway, see https://github.com/wolfgangw/digital_cinema_tools/tree/master/kdm/vincentb for your Doremi's and DC20's certificates and KDMs for the test DCP CRYPT-BLUE_TST_F_2K_20101208_WOE_OV (https://github.com/wolfgangw/digital_cinema_tools/raw/master/CRYPT-BLUE_TST_F_2K_20101208_WOE_OV.zip).
Mattias Mattsson
01-21-2011, 08:02 AM
Thank you Wolfgang and Terrence for your excellent work!
I stumbled on this when working with a local film festival. Dolby has an ftp-server with server certs:
ftp.dolby.co.uk
user:dolbyrootcertificates
pw:houro61l
Terrence Meiczinger
01-21-2011, 08:38 AM
Wrt Dolby: Terrence had contacted Dolby about access to server certs. They'll answer inquiries sent to dolbycerts@dolby.com. Update: Dolby writes they need site and screen info, serial and the CAT862 serial (should be a 6 digit number starting with 51).
In the case of the DSS100/DSP100 you provide the serial of the DSP100 (media block) and in the case of the DSS200, you supply serial number of the CAT862 (media block inside the DSS200).
Wolfgang Woehl
01-21-2011, 10:35 PM
Dolby: 601704
Dolby writes this serial number shows up as DSS200 601704 (CAT862 511733) which would point to the Power Plant Mall Makati on the Philippines. Would that be right?
Wolfgang Woehl
01-21-2011, 10:37 PM
ftp.dolby.co.uk
Awesome, thanks for sharing this. Puts a name to the face, too :)
Wolfgang Woehl
01-21-2011, 10:39 PM
In the case of the DSS100/DSP100 you provide the serial of the DSP100 (media block) and in the case of the DSS200, you supply serial number of the CAT862 (media block inside the DSS200).
So in each case there is only 1 serial number required?
Terrence Meiczinger
01-22-2011, 08:19 AM
So in each case there is only 1 serial number required?
Yes, only one serial number is needed when requesting the certificates from Dolby.
Vincent Baloran
01-24-2011, 11:51 PM
Dolby writes this serial number shows up as DSS200 601704 (CAT862 511733) which would point to the Power Plant Mall Makati on the Philippines. Would that be right?
yeah that server is installed at Powerplant Mall here in the Philippines. Been busy for Digital Cinema installation the past few days and i have yet to test the KDMs you generated for me.
Regarding with the error i encountered with the tiff conversion using ffmpeg, is there a command in which way i can specify the bit depth? Or should i use another program to do that?
Terrence Meiczinger
01-25-2011, 06:58 AM
yeah that server is installed at Powerplant Mall here in the Philippines. Been busy for Digital Cinema installation the past few days and i have yet to test the KDMs you generated for me.
Regarding with the error i encountered with the tiff conversion using ffmpeg, is there a command in which way i can specify the bit depth? Or should i use another program to do that?
What is your source bit depth? Can you open the tiff in another program like gimp or photoshop and verify the bit depth? The command looks ok.
Vincent Baloran
01-25-2011, 11:25 PM
I cannot open the tiff in photoshop. I don't have gimp installed on my pc:(
I can encode them to jpeg2000 (using opendcp or the command line in DCPC) after applying this command:
-type TrueColor -alpha Off -depth 12 -gamma 2.6 FRAME.tif
Terrence Meiczinger
01-26-2011, 06:09 PM
I cannot open the tiff in photoshop. I don't have gimp installed on my pc:(
I can encode them to jpeg2000 (using opendcp or the command line in DCPC) after applying this command:
-type TrueColor -alpha Off -depth 12 -gamma 2.6 FRAME.tif
Could you send me a non-working tiff? terrence72@gmail.com. I'm guessing the alpha channel is not being handled properly.
Vincent Baloran
01-27-2011, 09:54 PM
Could you send me a non-working tiff? terrence72@gmail.com. I'm guessing the alpha channel is not being handled properly.
Here is the link to the non-working tiff i extracted from an mp4 file using ffmpeg.
http://www.mediafire.com/?08e8q4c176zthdd
Wolfgang Woehl
01-28-2011, 03:12 PM
... the non-working tiff i extracted from an mp4 file using ffmpeg ...[/URL]
$ opendcp_j2k -i 000001.tiff -o 000001.j2c
[ERROR] TIFF file creation. Bad color format ...
$ identify -verbose 000001.tiff | grep Compression
Compression: RLE
$ convert 000001.tiff -compress none uncompressed.tiff
$ opendcp_j2k -i uncompressed.tiff -o uncompressed.j2c # yeah, well, you know what I mean :)
<works>
$ identify -verbose 000001.tiff uncompressed.tiff | grep signature
signature: b3ad2eabc40a9ddd70ecec1d9494fcd0bc58017588ef87a1fb 9c897a8c63284c
signature: b3ad2eabc40a9ddd70ecec1d9494fcd0bc58017588ef87a1fb 9c897a8c63284c
Odd, libtiff knows RLE.
Terrence Meiczinger
01-28-2011, 07:30 PM
[CODE]$
Odd, libtiff knows RLE.
It handles the compression. The issue is that the image is encoded YCBCR format which OpenDCP doesn't currently support. It is on the top of the todo list, because most HD content is encoded this way.
You can confirm by doing
# convert 000001.tiff test.tiff
# identify -verbose 000001.tiff > 000001.txt
# identify -verbose test.tiff > test.txt
# diff 000001.txt test.txt
#
65,66c64,65
< tiff:photometric: RGB
< tiff:rows-per-strip: 1
---
> tiff:photometric: YCBCR
> tiff:rows-per-strip: 2
Terrence Meiczinger
01-30-2011, 11:01 AM
I should add that you can do the conversion in ffmpeg while you are creating the tiff files with the -pix_fmt rgb24 parameter...
ffmpeg -y -i sample.mp4 -an -r 24 -pix_fmt rgb24 -vcodec tiff tif/%06d.tif
jonathanj
01-31-2011, 07:32 AM
I should add that you can do the conversion in ffmpeg while you are creating the tiff files with the -pix_fmt rgb24 parameter...
ffmpeg -y -i sample.mp4 -an -r 24 -pix_fmt rgb24 -vcodec tiff tif/%06d.tif
Ffmpeg should by default be able to read the framerate from the file's header/metadata, right?
The few files that I've tested, it read fine... but that was 25fps material that I wanted to make into a 25fps dcp.
I haven't tried creating a 24fps DCP from 25fps material (or vice versa), but I guess that's when this option is useful.
I am just thinking that maybe ffmpeg can't correctly read the fps of all files, so maybe leaving it on even though you're not converting between framerates is a good idea?
Just a curious thought... I'll give a shout if I encounter a file that can't be read correctly by ffmpeg.
Matt_G
02-08-2011, 06:26 AM
Having gone through this entire thread (which has been incredibly helpful, thankyou!), the only piece of information I cannot see is regarding MPEG MXF Interop packages.
Using FFMPEG as someone mentioned, I was able to encode video using this command line:
ffmpeg -i source.avs -flags +ildct+ilme -s 1920x1080 -an -sameq output.m2v
But I was wondering if it is possible to limit the bitrate using the "-maxrate" switch, in the same way as the 'quality' setting with Jpeg2000 tool?
Is this 'allowed'?
Agustin Goya
02-08-2011, 06:31 AM
But I was wondering if it is possible to limit the bitrate using the "-maxrate" switch, in the same way as the 'quality' setting with Jpeg2000 tool?
Is this 'allowed'?
in ffmpeg you can use the -b option. Use -b 200k for 200 kilobit per second
Matt_G
02-08-2011, 06:56 AM
in ffmpeg you can use the -b option. Use -b 200k for 200 kilobit per second
Ah!, So swap out -sameq for -b and it'll do CBR?
Chris Young
02-15-2011, 07:36 PM
My goal was to make OpenDCP work on a Sony SRX R-320 and after numerous attempts -- as an independent filmmaker, I am elated to say it worked perfectly! It wouldn't have been possible if Terrence Meiczinger hadn't developed OpenDCP.
Admittedly, a few weeks ago I didn't know much, if anything, about creating DCP files
let alone a stereoscopic 3D-DCP. I had recently finished work on a self produced and directed short film, "Dead of Nowhere", that I was able to make largely in part utilizing the crowd-based funding site Indiegogo. I used a Final Cut Pro / 2K Cineform workflow to edit and finish my film. I shot my film guerilla style in one day, handheld on location with the Element Technica Dark-Country beamsplitter rig, recording to a 1-Beyond Wrangler. When I learned that it was going to cost somewhere between $1,500 and $3,000 to have my ten minute film encoded in order to have it shown in a realD equipped theater, I knew I had to find an alternate "indie" solution to create my DCP.
After investigating all of the commercial solutions (easyDCP, Doremi, etc.) and speaking with several "indie-friendly" post houses -- all of whom bid out of my price range
I stumbled onto OpenDCP.
While the notion of using an open-source command-line tool, still in development, isn't for the faint of heart, and I am by no means a Unix Pro, the process was pretty simple once I understood how the OpenDCP tools worked.
There have been plenty of how-to posts, so I won't get into a lot of detail here
but basically after getting my film into a Left Eye / Right Eye TIFF sequence at the correct aspect ratio (1998 x 1080), the frame rate at (24p), ensuring that my audio was the exact same length (intrinsic value) and the correct sample rate (24bit), it was a fairly straight forward process to convert to XYZ jpeg2000 (.j2c) using opendcp_j2k and then using opendcp_mxf to wrap the stereoscopic-picture and main-audio elements into separate mxf files. After figuring out that I needed to be sure to have the digest (-d) and annotation (-a) tags set in opendcp_xml, it was then just a simple matter of getting these files onto a drive to load into a cinema server.
Now, don't get me wrong, this will probably not work the first time. I had to make several trips back and forth to the theater, trying various DCP versions (interop and smpte) and hard drive formats (I settled on NTFS).
If you're an indie-filmmaker, trying to get your film digitally packaged for exhibition and don't have the money to spend, or are the kind of person (like me) that enjoys learning about every step of the process -- I couldn't recommend a better, more rewarding way of creating a DCP.
---------------------
More information about OpenDCP and DEAD OF NOWHERE can be found here:
OpenDCP Link: http://code.google.com/p/opendcp/
Short Film: http://www.deadofnowhere.com
Facebook: http://www.facebook.com/deadofnowhere
Wolfgang Woehl
02-16-2011, 01:45 AM
Great you made all this work. And yes, isn't learning the best and greatest of addictions?
It'd be nice if you could share some details about your post workflow, in particular the cineform component.
Also, which package format did you settle for in the end? SMPTE or Interop? Is the Sony SRX R320 picky and if so in which regard?
Good luck with your project.
Chris Young
02-16-2011, 09:35 AM
Thanks Wolfgang!
The cineform workflow is great -- especially if you shoot straight to the native format and don't have to convert your footage. You can start editing stereoscopic footage immediately upon acquisition. Used in concert with FirstLight you can easily apply non-destructive looks, tweak the parallax, etc. and everything follows along in realtime in the FCP timeline. For editing and output purposes, you can quickly switch your timeline between LEFT, RIGHT, SBS, ANAGLYPH (and host of other 3d formats) using the cineform CodecStatus located in the menu bar. I was able to use the trial version of Cineform Neo3d to complete my short.
For the SRX R320 I ended up going with -interop, but was able to get it to ingest/playback -smpte as well. I discovered that the drives that come from technicolor were -interop so I went with that. The biggest issue I had with getting my drives to mount was making sure to set the -digest and -annotation tags. The system didn't seem to want to acknowledge the dcp without it. I also think I was having an issue getting paragon/NTFS drives to mount so I formatted from a PC and to be safe cleared the GPT partition that was hanging out from the osx format.
Wolfgang Woehl
02-17-2011, 02:26 AM
So you were recording to Cineform? Does that encode happen on-board the Wrangler?
Wrt SMPTE/Interop: I'd recommend going for the SMPTE package format whenever possible, including asking exhibitors to upgrade which will usually be a very simple process. All server vendors I'm aware of offer software upgrades. Not only are the SMPTE specs less brittle (Subtitles packaging), they also offer a higher level of security.
True, most major facilities still ship Interop packages and the rollout of SMPTE-capable server software seems to be more advanced in some regions than in others. Transition time.
Magnizi Tang
02-24-2011, 07:03 AM
I'm come from China, working for a Digital cinema. The last month, I had creat a short film and playback on Dolby DSS200 sucessfully, but i's so slowly to do this. about 240x playback times. now, I have changed some steps:
1. Save the frame Sequence with BMP format with VirtualDub, use resize| subtitles | ffvdub filters(bright adjust capture frames) same time. -about 2.5FPS
2. Convert the BMP Sequence colorspace and save in same folder, overwrite the RGB file(can save so many HD space) -about 1.2FPS
3. Image_2_j2c , I can't rember where I get this program. It's so faster than other down from openjpeg2000. 1.1~2.1 frames/sec
With some Mathematical Programming knowledge, we can do this steps looks like in a same times.
the day befor yesterday, I had finished 1.5 hours film. total of less than 90 hours.
It's nice! a good job! befor now, I had get a lot of help from here. Thanks a lot of everyone.
PS: Intel E5400 CPU , 2G DDRII RAM , 1x320G sata Hdd, 1x1.5Tb Esata Hdd.
deppen_s
02-28-2011, 11:32 PM
i'm still struggling with mpeg2. opendcp and dcpc works on doremi but not on qube. i'm not able to get 2.3 aspect ratio in mpeg2. mpeg2 only support 1980*1040 so how can we get this ratio. qube server was asking for x509 certificate and signerCert
deppen_s
03-10-2011, 08:45 AM
i'm expecting some answare answer from you all experts.
Wolfgang Woehl
03-10-2011, 01:38 PM
2.38. 1920x1080. Letterboxing. Potentially interesting but who knows, so little info.
deppen_s
03-16-2011, 11:22 AM
i made some dcp from opendcp and dcpc, well its well played on dormie server but i;m not able to play on qube server. it gave me some errors about aspect ratio and signature, so i checked my cpl and there was no x509 certificate so i added it. i'm using mpeg2 1920*1080 for dcp and my aspect ratio in cpl was 16:9. should i change my aspect ratio to 2.39 or is it ok. if i need to change it then how can i chance it using ffmpeg command
Avi Liani
03-22-2011, 05:27 AM
need a little help.
I am trying to learn making DCP with open source.
So I downloaded all open source tools. and I have uncompressed tif sequence, but when I run convert to DCP. bat file or image_j2k bat file, I get that it does not recognizes file type.
What may be the result?
Wolfgang Woehl
03-22-2011, 02:09 PM
Avi, maybe you want to start with Chris Perry's basic and excellent tutorial (http://bitfilms.blogspot.com/2010/11/making-dcp-entirely-with-open-source.html).
Also, there are a number of open source toolsets related to digital cinema so you'd need to be way more specific to allow anyone to help here.
Which tools? What are you trying to do? What are you actually doing?
Avi Liani
03-23-2011, 01:54 AM
Avi, maybe you want to start with Chris Perry's basic and excellent tutorial (http://bitfilms.blogspot.com/2010/11/making-dcp-entirely-with-open-source.html).
Also, there are a number of open source toolsets related to digital cinema so you'd need to be way more specific to allow anyone to help here.
Which tools? What are you trying to do? What are you actually doing?
Hi
I am following these steps:
http://www.stereofinland.com/?page_id=49
Wolfgang Woehl
04-08-2011, 04:26 PM
I pushed some code to collect and check X.509 certificates for Digital Cinema/SMPTE compliance upstream. Checks are following DCI_CTP_v1_1.pdf (http://www.dcimovies.com/DCI_CTP_v1_1.pdf), chapter 2. See dc_crypto_context.rb (https://github.com/wolfgangw/digital_cinema_tools/blob/master/dc_crypto_context.rb).
These certificates, as you know, are used to sign DCPs and KDMs (See make-dc-certificate-chain.rb (https://github.com/wolfgangw/digital_cinema_tools/blob/master/make-dc-certificate-chain.rb) for PoC code to generate some of those certificates and Cinemaslides (https://github.com/wolfgangw/digital_cinema_tools/wiki/Cinemaslides) to actually use them.)
jonathanj
04-08-2011, 05:29 PM
need a little help.
I am trying to learn making DCP with open source.
So I downloaded all open source tools. and I have uncompressed tif sequence, but when I run convert to DCP. bat file or image_j2k bat file, I get that it does not recognizes file type.
What may be the result?
Hi
I am following these steps:
http://www.stereofinland.com/?page_id=49
If you get "unregonized filetypes" error when trying to encode from tiff to j2c, it might be because your tiff image isn't in a correct resolution or bitdepth.
Can you provide some more information regarding your files... Are they 1998x1080, 2048x858, 2048x1080 or 1920x1080?
Or maybe provide which exact error you get. Screenshots or copy/paste of the error.
Bert Jickty
04-11-2011, 06:53 AM
I have problem at ppm to tiff conversion stage
FOR /F %%i IN ('dir /B "%DIRNAME%\processing\01-pics\left\*.ppm"') DO %IMDIRNAME%\convert "%DIRNAME%\processing\01-pics\left\%%i" -type truecolor -alpha Off -depth 12 -gamma 0.454545 -recolor "0.4124564 0.3575761 0.1804375 0.2126729 0.7151522 0.0721750 0.0193339 0.1191920 0.9503041" -gamma 2.6 "%DIRNAME%\processing\02-transformed\left\%%i.tif"More close to black, brightness changes stepwise.
On upper half - original picture, in lower half - after conversion by ImageMagick:
http://reduser.net/forum/attachment.php?attachmentid=13768&stc=1&d=1302529105
What is it the?
Wolfgang Woehl
04-11-2011, 11:03 AM
Bert, can you post an original ppm and your tiff result so we can try to reproduce?
Bert Jickty
04-11-2011, 04:15 PM
I have put files here: http://turbobit.net/mxegs5m6p8rp.html
Wolfgang Woehl
04-14-2011, 09:10 AM
Bert, well, I can't reproduce (IM 6.5.7-8 here) what you're getting. The IM line you're using is fine. Also, although the linearization part is of the often used approximating type instead of the costlier correct type it wouldn't crush low values that much. Don't know, maybe your IM version is nasty. I'm sure over at ImageMagick Users (http://www.imagemagick.org/discourse-server/viewforum.php?f=1) someone might be able to pinpoint it.
Bert Jickty
04-17-2011, 06:00 AM
Thanks, Wolfgang! The brother a wolf was right - upgrade to last version ( 6.6.9-5) has helped. People, don't use version 6.5.9-2 of ImageMagick.
And what the "correct type of the linearization part" must be?
Wolfgang Woehl
04-17-2011, 09:40 AM
Bert, see http://en.wikipedia.org/wiki/SRGB#The_reverse_transformation for the reasoning behind the math. In short gamma encoded sRGB carries a small linear range (values <= 0.04045 [0,1]) and a powered range (values > 0.04045, powered by 2.4). The resulting slope can be approximated with a 1/2.2 slope but this will crush low end values.
ImageMagick will do the right thing when called with "-colorspace sRGB".
Michael Cinquin
04-29-2011, 03:02 AM
hello
I've built a new (beta, untested) smpte and interop xml subtitles generation tool, from the text generators found inside a Final Cut Pro timeline.
http://www.michaelcinquin.com/tools/subtitles/DCP_subtitling
I would appreciate field feedback.
cheers
Rainer Fritz
08-02-2011, 06:24 AM
Are there any open source tools for DCP playback? So that I can output it with colorspace conversion on the graphics card in RGB.... in realtime...
ArtReaktor
08-21-2011, 01:12 PM
I'm interesting about decompiling DCP into RGB-pictures sequence using asdcp-test and j2k_to_image:
%OCTDIRNAME%\asdcp-test -x %OUTDIRNAME% "%SOURCEFILE%"
FOR /F %%i IN ('dir /B "%OUTDIRNAME%*.j2c"') DO %OJPGDIRNAME%\j2k_to_image -i "%OUTDIRNAME%%%i" -o "%DECODEDIRNAME%%%i.bmp" -OutFor bmp
This piece of script works just fine, but there is a serious problem i can't resolve.
Does anybody know how to obtain right color space (rgb) using imagemagic?
So, how to "invert" this line:
convert "%DIRNAME%\%%i" -alpha Off -depth 12 -gamma 0.454545 -recolor "0.4124564 0.3575761 0.1804375 0.2126729 0.7151522 0.0721750 0.0193339 0.1191920 0.9503041" -gamma 2.6 "%DIRNAME%\processing\%%i.tif
???
Wolfgang Woehl
08-21-2011, 11:11 PM
Bruce Lindbloom's great pages on colorspace math (http://www.brucelindbloom.com) list all the required steps and numbers. Basically you want to adjust reference white (which wouldn't be sRGB's D65 in a DCP's image material. It is, though, in your example above), recolor and compand to sRGB gamma.
Btw, with the linearization step in your example above ("-gamma 0.454545") the near black region got crushed beyond being recoverable and you might then indeed use "-gamma 2.2" in your X'Y'Z' -> sRGB conversion without further harm. Terrence has put some effort into building a LUT mechanism for OpenDCP (http://code.google.com/p/opendcp/) which remedies the problem.
ArtReaktor
08-25-2011, 07:44 AM
Wolfgang, thank you for the useful links! Now I now a little bit more about color representation technology.
XYZ to RGB conversion is quite simple. But I can't understand how to make chromatic adaptation using ImageMagick and Bruce's matrix (http://brucelindbloom.com/index.html?Eqn_RGB_XYZ_Matrix.html)
:mad2:
Wolfgang Woehl
08-25-2011, 09:32 AM
Lindbloom's page on chromatic adaptation (http://brucelindbloom.com/Eqn_ChromAdapt.html) has math, methods, some important comments and common mappings. With ImageMagick you'd "-recolor" through the resulting 3x3 matrix in order to adjust reference white.
ArtReaktor
09-02-2011, 04:49 AM
Unfortunately I do not have enough knowledge about color conversion or, maybe, gray matter in my head. All my experiments with Imagemagick command line and Bruce's matrix was unsuccessful. Please, help to find right pipeline to decompile XYZ .j2c to RGB .tif sequence using Imagemagick and Opencinematools.
Julius Schall
10-06-2011, 02:02 AM
Hello ArtReaktor,
save the following line as a .bat file. Replace [target_directory] with your target directory (e.g. c:\tif_rgb\ ) Copy it to the directory with the extracted .tif files. And run it.
for %%F IN (*.tif) DO convert %%F -alpha Off -gamma 0.3846153 -recolor "3.2404542 -1.5371385 -0.4985314 -0.9692660 1.8760108 0.0415560 0.0556434 -0.2040259 1.0572252" -gamma 2.2 -depth 12 [target_directory]\%%F.tif
Good luck!
Julius
http://digital-cinema-mastering.com (http://digital-cinema-mastering.com/)
Wolfgang Woehl
10-08-2011, 05:50 PM
I'm collecting field reports about ingest and playback of encrypted DCPs and KDMs generated with dietrich/cinemaslides. See Testing encrypted DCPs and KDMs (https://github.com/wolfgangw/digital_cinema_tools/wiki/Testing-encrypted-DCPs-and-KDMs). Any tests and reports much appreciated.
Info and tests on some Sony and GDC systems would be awesome. Thanks in advance.
ArtReaktor
10-20-2011, 01:00 AM
Thank you, Julius! It's exactly what I'm looking for!
Wolfgang Woehl
12-06-2011, 01:01 AM
Here's a short update about some Digital Cinema related open source tools:
First of all: In addition to the nice chat here on reduser, and if you haven't already, head on over to dcinemaforum.com (http://dcinemaforum.com/forum/index.php?action=recent). It's a good entry-level resource for anything related to Digital Cinema. Run by Terrence Meiczinger, author of OpenDCP (http://code.google.com/p/opendcp/).
dcp_inspect (https://github.com/wolfgangw/backports/blob/master/dcp_inspect) (GPLv3) will inspect DCPs and check consistency and completeness. Basically it simulates ingest and validation, the process any cinema server must perform to make sure it has a valid package to play. One of dcp_inspect (https://github.com/wolfgangw/backports/blob/master/dcp_inspect)'s benchmark targets was Mike Radford's awesome Fox Subtitle Test (https://dci.foxpico.com/basic/3688a587f94e/subtitle-test-v9.tar) (aka Killer Reel) which consists of 3 packages actually. Mike's distribution isn't supposed to stress-test ingest but rather SMPTE subtitle implementations of various media blocks and servers. But its out-of-the-ordinary package structure made it an interesting target for ingest consistency checks. So there. dcp_inspect (https://github.com/wolfgangw/backports/blob/master/dcp_inspect) can be quite chatty, see http://pastie.org/2970568 for its report about the Killer Reel.
The proof-of-concept code for building encrypted packages and KDMs with Cinemaslides (https://github.com/wolfgangw/digital_cinema_tools/wiki/Cinemaslides) (GPLv3) is well-tested and stable. If you check it out please consider contributing test reports to Testing encrypted DCPs and KDMs (https://github.com/wolfgangw/digital_cinema_tools/wiki/Testing-encrypted-DCPs-and-KDMs), a server matrix which lists feedback on ingest and playback of encrypted (and signed) packages and KDMs made with open source tools.
kdm-decrypt.rb (https://github.com/wolfgangw/digital_cinema_tools/blob/master/encryption/kdm-decrypt.rb) will decrypt Interop (should you ever run into one) and SMPTE KDMs if you have access to the targeted key pair. Useful for testing round-trip.
xsd-check.rb (https://github.com/wolfgangw/digital_cinema_tools/blob/master/xsd-check.rb) will, via Libxml and Nokogiri and in conjunction with DC related schema files (https://github.com/wolfgangw/digital_cinema_tools/tree/master/xsd) schema check Assetmaps, PKLs, CPLs and KDMs.
Point dc_crypto_context.rb (https://github.com/wolfgangw/digital_cinema_tools/blob/master/dc_crypto_context.rb) at a directory holding X.509 certificates and it will tell you whether the certificates found in there are SMPTE/DC compliant, chain-complete and verifyable, thus usable for signing packages. Create a proof-of-concept chain of compliant certificates with make-dc-certificate-chain.rb (https://github.com/wolfgangw/digital_cinema_tools/blob/master/make-dc-certificate-chain.rb). You will want to tweak the code if you intend to use these in production, of course.
So all of the above are building blocks for more. Get in touch (https://github.com/wolfgangw) if you have questions or need a custom solution.
Wolfgang Woehl
04-26-2013, 11:30 AM
There's a new (not that new) easy-to-use DCP authoring app called DVD-o-matic (http://carlh.net/software/dvdomatic/). Yeah, don't ask about the name, I don't know either :) It's the throw any kind of video file at it and take out a DCP on the other side kind of app, rather useful in quite a couple of scenarios.
It's a nice tool with just the right amount of switches and tweaks. JPEG2000 encoding optimizations in there. Will encode over a range of network nodes if asked to. Give it 2 or 3 beefy boxes to use and it will return decidedly decent encoding speeds. Open source, too. All in all: that app has a lot of potential.
So far the author, Carl Hetherington of Ardour (http://ardour.org) fame (http://ardour.org/credits), is providing Windows and Linux versions. Now he's set up an indiegogo funder (http://www.indiegogo.com/projects/dvd-o-matic-on-mac-os-x?c=home) to get a Mac Mini and port the app to Mac OS X. And that should get you excited. Please consider contributing.
Also: Jim and Jarred and all at RED, I hope you're well and busy building cameras. You sure shook the tree and it's freaking nice to look back to asking where will they take those apples to?. And to then see what you have achieved so far. And more coming up, I hear. Well done. Well done. See, getting me a Scarlet was what brought me here in the first place. But then with the upgrade I realized it would be serious overkill in my amateur hands. Been throwing a glance or two at the BMCC but my heart's not in it. So should you ever decide to build a wee bit smaller box, like inbetween the size of a BMCC and the Pocket, with 3 to 4K resolution and 48 shots of truth per second: I'm your's. I'll carry it. I'll groom it. I'll love it. Yes, we amateurs have these emotions, heh.