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