Added some notes on DVD-o-matic's files to the manual.
[dcpomatic.git] / doc / manual / dcpomatic.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <!DOCTYPE book [
3 <!ENTITY % sgml.features "IGNORE">
4 <!ENTITY % xml.features "INCLUDE">
5 <!ENTITY % dbcent PUBLIC "-//OASIS//ENTITIES DocBook Character Entities V4.5//EN"
6    "/usr/share/xml/docbook/schema/dtd/4.5/dbcentx.mod">
7 %dbcent;
8 <!ENTITY % extensions SYSTEM "extensions.ent">
9 %extensions;
10 ]>
11 <book xmlns="http://docbook.org/ns/docbook" version="5.0" xml:lang="en">
12
13 <bookinfo>
14 <title>DCP-o-matic</title>
15 <author><firstname>Carl</firstname><surname>Hetherington</surname></author>
16 </bookinfo>
17
18 <chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:lang="en">
19 <title>Introduction</title>
20
21 <para>
22 Hello, and welcome to DCP-o-matic!
23 </para>
24
25 <section>
26 <title>What is DCP-o-matic?</title>
27
28 <para>
29 DCP-o-matic is a program to generate <ulink
30 url="http://en.wikipedia.org/wiki/Digital_Cinema_Package">Digital
31 Cinema Packages</ulink> (DCPs) from DVDs, Blu-Rays, video files such as MP4
32 and AVI, or still images.  The resulting DCPs will play on modern digital
33 cinema projectors.
34 </para>
35
36 <para>
37 You might find it useful to make DVDs easier to present, to encode
38 independently-shot feature films, or to generate local advertising for
39 your cinema.
40 </para>
41
42 </section>
43
44 <section>
45 <title>Licence</title>
46
47 <para>
48 DCP-o-matic is licensed under the <ulink url="http://www.gnu.org/licenses/old-licenses/gpl-2.0.html">GNU GPL</ulink>.
49 </para>
50
51 </section>
52
53 </chapter>
54
55 <chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:lang="en">
56 <title>Installation</title>
57
58 <section>
59 <title>Windows</title>
60
61 <para>
62 To install DCP-o-matic on Windows, simply download the installer from
63 <ulink url="http://carlh.net/software/dcpomatic">http://carlh.net</ulink>
64 and double-click it.  Click through the installer wizard, and
65 DCP-o-matic will be installed onto your machine.
66 </para>
67
68 <para>
69 If you are using a 32-bit version of Windows, you will need the 32-bit
70 installer.  For 64-bit Windows, either installer will work, but I
71 suggest you used the 64-bit version as it will allow DCP-o-matic to
72 use more memory.  You may find that DCP-o-matic crashes if you run
73 many parallel encoding threads (more than 4) on the 32-bit
74 version.
75 </para>
76
77 </section>
78
79 <section>
80 <title>Ubuntu Linux</title>
81
82 <para>
83 You can install DCP-o-matic on Ubuntu 12.04 (&lsquo;Precise
84 Pangolin&rsquo;) or 12.10 (&lsquo;Quantal Quetzal&rsquo;) using
85 <code>.deb</code> packages: download the appropriate package from
86 <ulink
87 url="http://carlh.net/software/dcpomatic">http://carlh.net</ulink> and
88 double-click it.  Ubuntu will install the necessary bits and pieces
89 and set DCP-o-matic up for you.
90 </para>
91
92 </section>
93
94 <section>
95 <title>Other Linux distributions</title>
96
97 <para>
98 Installation on non-Ubuntu Linux is currently a little involved, as
99 there are no packages available (yet); you will have to compile it
100 from source.  If you are using a non-Ubuntu distribution, do let me
101 know via the <ulink url="mailto:dcpomatic@carlh.net">mailing
102 list</ulink> and I will see about building some packages.
103 </para>
104
105 <para>
106 The following dependencies are required:
107 <itemizedlist>
108 <listitem><ulink url="http://ffmpeg.org/">FFmpeg</ulink></listitem>
109 <listitem><ulink url="http://www.mega-nerd.com/libsndfile/">libsndfile</ulink></listitem>
110 <listitem><ulink url="http://www.openssl.org/">OpenSSL</ulink></listitem>
111 <listitem><ulink url="http://www.openjpeg.org/">libopenjpeg</ulink></listitem>
112 <listitem><ulink url="http://www.imagemagick.org/script/index.php">ImageMagick</ulink></listitem>
113 <listitem><ulink url="http://www.boost.org/">Boost</ulink></listitem>
114 <listitem><ulink url="http://www.libssh.org/">libssh</ulink></listitem>
115 <listitem><ulink url="http://www.gtk.org/">GTK</ulink></listitem>
116 <listitem><ulink url="http://www.wxwidgets.org/">wxWidgets</ulink></listitem>
117 <listitem><ulink url="http://carlh.net/software/libdcp/">libdcp</ulink></listitem>
118 </itemizedlist>
119 </para>
120
121 <para>
122 Once you have installed the development packages for the dependencies,
123 download the source code from <ulink
124 url="http://carlh.net/software/dcpomatic">http://carlh.net</ulink>,
125 unpack it and run the following commands from inside the source
126 directory:
127 </para>
128
129 <programlisting>
130 ./waf configure
131 ./waf build
132 sudo ./waf install
133 </programlisting>
134
135 <para>
136 With any luck, this will build and install DCP-o-matic on your system.  To run it, enter:
137 </para>
138
139 <programlisting>
140 dcpomatic
141 </programlisting>
142
143 <para>
144 in a shell.
145 </para>
146
147 </section>
148 </chapter>
149
150 <chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:lang="en">
151 <title>Creating a video DCP</title>
152
153 <para>
154 In this chapter we will see how to create a video DCP using
155 DCP-o-matic.  We will gloss over some of the finer details, which are
156 explained in later chapters.
157 </para>
158
159 <section>
160 <title>Creating a new film</title>
161
162 <para>
163 Let's make a very simple DCP to see how DCP-o-matic works.  First, we
164 need some content.  Download the low-resolution trailer for the open
165 movie <ulink url="http://sintel.org/">Sintel</ulink> from <ulink
166 url="http://ftp.nluug.nl/ftp/graphics/blender/apricot/trailer/Sintel_Trailer1.480p.DivX_Plus_HD.mkv">their
167 website</ulink>.  Generally, of course, one would want to use the
168 highest-resolution material available, but for this test we will use
169 the low-resolution version to save everyone's bandwidth bills.
170 </para>
171
172 <para>
173 Now, start DCP-o-matic and its window will open.  First, we will
174 create a new &lsquo;film&rsquo;.  A &lsquo;film&rsquo; is how DCP-o-matic refers to
175 a piece of content, along with some settings, which we will make into
176 a DCP.  DCP-o-matic stores its data in a folder on your disk while it
177 creates the DCP.  You can create a new film by selecting
178 <guilabel>New</guilabel> from the <guilabel>File</guilabel> menu, as
179 shown in <xref linkend="fig-file-new"/>.
180 </para>
181
182 <figure id="fig-file-new"> 
183   <title>Creating a new film</title> 
184   <mediaobject>
185     <imageobject> 
186       <imagedata fileref="screenshots/file-new&scs;"/>
187     </imageobject> 
188   </mediaobject>
189 </figure>
190
191 <para>
192 This will open a dialogue box for the new film, as shown in <xref
193 linkend="fig-video-new-film"/>.
194 </para>
195
196 <figure id="fig-video-new-film"> 
197   <title>Dialogue box for creating a new film</title> 
198   <mediaobject>
199     <imageobject> 
200       <imagedata fileref="screenshots/video-new-film&scs;"/>
201     </imageobject> 
202   </mediaobject>
203 </figure>
204
205 <para>
206 In this dialogue box you can choose a name for the film.  This will be
207 used to name the folder to store its data in, and also as the initial
208 name for the DCP itself.  You can also choose whereabouts you want to create
209 the film.  In the example from the figure, DCP-o-matic will create a
210 folder called &lsquo;DCP Test&rsquo; inside my home folder (carl) into which it
211 will write its working files.
212 </para>
213
214 <para>
215 If you always create your DCPs in a particular folder, you can use
216 DCP-o-matic's <guilabel>Preferences</guilabel> to make life a little
217 easier by setting the default folder that DCP-o-matic will offer in this dialogue.
218 See <xref linkend="ch-preferences"/>.
219 </para>
220
221 </section>
222
223 <section>
224 <title>Selecting content</title>
225
226 <para>
227 The next step is to set the content that you want to use.  Click the
228 content selector, as shown in <xref
229 linkend="fig-click-content-selector"/>, and a file chooser will
230 open for you to select the content file to use, as shown in <xref
231 linkend="fig-video-select-content-file"/>.
232 </para>
233
234 <figure id="fig-click-content-selector">
235   <title>Opening the content selector</title> 
236   <mediaobject>
237     <imageobject> 
238       <imagedata fileref="screenshots/click-content-selector&scs;"/>
239     </imageobject> 
240   </mediaobject>
241 </figure>
242
243 <figure id="fig-video-select-content-file"> 
244   <title>Selecting a video content file</title> 
245   <mediaobject>
246     <imageobject> 
247       <imagedata fileref="screenshots/video-select-content-file&scs;"/>
248     </imageobject> 
249   </mediaobject>
250 </figure>
251
252 <para>
253 Select your content file and click <guilabel>Open</guilabel>.  In this
254 case we are using the Sintel trailer that we downloaded earlier.
255 </para>
256
257 <para>
258 When you do this, DCP-o-matic will take a look at your file.  After a
259 short while (when the progress bar at the bottom right of the window
260 has finished), you can look through your content using the slider to
261 the right of the window, as shown in <xref linkend="fig-examine-thumbs"/>.
262 </para>
263
264 <figure id="fig-examine-thumbs"> 
265   <title>Examining the content</title>
266   <mediaobject>
267     <imageobject> 
268       <imagedata fileref="screenshots/examine-thumbs&scs;"/>
269     </imageobject> 
270   </mediaobject>
271 </figure>
272
273 <para>
274 Dragging the slider will move through your video.  You can also click
275 the <guilabel>Play</guilabel> button to play the content back.  Note
276 that there will be no sound, and playback might not be entirely
277 accurate (it may be slightly slower or faster than it should be, for
278 example).  This player is really only intended for brief inspection of
279 content; if you need to check it more thoroughly, use another player
280 such as <ulink url="http://projects.gnome.org/totem/index.html">Totem</ulink>, <ulink url="http://www.mplayerhq.hu/design7/news.html">mplayer</ulink> or <ulink url="http://www.videolan.org/vlc/index.html">VLC</ulink>.
281 </para>
282
283 </section>
284
285 <section>
286 <title>Setting up</title>
287
288 <para>
289 Now there are a few things to set up to describe how the DCP should be
290 created.  The settings are divided into four tabs: film, video, audio and subtitles.
291 </para>
292
293 <section>
294 <title>Film tab</title>
295
296 <para>
297 The &lsquo;film&rsquo; tab contains settings that pertain to the whole film, as shown in <xref linkend="fig-film-tab"/>.
298 </para>
299
300 <figure id="fig-film-tab"> 
301   <title>Film settings tab</title>
302   <mediaobject>
303     <imageobject> 
304       <imagedata fileref="screenshots/film-tab&scs;"/>
305     </imageobject> 
306   </mediaobject>
307 </figure>
308
309 <para>
310 The first thing here is the name.  This is generally set to the title
311 of the film that is being encoded.  If <guilabel>Use DCI
312 name</guilabel> is not ticked, the name that you specify will be used
313 as-is for the name of the DCP.  If <guilabel>Use DCI name</guilabel>
314 is ticked, the name that you enter will be used as part of a
315 DCI-compliant name.
316 </para>
317
318 <para>
319 Underneath the name field is a preview of the name that the DCP will
320 get.  To use a DCI-compliant name, tick the <guilabel>Use DCI
321 name</guilabel> checkbox.  The DCI name will be composed using details
322 of your content's soundtrack, the current date and other things that
323 can be specified in the DCI name details dialogue box, which you can
324 open by clicking on the <guilabel>Details</guilabel> button.
325 </para>
326
327 <para>
328 If the DCP name is long, it may not all be visible.  You can see the
329 full name by hovering the mouse pointer over the partial name.
330 </para>
331
332 <para>
333 The <guilabel>Trust content's header</guilabel> button starts off
334 checked, and this means that DCP-o-matic will use the content's header
335 information to determine its length.  If, for some reason, this header
336 length is wrong, uncheck the <guilabel>Trust content's
337 header</guilabel> button and DCP-o-matic will run through the content
338 to find its exact length.  This may take a while for large pieces of content.
339 </para>
340
341 <para>
342 Next up is the content type.  This can be
343 &lsquo;feature&rsquo;, &lsquo;trailer&rsquo; or whatever; select the
344 required type from the drop-down list.
345 </para>
346
347 <para>
348 The <guilabel>trim frames</guilabel> settings allow you to trim frames
349 from the beginning and end of the content; any trimmed frames will not
350 be included in the DCP.
351 </para>
352
353 </section>
354
355 <section>
356 <title>Video tab</title>
357
358 <para>
359 This tab contains settings related to the picture in your DCP, as shown in <xref linkend="fig-video-tab"/>.
360 </para>
361
362 <figure id="fig-video-tab"> 
363   <title>Video settings tab</title>
364   <mediaobject>
365     <imageobject> 
366       <imagedata fileref="screenshots/video-tab&scs;"/>
367     </imageobject> 
368   </mediaobject>
369 </figure>
370
371 <para>
372 The first option on this tab is the format.  This will govern the
373 shape that DCP-o-matic will make your image into.  Select the aspect
374 ratio that your content should be presented in.  The &lsquo;4:3 within
375 Flat&rsquo; and &lsquo;16:9 within Flat&rsquo; settings will put the
376 image at the specified ratio within a Flat (1.85:1) frame, so that you
377 can project the DCP using your projector's Flat preset.
378 </para>
379
380 <para>
381 The remaining options can often be left alone, but may sometimes be
382 useful.  The &lsquo;crop&rsquo; settings can be used to crop your
383 content, which can be used to remove black borders from round the
384 edges of DVD images, for example.  The specified number of pixels will
385 be trimmed from each edge, and the content image in the right of the
386 window will be updated to show the effect of the crop.
387 </para>
388
389 <para>
390 The &lsquo;filters&rsquo; settings allow you to apply various video
391 filters to the image.  These may be useful to try to improve
392 poor-quality sources like DVDs.  We will discuss filtering later in the manual.
393 <!-- XXX: link -->
394 </para>
395
396 <para>
397 The &lsquo;scaler&rsquo; is the method that will be used to scale up
398 your content to the required size for the DCP, if required.  We will
399 discuss the options in more detail later; Bicubic is a fine choice in
400 most situations.
401 <!-- XXX: link -->
402 </para>
403
404 <para>
405 The &lsquo;colour look-up table&rsquo; specifies the colour space that
406 your input content will be expected to be in.  If in doubt, leave it
407 set to &lsquo;sRGB&rsquo;.
408 </para>
409
410 <para>
411 Finally, the &lsquo;JPEG2000 bandwidth&rsquo; setting changes how big the final
412 image files used within the DCP will be.  Larger numbers will give
413 better quality, but correspondingly larger DCPs.  The bandwidth can be
414 between 50 and 250 megabits per second (MBps).
415 </para>
416
417 </section>
418
419 <section>
420 <title>Audio tab</title>
421
422 <para>
423 This tab contains settings related to the sound in your DCP, as shown in <xref linkend="fig-audio-tab"/>.
424 </para>
425
426 <figure id="fig-audio-tab"> 
427   <title>Audio settings tab</title>
428   <mediaobject>
429     <imageobject> 
430       <imagedata fileref="screenshots/audio-tab&scs;"/>
431     </imageobject> 
432   </mediaobject>
433 </figure>
434
435
436 <para>
437 &lsquo;Audio Gain&rsquo; is used to alter the volume of the
438 soundtrack.  The specified gain (in dB) will be applied to each sound
439 channel before it is written to the DCP.
440 </para>
441
442 <para>
443 If you use a sound processor that DCP-o-matic knows about, it can help
444 you calculate changes in gain that you should apply.  Say, for
445 example, that you make a test DCP and find that you have to run it at
446 volume 5 instead of volume 7 to get a good sound level in the screen.
447 If this is the case, click the <guilabel>Calculate...</guilabel>
448 button next to the audio gain entry, and the dialogue box in <xref
449 linkend="fig-calculate-audio-gain"/> will open.
450 </para>
451
452 <figure id="fig-calculate-audio-gain"> 
453   <title>Calculating audio gain</title>
454   <mediaobject>
455     <imageobject> 
456       <imagedata fileref="screenshots/calculate-audio-gain&scs;"/>
457     </imageobject> 
458   </mediaobject>
459 </figure>
460
461 <para>
462 For our example, put 5 in the first box and 7 in the second and click
463 <guilabel>OK</guilabel>.  DCP-o-matic will calculate the audio gain
464 that it should apply to make this happen.  Then you can re-make the
465 DCP (this will be reasonably fast, as the video data will already have
466 been done) and it should play back at the correct volume with 7 on
467 your sound-rack fader.
468 </para>
469
470 <para>
471 Current versions of DCP-o-matic only know about the Dolby CP750.  If
472 you use a different sound processor, and know the gain curve of its
473 volume control, <ulink url="mailto:cth@carlh.net">get in
474 touch</ulink>.
475 </para>
476
477 <para>
478 &lsquo;Audio Delay&rsquo; is used to adjust the synchronisation
479 between audio and video.  A positive delay will move the audio later
480 with respect to the video, and a negative delay will move it earlier.
481 </para>
482
483 <para>
484 By default the <guilabel>Use content&lsquo;s audio</guilabel> button
485 will be selected.  This means that the DCP will use one of the
486 soundtracks from your content file; you can select the soundtrack that
487 you wish to use from the drop-down box.
488 </para>
489
490 <para>
491 Note that if your content's audio is mono, DCP-o-matic will place it
492 in the centre channel in the DCP.
493 </para>
494
495 <para>
496 Alternatively, you can supply different sound files by clicking the
497 <guilabel>Use external audio</guilabel> button and choosing a WAV file
498 for any channels that you want to appear in the DCP.  These files can
499 be any bit depth and sampling rate, and will be re-sampled and
500 bit-depth converted if required.
501 </para>
502
503 </section>
504 <section>
505 <title>Subtitles tab</title>
506
507 <para>
508 This tab contains settings related to subtitles in your DCP, as shown in <xref linkend="fig-subtitles-tab"/>.
509 </para>
510
511 <figure id="fig-subtitles-tab"> 
512   <title>Subtitle settings tab</title>
513   <mediaobject>
514     <imageobject> 
515       <imagedata fileref="screenshots/subtitles-tab&scs;"/>
516     </imageobject> 
517   </mediaobject>
518 </figure>
519
520 <para>
521 DCP-o-matic will extract subtitles from the content, if present, and
522 they can be &lsquo;burnt into&rsquo; the DCP (that is, they are
523 included in the image and not overlaid by the projector).  Note that
524 DVD and Blu-Ray subtitles are stored as bitmaps, so it is not possible
525 (automatically) to use non-burnt-in subtitles with these sources.
526 Select the <guilabel>With Subtitles</guilabel> checkbox to enable
527 subtitles.  The <guilabel>offset</guilabel> control moves the
528 subtitles up and down the image, and the <guilabel>scale</guilabel>
529 control changes their size.
530 </para>
531
532 <para>
533 Future versions of DCP-o-matic will hopefully include the option to
534 use text subtitles (as is the norm with most professionally-mastered
535 DCPs).
536 </para>
537
538 </section>
539 </section>
540
541 <section>
542 <title>Making the DCP</title>
543
544 <para>
545 Now that we have set everything up, choose <guilabel>Make
546 DCP</guilabel> from the <guilabel>Jobs</guilabel> menu.  DCP-o-matic
547 will encode your DCP.  This may take some time (many hours in some
548 cases).  While the job is in progress, DCP-o-matic will update you on
549 how it is getting on with the progress bar in the bottom of its window, as shown in <xref linkend="fig-making-dcp"/>.
550 </para>
551
552 <figure id="fig-making-dcp">
553   <title>Making the DCP</title>
554   <mediaobject>
555     <imageobject> 
556       <imagedata fileref="screenshots/making-dcp&scs;"/>
557     </imageobject> 
558   </mediaobject>
559 </figure>
560
561 <para>
562 When it has finished, the DCP will end up on your disk inside the
563 film's folder.  You can then copy this to a projector via a USB
564 stick, hard-drive or network connection.  See <xref
565 linkend="ch-files"/> for details about the files that DVD-o-matic creates.
566 </para>
567
568 <para>
569 Alternatively, if you have a projector or TMS that is accessible via
570 SCP across your network, you can upload the content directly from
571 DCP-o-matic.  See <xref linkend="sec-tms-upload"/>.
572 </para>
573
574 </section>
575 </chapter>
576
577
578 <chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:lang="en">
579 <title>Creating a still-image DCP</title>
580
581 <para>
582 DCP-o-matic can also be used to create DCPs of a still image, perhaps
583 for an advertisement or an on-screen announcement.  This chapter shows you
584 how to do it.
585 </para>
586
587 <para>
588 As with video DCPs, the first step is to create a new
589 &lsquo;Film&rsquo;; select <guilabel>New</guilabel> from the
590 <guilabel>File</guilabel> menu and the new film dialogue will open as
591 shown in <xref linkend="fig-still-new-film"/>.
592 </para>
593
594 <figure id="fig-still-new-film"> 
595   <title>Dialogue box for creating a new film</title> 
596   <mediaobject>
597     <imageobject> 
598       <imagedata fileref="screenshots/still-new-film&scs;"/>
599     </imageobject> 
600   </mediaobject>
601 </figure>
602
603 <para>
604 Enter a name and click <guilabel>OK</guilabel>.  Then we set up the
605 content; click the content selector as before, and this time we will
606 choose an image file, as shown in <xref
607 linkend="fig-still-select-content-file"/>.
608 </para>
609
610 <figure id="fig-still-select-content-file"> 
611   <title>Selecting a still content file</title> 
612   <mediaobject>
613     <imageobject> 
614       <imagedata fileref="screenshots/still-select-content-file&scs;"/>
615     </imageobject> 
616   </mediaobject>
617 </figure>
618
619 <para>
620 Setting up for a still image DCP is somewhat simpler than for a video;
621 the tabs are all the same, but many options are removed and a few are added.
622 </para>
623
624 <para>
625 As with video, you can select a content type and the format (ratio)
626 that your image should be presented in.  It will be scaled and padded
627 to fit the selected ratio, but in such a way that the pixel aspect
628 ratio is preserved.  In other words, the image will not be stretched,
629 merely scaled; if you want to stretch your image, you will need to do
630 so in a separate program before importing it into DCP-o-matic.  You
631 can also crop your image, if you so choose, and then set a duration
632 (in seconds) that the image should appear on screen.
633 </para>
634
635 <para>
636 Still-image DCPs can include sound; this can be added from the
637 <guilabel>Audio</guilabel> tab.  If your specified duration is shorter
638 than the audio, the audio will be cut off at the duration; if it is
639 longer, silence will be added after your audio.
640 </para>
641
642 <para>
643 Finally, as with video, you can choose <guilabel>Make DCP</guilabel>
644 from the <guilabel>Jobs</guilabel> menu to create your DCP.  This will
645 be much quicker than creating a video DCP, as DCP-o-matic only needs
646 to encode a single frame which it can then repeat.
647 </para>
648
649 </chapter>
650
651
652 <chapter xml:id="ch-preferences" xmlns="http://docbook.org/ns/docbook" version="5.0" xml:lang="en">
653 <title>Preferences</title>
654
655 <para>
656 DCP-o-matic provides a few preferences which can be used to modify its
657 behaviour.  This chapter explains those options.
658 </para>
659
660 <section>
661 <title>The preferences dialogue</title>
662
663 <para>
664 The preferences dialogue is opened by choosing
665 <guilabel>Preferences...</guilabel> from the <guilabel>Edit</guilabel>
666 menu.  The dialogue is shown in <xref linkend="fig-prefs"/>.
667 </para>
668
669 <figure id="fig-prefs"> 
670   <title>Preferences</title> 
671   <mediaobject>
672     <imageobject> 
673       <imagedata fileref="screenshots/prefs&scs;"/>
674     </imageobject> 
675   </mediaobject>
676 </figure>
677
678 <section>
679 <title>TMS setup</title>
680
681 <para>
682 The first part of the dialogue gives some options for specifying
683 details about your TMS.  If you do this, and your TMS accepts SSH
684 connections, you can upload DCPs directly from DCP-o-matic to the TMS.
685 This is discussed in <xref linkend="sec-tms-upload"/>.
686 </para>
687
688 <para>
689 <guilabel>TMS IP address</guilabel> should be set to the IP address of
690 your TMS, <guilabel>TMS target path</guilabel> to the place that DCPs
691 should be uploaded to (which will be relative to the home directory of
692 the SSH user).  Finally, the user name and password are the
693 credentials required to log into the TMS via SSH.
694 </para>
695 </section>
696
697 <section>
698 <title>Threads</title>
699
700 <para>
701 When DCP-o-matic is encoding DCPs it can use multiple parallel threads
702 to speed things up.  Set this value to the number of threads
703 DCP-o-matic should use.  This would typically be set to the number of
704 processors (or processor cores) in your machine.
705 </para>
706
707 </section>
708
709 <section>
710 <title>Default directory for new films</title>
711
712 <para>
713 This is the directory (folder) which DCP-o-matic will suggest initially as a place to put new films.
714 </para>
715
716 </section>
717
718 <section>
719 <title>A/B options</title>
720
721 <para>
722 These options are for DCP-o-matic's special mode of making A/B
723 comparison DCPs for checking the performance of video filters.  Their
724 use is described in <xref linkend="sec-ab"/>.
725 </para>
726
727 </section>
728
729 <section>
730 <title>Encoding servers</title>
731
732 <para>
733 If you have spare machines sitting around on your network not doing
734 much, they can be pressed into service to speed up DCP encodes.  This
735 is done by running a small server program on the machine, which will
736 encode video sent to it by the &lsquo;master&rsquo; DCP-o-matic.  This
737 option is described in more detail in <xref linkend="sec-servers"/>.
738 Use these preferences to specify the encoding servers that should be
739 used.
740 </para>
741
742 </section>
743
744 </section>
745 </chapter>
746
747 <chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:lang="en">
748 <title>Advanced topics</title>
749
750 <para>This chapter describes some parts of DCP-o-matic that are
751 probably not essential, but which you might find useful in some
752 circumstances.
753 </para>
754
755 <section>
756 <title>Filtering</title>
757
758 <para>
759 DCP-o-matic offers a variety of filters that can be applied to your
760 video content.  You can set up the filters by clicking the
761 <guilabel>Edit</guilabel> button next to the filters entry in the
762 setup area of the DCP-o-matic window; this opens the filters selector
763 as shown in <xref linkend="fig-filters"/>.
764 </para>
765
766 <figure id="fig-filters"> 
767   <title>Filters selector</title> 
768   <mediaobject>
769     <imageobject> 
770       <imagedata fileref="screenshots/filters&scs;"/>
771     </imageobject> 
772   </mediaobject>
773 </figure>
774
775 <para>
776 After changing the filters setup, you will need to regenerate the DCP
777 to see the effect on the cinema screen.  The preview in DCP-o-matic
778 will update itself whenever filters are changed, though of course this
779 image is much smaller and of lower resolution than a projected image!
780 </para>
781
782 </section>
783
784 <section>
785 <title>Scaling</title>
786
787 <para>
788 If your source material is not of the DCI-specified size, or if it
789 uses non-square pixels, DCP-o-matic will need to scale it.  The
790 algorithm used to scale is set up by the <guilabel>Scaler</guilabel>
791 entry in the film setup area.  We think &lsquo;Bicubic&rsquo; is the
792 best all-round option, but tests are ongoing.
793 </para>
794
795 </section>
796
797 <section xml:id="sec-tms-upload">
798 <title>TMS upload</title>
799
800 <para>
801 If you have configured details of a TMS in the preferences dialogue
802 (<xref linkend="ch-preferences"/>) you can upload a completed DCP
803 straight to your TMS buy choosing <guilabel>Send DCP to TMS</guilabel>
804 from the <guilabel>Jobs</guilabel> menu.
805 </para>
806
807 </section>
808
809
810 <section xml:id="sec-ab">
811 <title>A/B comparison</title>
812
813 <para>
814 When evaluating the effects of different filters or scalers on the
815 image quality, A/B mode might be useful.  In this mode, DCP-o-matic
816 will generate a DCP where the left half of the image uses some
817 &lsquo;reference&rsquo; filtering and scaling, and the right half of
818 the image uses a different set of filters and a different scaler.
819 This DCP can then be played back on a projector and the image quality
820 evaluated.
821 </para>
822
823 <para>
824 To enable A/B mode, click the A/B checkbox in the setup area of the
825 DCP-o-matic window.  When you generate your DCP, the left half of the
826 screen will use the filters and scaler specified in the <xref
827 linkend="ch-preferences">preferences</xref> dialogue, and the right
828 half will use the filters and scaler specified in the film setup.
829 </para>
830
831 </section>
832
833 <section xml:id="sec-servers">
834 <title>Encoding servers</title>
835
836 <para>
837 One way to increase the speed of DCP encoding is to use more
838 than one machine at the same time.  An instance of DCP-o-matic can
839 offload some of the time-consuming JPEG2000 encoding to any number of
840 other machines on a network.  To do this, one &lsquo;master&rsquo;
841 machine runs DCP-o-matic, and the &lsquo;server&rsquo; machines run
842 a small program called &lsquo;servomatic&rsquo;.
843 </para>
844
845 <section>
846 <title>Running the servers</title>
847
848 <para>
849 There are two options for the encoding server;
850 <code>servomatic_cli</code>, which runs on the command line, and
851 <code>servomatic_gui</code>, which has a simple GUI.  The command line
852 version is well-suited to headless servers, especially on Linux, and
853 the GUI version works best on Windows where it will put an icon in the
854 system tray.
855 </para>
856
857 <para>
858 To run the command line version, simply enter:
859 </para>
860
861 <programlisting>
862 servomatic_cli
863 </programlisting>
864
865 <para>
866 at a command prompt.  If you are running the program on a machine with
867 a multi-core processor, you can run multiple parallel encoding threads
868 by doing something like:
869 </para>
870
871 <programlisting>
872 servomatic_cli -t 4
873 </programlisting>
874
875 <para>
876 to run 4 threads in parallel.
877 </para>
878
879 <para>
880 To run the GUI version on windows, run the &lsquo;DCP-o-matic encode
881 server&rsquo; from the start menu.  An icon will appear in the system
882 tray; right-click it to open a menu from whence you can quit the
883 server or open a window to show its status.
884 </para>
885
886 </section>
887 <section>
888 <title>Setting up DCP-o-matic</title>
889
890 <para>
891 Once your servers are running, you need to tell your master
892 DCP-o-matic instance about them.  Start DCP-o-matic and open the
893 <guilabel>Preferences</guilabel> dialog from the
894 <guilabel>Edit</guilabel> menu.  At the bottom of this dialog is a
895 section where you can add, edit and remove encoding servers.  For each
896 encoding server you need only specify its IP address and the number of
897 threads that it is running, so that DCP-o-matic knows how many
898 parallel encode jobs to send to the server.
899 </para>
900
901 <para>
902 Once this is done, any encodes that you start will split the workload
903 up between the master machine and the servers.
904 </para>
905
906 </section>
907 <section>
908 <title>Some notes about encode servers</title>
909
910 <para>
911 DCP-o-matic does not mind if servers come and go; if a server
912 disappears, DCP-o-matic will stop sending work to it, and will check
913 it every minute or so in case it has come back online.
914 </para>
915
916 <para>
917 You will probably find that using a 1Gb/s or faster network will
918 provide a significant speed-up compared to a 100Mb/s network.
919 </para>
920
921 <para>
922 Making changes to the server configuration in the master DCP-o-matic
923 will have no effect while an encode is running; the changes will only
924 be noticed when a new encode is started.
925 </para>
926
927 </section>
928 </section>
929
930 </chapter>
931
932 <chapter xml:id="ch-files" xmlns="http://docbook.org/ns/docbook" version="5.0" xml:lang="en">
933 <title>Generated files</title>
934
935 <para>
936 DCP-o-matic generates a number of files as it makes a DCP.  <xref
937 linkend="fig-file-structure"/> shows the files that might be generated
938 after you have created a DCP for a film called &lsquo;DCP Test&rsquo;.
939 </para>
940
941 <figure id="fig-file-structure"> 
942   <title>Creating a new film</title> 
943   <mediaobject>
944     <imageobject> 
945       <imagedata fileref="diagrams/file-structure&scs;"/>
946     </imageobject> 
947   </mediaobject>
948 </figure>
949
950 <para>
951 The <code>DCP Test</code> folder is the one that you specify when you
952 select the <guilabel>New Film</guilabel> option from DCP-o-matic's
953 menu.  Everything is stored inside this folder.
954 </para>
955
956 <para>
957 DCP-o-matic generates some working files as it goes along.  These are as follows:
958 <itemizedlist>
959
960 <listitem><code>log</code> is a list of notes that DCP-o-matic makes as it goes
961 along.  This can be useful for debugging purposes if something goes
962 wrong.</listitem>
963
964 <listitem><code>metadata</code> stores the settings that you have made
965 for this film: things like cropping, output format and so on.</listitem>
966
967 <listitem><code>video</code> is where DCP-o-matic writes the DCP's
968 video data as it encodes it.</listitem>
969
970 <listitem><code>analysis</code> is used to keep the results of audio analysis runs.</listitem>
971
972 <listitem><code>info</code> contains details of each video frame that
973 DCP-o-matic has written so far.  This is used when an encoding
974 operation is interrupted and DCP-o-matic must resume it.</listitem>
975 </itemizedlist>
976 </para>
977
978 <para>
979 Following this is the DCP itself:
980 <code>DCP-TEST_EN-XX_UK-U_51_2K_CSY_20130218_CSY_OV</code>.  This
981 contains some small XML files, which describe the DCP, and two large
982 MXF files, which contain the DCP's audio and video data.  This folder
983 (<code>DCP-TEST_EN-XX_...</code>) is what you should ingest, or pass
984 to the cinema which is showing your DCP.
985 </para>
986
987 </chapter>
988
989
990 </book>