<listitem>Creation of <ulink
url="http://en.wikipedia.org/wiki/Digital_Cinema_Package">Digital
Cinema Packages</ulink> (DCPs) from video, audio and/or
- subtitle files.</listitem>
- <listitem>Playback of DCPs on a PC.</listitem>
+ subtitle and closed caption files.</listitem>
+ <listitem>Playback and verification of DCPs on a PC/Mac.</listitem>
<listitem>Creation of KDMs for DCPs.</listitem>
</itemizedlist>
<para>
If you are still using Windows XP, download the specific XP version as
it should be more stable on your machine than the ‘normal’
-Windows version.
+Windows version. Be aware, though, that support for Windows XP will
+not last forever and you should plan to upgrade if at all possible.
</para>
</section>
<para>
DCP-o-matic will run on Mac OS X version 10.6 (Snow Leopard) and
-higher. DCP-o-matic is split into four separate applications, each of
+higher. DCP-o-matic is split into five separate applications, each of
which can be installed by downloading the <code>.dmg</code>,
double-clicking to open and then dragging the icon to your
<guilabel>Applications</guilabel> folder.
</para>
<itemizedlist>
- <listitem>Debian 7 (‘wheezy’)</listitem>
- <listitem>Debian 8 (‘jessie’)</listitem>
- <listitem>Debian 9 (‘squeeze’)</listitem>
- <listitem>Debian unstable (‘sid’)</listitem>
- <listitem>Ubuntu 14.04 (‘Trusty Tahr’)</listitem>
- <listitem>Ubuntu 16.04 (‘Xenial Xerus’)</listitem>
- <listitem>Ubuntu 18.04 (‘Bionic Beaver’)</listitem>
- <listitem>Mint 17</listitem>
- <listitem>Mint 18</listitem>
- <listitem>Mint 19</listitem>
+ <listitem>Debian 7 (‘wheezy’), 8 (‘jessie’), 9 (‘squeeze’) and unstable (‘sid’)</listitem>
+ <listitem>Ubuntu 14.04 (‘Trusty Tahr’), 16.04 (‘Xenial Xerus’), 18.04 (‘Bionic Beaver’) and 18.10 (‘Cosmic Cuttlefish’)</listitem>
+ <listitem>Mint 17, 18 and 19</listitem>
</itemizedlist>
<para>
using <code>.deb</code> packages: download the appropriate package
from <ulink url="http://dcpomatic.com/">http://dcpomatic.com/</ulink>
-and double-click it. Debian or Ubuntu will install the necessary bits and
+and double-click it. Debian, Ubuntu or Mint will install the necessary bits and
pieces and set DCP-o-matic up for you.
</para>
</section>
<section>
<title>Fedora, Centos and Mageia Linux</title>
- <para>There are <code>.rpm</code> packages for Fedora 27 and 28, Centos 6 and 7 and Mageia 6 on
+ <para>There are <code>.rpm</code> packages for Fedora 27, 28 and 29, Centos 6 and 7 and Mageia 6 on
<ulink url="http://dcpomatic.com/">http://dcpomatic.com/</ulink>
</para>
</section>
<listitem><ulink url="http://www.mega-nerd.com/SRC/">libsamplerate</ulink></listitem>
<listitem><ulink url="http://www.openssl.org/">OpenSSL</ulink></listitem>
<listitem><ulink url="http://www.openjpeg.org/">libopenjpeg</ulink></listitem>
-<listitem><ulink url="http://www.imagemagick.org/script/index.php">ImageMagick</ulink></listitem>
<listitem><ulink url="http://www.boost.org/">Boost</ulink></listitem>
<listitem><ulink url="http://www.libssh.org/">libssh</ulink></listitem>
<listitem><ulink url="http://www.gtk.org/">GTK (on Linux)</ulink></listitem>
<listitem><ulink url="http://www.aleksey.com/xmlsec/">xmlsec</ulink></listitem>
<listitem><ulink url="http://curl.haxx.se/">curl</ulink></listitem>
<listitem><ulink url="http://www.nih.at/libzip/">libzip</ulink></listitem>
-<listitem><ulink url="http://carlh.net/asdcplib/">asdcplib with some patches</ulink></listitem>
-<listitem><ulink url="http://carlh.net/libdcp/">libdcp</ulink></listitem>
-<listitem><ulink url="http://carlh.net/libsub/">libsub</ulink></listitem>
-<listitem><ulink url="http://carlh.net/libcxml/">libcxml</ulink></listitem>
+<listitem><ulink url="http://carlh.net/asdcplib">asdcplib with some patches</ulink></listitem>
+<listitem><ulink url="http://carlh.net/libdcp">libdcp</ulink></listitem>
+<listitem><ulink url="http://carlh.net/libsub">libsub</ulink></listitem>
+<listitem><ulink url="http://carlh.net/libcxml">libcxml</ulink></listitem>
<listitem><ulink url="https://carlh.net/locked_sstream">locked_sstream</ulink></listitem>
<listitem><ulink url="https://www.music.mcgill.ca/~gary/rtaudio/">rtaudio</ulink></listitem>
<listitem><ulink url="http://site.icu-project.org">libicu</ulink></listitem>
</para>
<programlisting>
-./waf configure
+./waf configure --disable-tests
./waf build
sudo ./waf install
</programlisting>
<para>
in a shell.
</para>
+</section>
+
+<!-- ============================================================== -->
+<section>
+<title>‘Simple’ and ‘Full’ modes</title>
+
+<para>When you start DCP-o-matic for the first time it will ask you if
+you want to use ‘simple’ or ‘full’ mode.
+</para>
+
+<para>The difference between these two is that some of DCP-o-matic's
+more complex or less-used controls are hidden from view in
+‘Simple’ mode. This makes the interface simpler to
+navigate. You may wish to choose this mode if you do not have much
+experience with video processing.
+</para>
+
+<para>Even if you choose ‘Simple’ mode you can always go
+back to ‘Full’ mode by changing the <guilabel>Interface
+complexity</guilabel> setting in the <guilabel>General</guilabel> tab
+of <guilabel>Preferences</guilabel>.
+</para>
+
+<para>
+All the screenshots in this manual are from a copy of DCP-o-matic in ‘Full’ mode.
+</para>
</section>
+
</chapter>
+
+
<!-- ============================================================== -->
<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" xml:lang="en">
<title>Creating a DCP from a video</title>
<title>Creating a new film</title>
<mediaobject>
<imageobject>
- <imagedata fileref="screenshots/file-new&scs;"/>
+ <imagedata scale="250" fileref="screenshots/file-new&scs;"/>
</imageobject>
</mediaobject>
</figure>
<title>Making the DCP</title>
<mediaobject>
<imageobject>
- <imagedata scale="50" fileref="screenshots/making-dcp&scs;"/>
+ <imagedata scale="250" fileref="screenshots/making-dcp&scs;"/>
</imageobject>
</mediaobject>
</figure>
<title>Manipulating existing DCPs</title>
<para>
-Frequently DCP-o-matic is used to take content in formats such as MP4
-and convert it to JPEG2000 for a DCP. It can also be used
-to take existing DCPs and modify them in various ways.
+DCP-o-matic is often used to take content in formats such as MP4 and
+make it into a DCP. It can also be used to take existing DCPs and
+modify them in various ways.
</para>
<section>
<title>Importing a DCP into DCP-o-matic</title>
<para>
-If you want to do something to an existing DCP the first step is to
-import it. Click <guilabel>Add DCP...</guilabel> and select your
-DCP's folder. It will be added to the DCP-o-matic project. If the
-DCP is unencrypted you can preview it in the normal way, though
-playback will be very slow as decoding of DCPs is almost as
-computationally intensive as encoding them.
+The first step in manipulating an existing DCP is to import it. Click
+<guilabel>Add DCP...</guilabel> and select your DCP's folder. It will
+be added to the DCP-o-matic project. If the DCP is unencrypted you
+can preview it in the normal way, though playback will be slow as
+decoding of DCPs is almost as computationally intensive as encoding
+them.
</para>
<para>
</itemizedlist>
<para>
-If you do change any of these settings on a piece of DCP content
-DCP-o-matic will decode and then re-encode the JPEG2000 data.
+DCP-o-matic will be forced to decode and re-encode your JPEG2000 data
+if you change any of these settings on a piece of DCP content.
</para>
</section>
<guilabel>Add file(s)...</guilabel> and choose them from the selector.
</para>
+<para>
+DCP-o-matic will automatically map a set of audio files to the correct channels if you include appropriate ‘tags’ in your filenames, as shown in <xref linkend="tab-audio-file-naming"/>.
+</para>
+
+<table id="tab-audio-file-naming">
+ <title>Audio file naming</title>
+ <tgroup cols='3' align='left' colsep='1' rowsep='1'>
+ <thead>
+ <row>
+ <entry>Tag</entry>
+ <entry>Examples</entry>
+ <entry>Channel</entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry><code>L</code> surrounded by <code>.</code> <code>_</code> or <code>-</code></entry>
+ <entry>film-L.wav my_movie_L_final.wav</entry>
+ <entry>Left</entry>
+ </row>
+ <row>
+ <entry><code>R</code> surrounded by <code>.</code> <code>_</code> or <code>-</code></entry>
+ <entry>film-R.wav my_movie_R_final.wav</entry>
+ <entry>Right</entry>
+ </row>
+ <row>
+ <entry><code>C</code> surrounded by <code>.</code> <code>_</code> or <code>-</code></entry>
+ <entry>film-C.wav my_movie_C_final.wav</entry>
+ <entry>Centre</entry>
+ </row>
+ <row>
+ <entry><code>Lfe</code> surrounded by <code>.</code> <code>_</code> or <code>-</code></entry>
+ <entry>film-Lfe.wav my_movie_Lfe_final.wav</entry>
+ <entry>LFE (sub)</entry>
+ </row>
+ <row>
+ <entry><code>Ls</code> surrounded by <code>.</code> <code>_</code> or <code>-</code></entry>
+ <entry>film-Ls.wav my_movie_Ls_final.wav</entry>
+ <entry>Left surround</entry>
+ </row>
+ <row>
+ <entry><code>Rs</code> surrounded by <code>.</code> <code>_</code> or <code>-</code></entry>
+ <entry>film-Rs.wav my_movie_Rs_final.wav</entry>
+ <entry>Right surround</entry>
+ </row>
+ </tbody>
+ </tgroup>
+</table>
+
<para>
To add a directory (folder) of images, choose <guilabel>Add
folder...</guilabel> and choose the directory from the selector.
<colspec colwidth='5*'/>
<tbody>
<row>
-<entry>sRGB</entry><entry>Still images in RGB, e.g. photographs</entry>.
+<entry>sRGB</entry><entry>Still images in RGB, e.g. photographs.</entry>
</row>
<row>
<entry>Rec. 601</entry><entry>Standard-definition content (fewer than about 1000 pixels across) including DVD rips.</entry>
<title>Other settings</title>
<para>
-The <guilabel>crop</guilabel> settings can be used to crop your content,
-which can be used to remove black borders from round the edges of DVD
-images, for example. The specified number of pixels will be trimmed
-from each edge, and the content image in the right of the window will
-be updated to show the effect of the crop.
+The <guilabel>crop</guilabel> settings can be used to crop your
+content, which is often used to remove black borders from the edges of
+the image. The specified number of pixels will be trimmed from each
+edge, and the content image in the right of the window will be updated
+to show the effect of the crop.
</para>
<para>
<title>KDM dialog</title>
<mediaobject>
<imageobject>
- <imagedata scale="40" fileref="screenshots/kdm&scs;"/>
+ <imagedata scale="35" fileref="screenshots/kdm&scs;"/>
</imageobject>
</mediaobject>
</figure>
<title>The KDM creator</title>
<mediaobject>
<imageobject>
- <imagedata scale="35" fileref="screenshots/kdm-creator&scs;"/>
+ <imagedata scale="30" fileref="screenshots/kdm-creator&scs;"/>
</imageobject>
</mediaobject>
</figure>
<title>Preferences</title>
<para>
-DCP-o-matic provides a few preferences which can be used to modify its
-behaviour. This chapter explains those options.
+DCP-o-matic provides preferences which can be used to modify its
+behaviour. They are described in this chapter.
</para>
<para>
</section>
+<!-- ============================================================== -->
+<section>
+<title>Email</title>
+
+<para>
+The Email tab is shown in <xref linkend="fig-prefs-email"/>.
+</para>
+
+<figure id="fig-prefs-email">
+ <title>Email preferences</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="screenshots/prefs-email&scs;"/>
+ </imageobject>
+ </mediaobject>
+</figure>
+
+<para>
+These settings are used when DCP-o-matic sends emails.
+</para>
+
+<para>
+ <guilabel>Outgoing mail server</guilabel> should be the host name of a mail (SMTP) server that DCP-o-matic can use. You can also specify the port that DCP-o-matic should use. <guilabel>User name</guilabel> and <guilabel>Password</guilabel> are the credentials that are required to send email through the server you have specified.
+</para>
+
+</section>
+
<!-- ============================================================== -->
<section>
<title>KDM email</title>
<para>
-The KDM email is shown in <xref linkend="fig-prefs-kdm-email"/>.
+The KDM email tab is shown in <xref linkend="fig-prefs-kdm-email"/>.
</para>
<figure id="fig-prefs-kdm-email">
</section>
+<!-- ============================================================== -->
+<section>
+<title>Accounts</title>
+
+<para>
+The Accounts tab is shown in <xref linkend="fig-prefs-accounts"/>.
+</para>
+
+<figure id="fig-prefs-accounts">
+ <title>Accounts preferences</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="screenshots/prefs-accounts&scs;"/>
+ </imageobject>
+ </mediaobject>
+</figure>
+
+<para>
+DCP-o-matic can download projector certificates from the Barco and
+Christie websites if you have the appropriate credentials. Enter your
+usernames and passwords.
+</para>
+
+</section>
+
+
+<!-- ============================================================== -->
+<section>
+<title>Notifications</title>
+
+<para>
+The Notifications tab is shown in <xref linkend="fig-prefs-notifications"/>.
+</para>
+
+<figure id="fig-prefs-notifications">
+ <title>Notifications preferences</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="screenshots/prefs-notifications&scs;"/>
+ </imageobject>
+ </mediaobject>
+</figure>
+
+<para>
+DCP-o-matic can notify the user when jobs have completed. These
+notifications can be either or both of a message box on-screen (if
+<guilabel>Message box</guilabel> is ticked) and email (if
+<guilabel>Email</guilabel> is ticked). If you enable email
+notifications you can fill in the details of the emails you want to
+send.
+</para>
+
+<para>
+The bottom box in the tab is the contents of the email that should
+be sent. DCP-o-matic will replace the ‘magic’ strings
+<code>$JOB_NAME</code> and <code>$JOB_STATUS</code> in the with the
+details of the job that has completed.
+</para>
+
+</section>
+
+
<!-- ============================================================== -->
<section>
<title>Cover sheet</title>
<para>
The only rates that are (pretty much) guaranteed to work on all DCI
-projectors are 24 frames per second (fps) for video and 48kHz or 96kHz
-for audio. If you are sending your DCPs to unknown places it wise to
+projectors are 24 frames per second (fps) for video and 48kHz for
+audio. If you are sending DCPs to unknown places it is wise to
consider using these rates if at all possible.
</para>
<title>Other often-supported rates</title>
<para>
Many projectors now in the wild support additional video frame rates:
-25, 30 and 48 fps.
+25, 30, 48, 50 and 60 fps.
</para>
</section>
<guilabel>DCP</guilabel> tab sets the video frame rate that the DCP
will use. Clicking <guilabel>Use best</guilabel> sets the rate to
what DCP-o-matic thinks is the best for your content. With this
-button, DCP-o-matic assumes that the whole range of frame rates (24,
-25, 30 and 48fps) are allowable.
+button, DCP-o-matic assumes that the most commonly-working frame rates (24,
+25 and 30fps) are allowed.
</para>
<para>
</para>
<para>
- <code>dcpomatic2_create [OPTION] [CONTENT] [<CONTENT> ...]</code>
+ <code>dcpomatic2_create [OPTION] <CONTENT> [[OPTION] <CONTENT> ...]</code>
</para>
<para>
The options are:
</para>
- <itemizedlist>
- <listitem><code>-v</code>, <code>--version</code> — show DCP-o-matic version</listitem>
- <listitem><code>-h</code>, <code>--help</code> — show this help</listitem>
- <listitem><code>-n</code>, <code>--name</code> — <name> film name</listitem>
- <listitem><code>-t, --template <name></code> — template name</listitem>
- <listitem><code>-c, --dcp-content-type <type></code> — FTR, SHR, TLR, TST, XSN, RTG, TSR, POL, PSA or ADV</listitem>
- <listitem><code>--container-ratio <ratio></code> — 119, 133, 137, 138, 166, 178, 185 or 239</listitem>
- <listitem><code>--content-ratio <ratio></code> — 119, 133, 137, 138, 166, 178, 185 or 239</listitem>
- <listitem><code>-s, --still-length <n></code> — number of seconds that still content should last</listitem>
- <listitem><code>--standard <standard></code> — SMPTE or interop (default SMPTE)</listitem>
- <listitem><code>--no-use-isdcf-name></code> — do not use an ISDCF name; use the specified name unmodified</listitem>
- <listitem><code>--no-sign</code>— do not sign the DCP</listitem>
- <listitem><code>-o</code>, <code>--output <dir></code> — output directory</listitem>
- </itemizedlist>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dcpomatic_create.xml"/>
<para>
For example, to setup a film using a MP4 file you might do:
<code>dcpomatic2_cli [OPTION] [FILM]</code>
</para>
- <para>
- <itemizedlist>
- <listitem><code>-v</code>, <code>--version</code> — show DCP-o-matic version</listitem>
- <listitem><code>-h</code>, <code>--help</code> — show this help</listitem>
- <listitem><code>-f</code>, <code>--flags</code> — show flags passed to C++ compiler on build</listitem>
- <listitem><code>-n</code>, <code>--no-progress</code> — do not print progress to stdout</listitem>
- <listitem><code>-r</code>, <code>--no-remote</code> — do not use any remote servers</listitem>
- <listitem><code>-t</code>, <code>--threads</code> — specify number of local encoding threads (overriding configuration)</listitem>
- <listitem><code>-j</code>, <code>--json</code> <port> — run a JSON server on the specified port</listitem>
- <listitem><code>-k</code>, <code>--keep-going</code> — keep running even when the job is complete</listitem>
- <listitem><code>-s</code>, <code>--servers</code> — just display a list of encoding servers that DCP-o-matic is configured to use; don't encode</listitem>
- <listitem><code>-d</code>, <code>--dcp-path</code> — echo DCP's path to stdout on successful completion (implies -n)</listitem>
- <listitem><code>--dump</code> — just dump a summary of the film's settings; don't encode</listitem>
- </itemizedlist>
- </para>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dcpomatic_cli.xml"/>
<para>
For example, to encode a film called <code>my_film</code> you might do:
<code>dcpomatic2_kdm_cli [OPTION] <FILM|CPL-ID></code>
</para>
- <para>
- <itemizedlist>
- <listitem><code>-o</code>, <code>--output</code> — output file or directory</listitem>
- <listitem><code>-f</code>, <code>--valid-from</code> — valid from time (in local time zone of the cinema) (e.g. "2013-09-28 01:41:51") or "now"</listitem>
- <listitem><code>-t</code>, <code>--valid-to</code> — valid to time (in local time zone of the cinema) (e.g. "2014-09-28 01:41:51")</listitem>
- <listitem><code>-d</code>, <code>--valid-duration</code> — valid duration (e.g. "1 day", "4 hours", "2 weeks")</listitem>
- <listitem><code>--formulation</code> — modified-transitional-1, dci-any or dci-specific [default modified-transitional-1]</listitem>
- <listitem><code>-z</code>, <code>--zip</code> — ZIP each cinema's KDMs into its own file</listitem>
- <listitem><code>-v</code>, <code>--verbose</code> — be verbose</listitem>
- <listitem><code>-c</code>, <code>--cinema</code> — specify a cinema, either by name or email address</listitem>
- <listitem><code>--certificate</code> — file containing projector certificate</listitem>
- <listitem><code>--cinemas</code> — list known cinemas from the DCP-o-matic settings</listitem>
- <listitem><code>--dkdm-cpls</code> — list CPLs for which DCP-o-matic has DKDMs</listitem>
- </itemizedlist>
- </para>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dcpomatic_kdm_cli.xml"/>
</section>
</chapter>