<section>
<title>What is DCP-o-matic?</title>
-<para>DCP-o-matic is a set of programs to perform the following tasks:</para>
+<para>DCP-o-matic is a set of programs to allow you to:</para>
<itemizedlist>
- <listitem>Creation of <ulink
- url="http://en.wikipedia.org/wiki/Digital_Cinema_Package">Digital
+ <listitem>Create <ulink
+ url="https://en.wikipedia.org/wiki/Digital_Cinema_Package">Digital
Cinema Packages</ulink> (DCPs) from video, audio, subtitle and closed-caption files.</listitem>
- <listitem>Playback and verification of DCPs on a PC/Mac.</listitem>
- <listitem>Creation of KDMs for DCPs.</listitem>
+ <listitem>Play and verify DCPs.</listitem>
+ <listitem>Create KDMs for DCPs.</listitem>
+ <listitem>Write cinema-format drives containing DCPs.</listitem>
</itemizedlist>
</section>
<para>
DCP-o-matic is free and open-source and is licensed under the <ulink
-url="http://www.gnu.org/licenses/old-licenses/gpl-2.0.html">GNU
+url="https://www.gnu.org/licenses/old-licenses/gpl-2.0.html">GNU
GPL</ulink>.
</para>
</para>
<note>
-Notes of an advanced nature are presented like this. Ignore them unless you want to know the gory details.
+Notes of an advanced nature are presented like this. Ignore them unless you want to know the details.
</note>
</section>
<para>
To install DCP-o-matic on Windows, download the installer from
-<ulink url="http://dcpomatic.com/">http://dcpomatic.com/</ulink>
+<ulink url="https://dcpomatic.com/">https://dcpomatic.com/</ulink>
and double-click it. Click through the installer wizard, and
DCP-o-matic will be installed onto your machine.
</para>
<para>
If you are using a 32-bit version of Windows, you will need the 32-bit
installer. For 64-bit Windows, either installer will work, but I
-suggest you used the 64-bit version as it will allow DCP-o-matic to
+suggest you use the 64-bit version as it will allow DCP-o-matic to
use more memory. You may find that DCP-o-matic crashes if you run
many parallel encoding threads (more than 4) on the 32-bit
version.
</para>
-<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. Be aware, though, that support for Windows XP will
-not last forever and you should plan to upgrade if at all possible.
-</para>
-
</section>
<!-- ============================================================== -->
<section>
-<title>Mac OS X</title>
+<title>macOS</title>
<para>
-DCP-o-matic will run on Mac OS X version 10.6 (Snow Leopard) and
-higher. DCP-o-matic is split into five separate applications, each of
+DCP-o-matic will run on macOS version 10.10 (Yosemite) and
+higher. DCP-o-matic is split into seven 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>
<para>
-If you are not sure which parts of DCP-o-matic to install, start
+If you don't know which parts of DCP-o-matic to install, start
with the first (main) part.
</para>
<!-- ============================================================== -->
<section>
-<title>Debian, Ubuntu or Mint Linux</title>
-
-<para>
- You can install DCP-o-matic on:
-</para>
+<title>Debian, Ubuntu and Mint Linux</title>
-<itemizedlist>
- <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, Ubuntu or Mint will install the necessary bits and
-pieces and set DCP-o-matic up for you.
+<para>There are <code>.deb</code> packages for Debian, Ubuntu and Mint on
+ <ulink url="https://dcpomatic.com/">https://dcpomatic.com/</ulink>
</para>
</section>
<!-- ============================================================== -->
<section>
<title>Fedora, Centos and Mageia Linux</title>
- <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>There are <code>.rpm</code> packages for Fedora, Centos and Mageia on
+ <ulink url="https://dcpomatic.com/">https://dcpomatic.com/</ulink>
</para>
</section>
<!-- ============================================================== -->
</para>
</section>
-
-<!-- ============================================================== -->
-<section>
-<title>Other Linux distributions</title>
-
-<para>
-Installation on other Linux systems (for which no packages are
-available) is quite hard as it must be compiled from source. If you
-can't download packages for your distribution, do let me know by
-<ulink url="mailto:carl@dcpomatic.com">email</ulink> and I will look
-into providing packages on the website.
-</para>
-
-<para>
-The following dependencies are required:
-<itemizedlist>
-<listitem><ulink url="http://ffmpeg.org/">FFmpeg</ulink></listitem>
-<listitem><ulink url="http://www.mega-nerd.com/libsndfile/">libsndfile</ulink></listitem>
-<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.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.wxwidgets.org/">wxWidgets</ulink></listitem>
-<listitem><ulink url="http://libxmlplusplus.sourceforge.net/">libxml++</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="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>
-</itemizedlist>
-</para>
-
-<para>
-Once you have installed the development packages for the dependencies,
-download the source code from <ulink
-url="http://dcpomatic.com/">http://dcpomatic.com/</ulink>,
-unpack it and run the following commands from inside the source
-directory:
-</para>
-
-<programlisting>
-./waf configure --disable-tests
-./waf build
-sudo ./waf install
-</programlisting>
-
-<para>
-With any luck, this will build and install DCP-o-matic on your system. To run it, enter:
-</para>
-
-<programlisting>
-dcpomatic2
-</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 DCP or video processing.
+ <title>
+ Building from source
+ </title>
+ <para>
+ Since DCP-o-matic is open-source you can also build it yourself, though this can be quite a difficult process (especially on Windows and macOS). There are instructions for how to do it on
+ <ulink url="https://dcpomatic.com/development">
+ https://dcpomatic.com/
+ </ulink>
</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>
Now, start DCP-o-matic and its window will open. First, we will
create a new ‘film’. A ‘film’ is how DCP-o-matic refers to
some pieces of content, along with some settings, which we will make into
-a DCP. DCP-o-matic stores its data in a folder on your disk while it
-creates the DCP. You can create a new film by selecting
+a DCP. DCP-o-matic stores its ‘film’ data in a folder on your disk while it
+creates the DCP.
+</para>
+
+<para>
+You can create a new film by selecting
<guilabel>New</guilabel> from the <guilabel>File</guilabel> menu, as
shown in <xref linkend="fig-file-new"/>.
</para>
<title>Creating a new film</title>
<mediaobject>
<imageobject>
- <imagedata scale="250" fileref="screenshots/file-new&scs;"/>
+ <imagedata fileref="screenshots/file-new&scs;"/>
</imageobject>
</mediaobject>
</figure>
<title>Dialogue box for creating a new film</title>
<mediaobject>
<imageobject>
- <imagedata fileref="screenshots/video-new-film&scs;"/>
+ <imagedata fileref="screenshots/new-film&scs;"/>
</imageobject>
</mediaobject>
</figure>
<para>
In this dialogue box you can choose a name for the film. This will be
used to name the folder to store its data in, and also as the initial
-name for the DCP itself. You can also choose whereabouts you want to create
+name for the DCP itself. You can also choose where you want to create
the film. In the example from the figure, DCP-o-matic will create a
folder called ‘DCP Test’ inside my existing folder <code>DCP</code> into which it
will write its working files.
<title>Making the DCP</title>
<mediaobject>
<imageobject>
- <imagedata scale="250" fileref="screenshots/making-dcp&scs;"/>
+ <imagedata fileref="screenshots/making-dcp&scs;"/>
</imageobject>
</mediaobject>
</figure>
<para>
-When it has finished, the DCP will end up on your disk inside the
-film's folder. You can then copy this to a projector via a USB
-stick, hard-drive or network connection. See <xref
+When it has finished, the DCP will be written into its own folder inside the film's folder.
+You can copy this to a projector via a USB stick, hard-drive or network connection. See <xref
linkend="ch-files"/> for details about the files that DCP-o-matic creates.
</para>
<para>
Alternatively, DCP-o-matic can upload your DCP directly to a projector
or Theatre Management System (TMS) that is accessible via SCP or FTP
-across your network. See the <xref linkend="sec-prefs-tms"
-endterm="sec-prefs-tms-short"/> in <xref linkend="sec-prefs-tms"/>.
+across your network. See <xref linkend="sec-prefs-tms"/>.
</para>
</section>
<title>Dialogue box for creating a new film</title>
<mediaobject>
<imageobject>
- <imagedata fileref="screenshots/still-new-film&scs;"/>
+ <imagedata fileref="screenshots/new-film&scs;"/>
</imageobject>
</mediaobject>
</figure>
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
+can preview it in the normal way, though playback may be slow as
decoding of DCPs is almost as computationally intensive as encoding
them.
</para>
images which should be treated as the frames of a video.
</listitem>
-<listitem>Subtitle — a file containing subtitle which will be
+<listitem>Subtitle — a file containing subtitles which will be
superimposed on the image of the DCP. These can be
<guilabel>.srt</guilabel>, <guilabel>.ssa</guilabel>, <guilabel>.ass</guilabel> or <guilabel>.xml</guilabel>
-files.</listitem>
+files. Subtitle files can also be used to make closed captions.</listitem>
<listitem>DCP — an existing DCP.</listitem>
+
+<listitem>ATMOS MXFs — if you have Dolby ATMOS content in MXF format (created using Dolby's tools) you can add it to a DCP just like any other content.</listitem>
</itemizedlist>
<para>
</section>
-<!-- ============================================================== -->
-<section>
-<title>Filtering</title>
-
-<para>
-The ‘filters’ settings allow you to apply various video
-filters to the image. These may be useful to try to improve
-poor-quality sources like DVDs. You can set up the filters by clicking the
-<guilabel>Edit</guilabel> button next to the filters entry in the
-setup area of the DCP-o-matic window; this opens the filters selector
-as shown in <xref linkend="fig-filters"/>.
-</para>
-
-<figure id="fig-filters">
- <title>Filters selector</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="screenshots/filters&scs;"/>
- </imageobject>
- </mediaobject>
-</figure>
-
-<para>
-After changing the filters setup, you will need to regenerate the DCP
-to see the effect on the cinema screen. The preview in DCP-o-matic
-will update itself whenever filters are changed, though of course this
-image may be smaller and of lower resolution than a projected image!
-</para>
-</section>
-
-
-
<!-- ============================================================== -->
<section>
<title>Colour conversion</title>
<para>
DCP-o-matic's colour conversion processes are discussed in much more
detail in a separate document <ulink
-url="http://dcpomatic.com/manual/colour.pdf">colour.pdf</ulink>.
+url="https://dcpomatic.com/manual/colour.pdf">colour.pdf</ulink>.
</para>
</section>
</section>
+<section>
+<title>Advanced content settings</title>
+
+<para>
+There are a few more content settings that you can change by right-clicking a piece of content in the list and choosing <guilabel>Advanced settings...</guilabel>
+This opens the dialogue box shown in <xref linkend="fig-advanced-content"/>.
+</para>
+
+<figure id="fig-advanced-content">
+ <title>Advanced content dialogue</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="screenshots/advanced-content&scs;"/>
+ </imageobject>
+ </mediaobject>
+</figure>
+
+
+<!-- ============================================================== -->
+<section>
+<title>Video filters</title>
+
+<para>
+The <guilabel>Video filters</guilabel> setting allows you to apply various
+filters to the image. These may be useful to try to improve
+poor-quality sources like DVDs. You can set up the filters by clicking the
+<guilabel>Edit</guilabel> button next to the filters entry; this opens the filters selector
+as shown in <xref linkend="fig-filters"/>.
+</para>
+
+<figure id="fig-filters">
+ <title>Filters selector</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="screenshots/filters&scs;"/>
+ </imageobject>
+ </mediaobject>
+</figure>
+
+</section>
+
+
+<section>
+<title>Override frame rate</title>
+
+<para>
+The <guilabel>Override detected video frame rate</guilabel> setting has some different effects depending on the type of content
+you use it on.
+</para>
+
+<para>
+For video content, it sets the frame rate that DCP-o-matic will run the video at. This is useful if DCP-o-matic has mis-detected
+the video frame rate. For example, if DCP-o-matic says your content is 24fps when you know for a fact it's 25fps, you can set the
+override value to 25 to force DCP-o-matic to do the right thing.
+</para>
+
+<para>
+On audio, subtitle and caption content this setting behaves slightly differently. It sets the video frame rate that the content
+in question was intended to work with. As an example, consider a project with a 23.976fps video source and some separate audio files.
+Perhaps those audio files have been mastered alongside a 24fps version of your video. By default, DCP-o-matic will see the 23.976fps
+video file and decide to run it slightly fast at 24fps to fit the DCP standard. It will then also run the audio slightly fast so that
+it stays in sync with the video.
+</para>
+
+<para>
+In this case, though, that is not what you want, since the audio is already ‘fixed’ to work alongside 24fps video. If you
+override the video frame rate of the <emphasis>audio</emphasis> content to 24fps this will stop DCP-o-matic altering it.
+</para>
+
+<para>
+A similar situation can occur if you have video at one rate and a subtitle file that was prepared with its timing at a different rate.
+In that case, you should override the video frame rate of the <emphasis>subtitle</emphasis> content to the one that it was prepared for.
+This will mean that DCP-o-matic can get the relative timing right.
+</para>
+
+<para>
+Do <emphasis>not</emphasis> use this setting to change the DCP frame rate. Doing so will result in strange effects and sync problems.
+</para>
+</section>
+
+
+<section>
+<title>Video has burnt-in subtitles</title>
+<para>
+Details about subtitle language are stored in various places within the DCP metadata. If a piece of video content already has subtitles
+burnt into the image you can tell DCP-o-matic the language that they are in by clicking the <guilabel>Edit...</guilabel> button.
+</para>
+</section>
+
+
+<section>
+<title>Ignore this content's video</title>
+<para>
+Tick this if you have some content which includes video along with other things (such as audio or subtitles) and you do
+<emphasis>not</emphasis> want the video to appear in the DCP.
+</para>
+</section>
+
+
+</section>
+
</chapter>
<title>Encryption</title>
<para>
-It is not required that DCPs be encrypted, but they can be. This
+DCP's do not have to be encrypted, but they can be. This
chapter discusses the basic principles of DCP encryption, and how
DCP-o-matic can create encrypted DCPs and KDMs for them.
</para>
DCPs can be encrypted. This means that the picture and sound data are
encoded in such a way that only cinemas ‘approved’ by the
DCP's creators can read them. In particular, this means copies of the
-DCP can be distributed by insecure means: if an ne'er-do-well called
+DCP can be distributed by insecure means: if a bad person called
Mallory obtains a hard drive containing an encrypted DCP, there is no
way that he can play it. Only those cinemas who receive a correct key
delivery message (KDM) can play the DCP.
<para>
We suppose that we are trying to send a DCP to
-Alice's cinema without a troublemaker called Mallory being able to
+Alice's cinema without an attacker called Mallory being able to
watch it himself.
</para>
</para>
<para>
-The first step in a DCP encryption is to encode its data with some key
+The first step in a DCP encryption is to encode its data with a random key
using symmetric-key encryption. The encrypted DCP can then be sent
anywhere, safe in the knowledge that even if Mallory got hold of a
copy, he could not decrypt it.
<para>
By default the <guilabel>DKDM</guilabel> list will list any DCPs for
which you have clicked <guilabel>Make DKDM for
-DCP-o-matic</guilabel>in the main DCP-o-matic program. If you have
+DCP-o-matic</guilabel> in the main DCP-o-matic program. If you have
other DKDMs you can add them by clicking <guilabel>Add...</guilabel> and
specifying the file containing the DKDM.
</para>
<para>
The translations for DCP-o-matic have been contributed by helpful
users. If your language is not on the last, head to <ulink
-url="http://dcpomatic.com/i18n.php">the DCP-o-matic website</ulink> to
+url="https://dcpomatic.com/i18n.php">the DCP-o-matic website</ulink> to
find out how to contribute a translation.
</para>
</section>
<para>
The <guilabel>Check for updates on startup</guilabel> option, if
enabled, will tell DCP-o-matic to check on <ulink
-url="http://dcpomatic.com/">dcpomatic.com</ulink> to see if there any
+url="https://dcpomatic.com/">dcpomatic.com</ulink> to see if there any
newer versions of DCP-o-matic then the one you are running. If so, a
dialogue box will open with a link to download the new version.
</para>
<para>
With these controls you can set the issuer and creator strings that
-will be put into the DCPs which you create.
+will be put into the DCPs which you create. The issuer is typically your name
+(or your organisation's name) and the creator is typically the name of the tool
+used to make the DCP (e.g. DCP-o-matic).
</para>
</section>
</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,
-Christie and GDC websites if you have the appropriate credentials.
-Enter your usernames and passwords.
-</para>
-
-</section>
-
-
<!-- ============================================================== -->
<section>
<title>Notifications</title>
<para>If you would rather not bother installing DCP-o-matic on your
server computers, the other option is to use the live-CD
image that you can download from the <ulink
-url="http://dcpomatic.com/">DCP-o-matic web site.</ulink></para>
+url="https://dcpomatic.com/">DCP-o-matic web site.</ulink></para>
<para>Either burn the image to CD, or write it to a USB stick (using
something like <ulink
<itemizedlist>
<listitem>Start a new DCP-o-matic film.</listitem>
-<listitem>Click <guilabel>Add folder...</guilabel> and specify your existing DCP's folder.</listitem>
+<listitem>Click <guilabel>Add DCP...</guilabel> and specify your existing DCP's folder.</listitem>
<listitem>Go to the <guilabel>DCP</guilabel> tab and choose <guilabel>Split by video content</guilabel> for <guilabel>Reel type</guilabel>.</listitem>
<listitem>Go to the <guilabel>Video</guilabel> and
<guilabel>Audio</guilabel> tabs in turn and tick the <guilabel>Use this DCP's audio as OV and make VF</guilabel> checkboxes.</listitem>
<itemizedlist>
<listitem>Start a new DCP-o-matic film.</listitem>
-<listitem>Click <guilabel>Add folder...</guilabel> and specify your existing DCP's folder.</listitem>
+<listitem>Click <guilabel>Add DCP...</guilabel> and specify your existing DCP's folder.</listitem>
<listitem>Add your subtitles to the film in whatever format you have.</listitem>
<listitem>Check the subtitle appearance in the preview; it will be
slow to respond as it is having to decompress images from the existing
<itemizedlist>
<listitem>Start a new DCP-o-matic film.</listitem>
-<listitem>Click <guilabel>Add folder...</guilabel> and specify your existing DCP's folder.</listitem>
+<listitem>Click <guilabel>Add DCP...</guilabel> and specify your existing DCP's folder.</listitem>
<listitem>Add your subtitles to the film in whatever format you have.</listitem>
<listitem>Go to the <guilabel>Subtitle</guilabel> tab and tick the <guilabel>Burn subtitles into image</guilabel> checkbox.</listitem>
<listitem>Check the subtitle appearance in the preview; it will be
</chapter>
<chapter xml:id="ch-player" xmlns="http://docbook.org/ns/docbook" version="5.0" xml:lang="en">
- <title>Playing and verifying DCPs</title>
+ <title>Playing DCPs</title>
<para>DCP-o-matic includes a DCP player, and although it requires a
very high-speed CPU to play DCPs in full resolution, it can also
resolution.
</para>
+</chapter>
+
+
+<chapter xml:id="ch-verifier" xmlns="http://docbook.org/ns/docbook" version="5.0" xml:lang="en">
+ <title>Verifying DCPs</title>
+
<para>
- The player also offers a simple DCP validator. To check a DCP,
+ The player also offers a DCP validator. To check a DCP,
open it and then select <guilabel>Verify DCP</guilabel> from the
- <guilabel>Tools</guilabel> menu. This will run some basic checks to see if the DCP meets the required standards.
+ <guilabel>Tools</guilabel> menu. This will run various checks on the DCP.
+ </para>
+
+ <para>
+ The validator will report three kinds of problems:
</para>
+ <itemizedlist>
+ <listitem>Errors — serious problems with the DCP that are likely to cause problems on playback.</listitem>
+ <listitem>Bv2.1 errors — errors described by the <ulink url="https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=9161348">SMPTE Bv2.1 standard</ulink>.</listitem>
+ <listitem>Warnings — small problems that may not matter.</listitem>
+ </itemizedlist>
+
+ <section>
+ <title>Errors</title>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="verify_errors.xml"/>
+ </section>
+
+ <section>
+ <title>Bv2.1 errors</title>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="verify_bv21_errors.xml"/>
+ </section>
+
+ <section>
+ <title>Warnings</title>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="verify_warnings.xml"/>
+ </section>
+
</chapter>
+
+<!-- ============================================================== -->
+<chapter>
+<title>Keyboard shortcuts</title>
+<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="shortcuts.xml"/>
+</chapter>
+
+
<!-- ============================================================== -->
<chapter xml:id="ch-config" xmlns="http://docbook.org/ns/docbook" version="5.0" xml:lang="en">
<title>Configuration files</title>