summaryrefslogtreecommitdiff
path: root/src/tools
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools')
-rw-r--r--src/tools/dcpomatic.cc40
-rw-r--r--src/tools/dcpomatic_batch.cc3
-rw-r--r--src/tools/dcpomatic_combiner.cc10
-rw-r--r--src/tools/dcpomatic_disk.cc249
-rw-r--r--src/tools/dcpomatic_disk_writer.cc43
-rw-r--r--src/tools/dcpomatic_editor.cc35
-rw-r--r--src/tools/dcpomatic_kdm.cc4
-rw-r--r--src/tools/dcpomatic_player.cc687
-rw-r--r--src/tools/dcpomatic_playlist.cc45
-rw-r--r--src/tools/dcpomatic_server.cc173
-rw-r--r--src/tools/dcpomatic_server_cli.cc4
-rw-r--r--src/tools/dcpomatic_verifier.cc240
-rw-r--r--src/tools/po/cs_CZ.po585
-rw-r--r--src/tools/po/da_DK.po588
-rw-r--r--src/tools/po/de_DE.po586
-rw-r--r--src/tools/po/el_GR.po1247
-rw-r--r--src/tools/po/es_ES.po589
-rw-r--r--src/tools/po/fa_IR.po585
-rw-r--r--src/tools/po/fr_FR.po684
-rw-r--r--src/tools/po/hu_HU.po586
-rw-r--r--src/tools/po/it_IT.po590
-rw-r--r--src/tools/po/ja_JP.po1379
-rw-r--r--src/tools/po/ko_KR.po1350
-rw-r--r--src/tools/po/nl_NL.po590
-rw-r--r--src/tools/po/pl_PL.po595
-rw-r--r--src/tools/po/pt_BR.po589
-rw-r--r--src/tools/po/pt_PT.po584
-rw-r--r--src/tools/po/ru_RU.po585
-rw-r--r--src/tools/po/sk_SK.po582
-rw-r--r--src/tools/po/sl_SI.po593
-rw-r--r--src/tools/po/sv_SE.po591
-rw-r--r--src/tools/po/tr_TR.po571
-rw-r--r--src/tools/po/uk_UA.po588
-rw-r--r--src/tools/po/zh_CN.po612
-rw-r--r--src/tools/wscript3
35 files changed, 11211 insertions, 5574 deletions
diff --git a/src/tools/dcpomatic.cc b/src/tools/dcpomatic.cc
index d8e79d667..691841bbc 100644
--- a/src/tools/dcpomatic.cc
+++ b/src/tools/dcpomatic.cc
@@ -62,7 +62,6 @@
#include "lib/audio_content.h"
#include "lib/check_content_job.h"
#include "lib/cinema.h"
-#include "lib/compose.hpp"
#include "lib/config.h"
#include "lib/constants.h"
#include "lib/content.h"
@@ -255,6 +254,7 @@ enum {
ID_tools_restore_default_preferences,
ID_tools_export_preferences,
ID_tools_import_preferences,
+ ID_help_user_manual,
ID_help_report_a_problem,
/* IDs for shortcuts (with no associated menu item) */
ID_add_file,
@@ -317,7 +317,7 @@ public:
*/
, _splitter(new LimitedFrameSplitter(this))
, _right_panel(new wxPanel(_splitter, wxID_ANY))
- , _film_viewer(_right_panel)
+ , _film_viewer(_right_panel, false)
{
auto bar = new wxMenuBar;
setup_menu (bar);
@@ -367,6 +367,7 @@ public:
Bind (wxEVT_MENU, boost::bind (&DOMFrame::tools_export_preferences, this), ID_tools_export_preferences);
Bind (wxEVT_MENU, boost::bind (&DOMFrame::tools_import_preferences, this), ID_tools_import_preferences);
Bind (wxEVT_MENU, boost::bind (&DOMFrame::help_about, this), wxID_ABOUT);
+ Bind (wxEVT_MENU, boost::bind (&DOMFrame::help_user_manual, this), ID_help_user_manual);
Bind (wxEVT_MENU, boost::bind (&DOMFrame::help_report_a_problem, this), ID_help_report_a_problem);
Bind (wxEVT_CLOSE_WINDOW, boost::bind (&DOMFrame::close, this, _1));
@@ -1062,8 +1063,16 @@ private:
}
auto job = make_shared<TranscodeJob>(_film, TranscodeJob::ChangedBehaviour::EXAMINE_THEN_STOP);
job->set_encoder(
- make_shared<SubtitleFilmEncoder>(_film, job, dialog.path(), _film->isdcf_name(true), dialog.split_reels(), dialog.include_font())
- );
+ make_shared<SubtitleFilmEncoder>(
+ _film,
+ job,
+ dialog.path(),
+ _film->isdcf_name(true),
+ dialog.split_reels(),
+ dialog.include_font(),
+ dialog.standard()
+ )
+ );
JobManager::instance()->add(job);
}
@@ -1154,6 +1163,11 @@ private:
dialog.ShowModal();
}
+ void help_user_manual()
+ {
+ wxLaunchDefaultBrowser(std_to_wx("https://dcpomatic.com/manual"));
+ }
+
void help_report_a_problem ()
{
ReportProblemDialog dialog(this, _film);
@@ -1401,7 +1415,7 @@ private:
jobs_menu->AppendSeparator ();
/* [Shortcut] Ctrl+E:Export video file */
add_item (jobs_menu, _("Export video file...\tCtrl-E"), ID_jobs_export_video_file, NEEDS_FILM);
- add_item (jobs_menu, _("Export subtitles..."), ID_jobs_export_subtitles, NEEDS_FILM);
+ add_item (jobs_menu, _("Export subtitles...\tShift-Ctrl-E"), ID_jobs_export_subtitles, NEEDS_FILM);
jobs_menu->AppendSeparator ();
add_item (jobs_menu, _("&Send DCP to TMS"), ID_jobs_send_dcp_to_tms, NEEDS_FILM | NOT_DURING_DCP_CREATION | NEEDS_CPL);
@@ -1438,6 +1452,7 @@ private:
#else
add_item (help, _("About"), wxID_ABOUT, ALWAYS);
#endif
+ add_item(help, _("User manual..."), ID_help_user_manual, ALWAYS);
if (variant::show_report_a_problem()) {
add_item(help, _("Report a problem..."), ID_help_report_a_problem, ALWAYS);
}
@@ -1488,7 +1503,7 @@ private:
for (size_t i = 0; i < history.size(); ++i) {
string s;
if (i < 9) {
- s = String::compose ("&%1 %2", i + 1, history[i].string());
+ s = fmt::format("&{} {}", i + 1, history[i].string());
} else {
s = history[i].string();
}
@@ -1655,7 +1670,7 @@ private:
setvbuf(hf_in, NULL, _IONBF, 128);
*stdin = *hf_in;
- cout << variant::insert_dcpomatic("%1 is starting.") << "\n";
+ cout << variant::insert_dcpomatic("{} is starting.") << "\n";
}
#endif
wxInitAllImageHandlers ();
@@ -1704,6 +1719,8 @@ private:
*/
Config::Bad.connect (boost::bind(&App::config_bad, this, _1));
+ signal_manager = new wxSignalManager (this);
+
_frame = new DOMFrame(variant::wx::dcpomatic());
SetTopWindow (_frame);
_frame->Maximize ();
@@ -1725,26 +1742,23 @@ private:
_frame->Show ();
- signal_manager = new wxSignalManager (this);
Bind (wxEVT_IDLE, boost::bind (&App::idle, this, _1));
if (!_film_to_load.empty() && dcp::filesystem::is_directory(_film_to_load)) {
try {
_frame->load_film (_film_to_load);
} catch (exception& e) {
- error_dialog (nullptr, std_to_wx(String::compose(wx_to_std(_("Could not load film %1 (%2)")), _film_to_load)), std_to_wx(e.what()));
+ error_dialog (nullptr, std_to_wx(fmt::format(wx_to_std(_("Could not load film {} ({})")), _film_to_load)), std_to_wx(e.what()));
}
}
if (!_film_to_create.empty ()) {
_frame->new_film (_film_to_create, optional<string>());
if (!_content_to_add.empty()) {
- for (auto i: content_factory(_content_to_add)) {
- _frame->film()->examine_and_add_content(i);
- }
+ _frame->film()->examine_and_add_content(content_factory(_content_to_add));
}
if (!_dcp_to_add.empty ()) {
- _frame->film()->examine_and_add_content(make_shared<DCPContent>(_dcp_to_add));
+ _frame->film()->examine_and_add_content({make_shared<DCPContent>(_dcp_to_add)});
}
}
diff --git a/src/tools/dcpomatic_batch.cc b/src/tools/dcpomatic_batch.cc
index c6a58f741..ee35034f4 100644
--- a/src/tools/dcpomatic_batch.cc
+++ b/src/tools/dcpomatic_batch.cc
@@ -29,7 +29,6 @@
#include "wx/wx_signal_manager.h"
#include "wx/wx_util.h"
#include "wx/wx_variant.h"
-#include "lib/compose.hpp"
#include "lib/config.h"
#include "lib/dcpomatic_socket.h"
#include "lib/film.h"
@@ -493,7 +492,7 @@ class App : public wxApp
} catch (exception& e) {
error_dialog (
0,
- std_to_wx(String::compose(wx_to_std(_("Could not load film %1")), i.string())),
+ std_to_wx(fmt::format(wx_to_std(_("Could not load film {}")), i.string())),
std_to_wx(e.what())
);
}
diff --git a/src/tools/dcpomatic_combiner.cc b/src/tools/dcpomatic_combiner.cc
index 67ca73539..8f47dc9ec 100644
--- a/src/tools/dcpomatic_combiner.cc
+++ b/src/tools/dcpomatic_combiner.cc
@@ -104,11 +104,13 @@ public:
vector<EditableListColumn> columns;
columns.push_back(EditableListColumn(_("Input DCP"), 600, true));
- _input = new EditableList<boost::filesystem::path, DirDialogWrapper>(
+ _input = new EditableList<boost::filesystem::path>(
overall_panel,
columns,
boost::bind(&DOMFrame::inputs, this),
boost::bind(&DOMFrame::set_inputs, this, _1),
+ EditableList<boost::filesystem::path>::add_with_dialog<DirDialogWrapper>,
+ EditableList<boost::filesystem::path>::edit_with_dialog<DirDialogWrapper>,
&display_string,
EditableListTitle::VISIBLE,
EditableListButton::NEW | EditableListButton::REMOVE
@@ -133,7 +135,7 @@ public:
sizer->Add (_combine, 0, wxALL | wxALIGN_RIGHT, DCPOMATIC_DIALOG_BORDER);
overall_panel->SetSizer (sizer);
Fit ();
- SetSize (768, GetSize().GetHeight() + 32);
+ SetSize(768, GetSize().GetHeight() + 96);
_combine->Bind (wxEVT_BUTTON, boost::bind(&DOMFrame::combine, this));
_output->Bind (wxEVT_DIRPICKER_CHANGED, boost::bind(&DOMFrame::setup_sensitivity, this));
@@ -162,7 +164,7 @@ private:
if (!confirm_dialog (
this,
std_to_wx (
- String::compose(wx_to_std(_("The directory %1 already exists and is not empty. "
+ fmt::format(wx_to_std(_("The directory {} already exists and is not empty. "
"Are you sure you want to use it?")),
output.string())
)
@@ -204,7 +206,7 @@ private:
_combine->Enable (!_output->GetPath().IsEmpty());
}
- EditableList<boost::filesystem::path, DirDialogWrapper>* _input;
+ EditableList<boost::filesystem::path>* _input;
wxTextCtrl* _annotation_text = nullptr;
DirPickerCtrl* _output;
vector<boost::filesystem::path> _inputs;
diff --git a/src/tools/dcpomatic_disk.cc b/src/tools/dcpomatic_disk.cc
index be527eaab..3bf907715 100644
--- a/src/tools/dcpomatic_disk.cc
+++ b/src/tools/dcpomatic_disk.cc
@@ -80,8 +80,8 @@ enum {
class DirDialogWrapper : public wxDirDialog
{
public:
- DirDialogWrapper (wxWindow* parent)
- : wxDirDialog (parent, _("Choose a DCP folder"), {}, wxDD_DIR_MUST_EXIST)
+ DirDialogWrapper(wxWindow* parent)
+ : wxDirDialog(parent, _("Choose a DCP folder"), {}, wxDD_DIR_MUST_EXIST)
{
}
@@ -90,14 +90,14 @@ public:
{
auto const dcp = boost::filesystem::path(wx_to_std(GetPath()));
if (!dcp::filesystem::exists(dcp / "ASSETMAP") && !dcp::filesystem::exists(dcp / "ASSETMAP.xml")) {
- error_dialog (nullptr, _("No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP folder."));
+ error_dialog(nullptr, _("No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP folder."));
return {};
}
return { dcp };
}
- void set (boost::filesystem::path)
+ void set(boost::filesystem::path)
{
/* Not used */
}
@@ -107,38 +107,40 @@ public:
class DOMFrame : public wxFrame
{
public:
- explicit DOMFrame (wxString const & title)
- : wxFrame (nullptr, wxID_ANY, title)
- , _nanomsg (true)
- , _sizer (new wxBoxSizer(wxVERTICAL))
+ explicit DOMFrame(wxString const & title)
+ : wxFrame(nullptr, wxID_ANY, title)
+ , _nanomsg(true)
+ , _sizer(new wxBoxSizer(wxVERTICAL))
{
#ifdef DCPOMATIC_OSX
auto bar = new wxMenuBar;
auto tools = new wxMenu;
tools->Append(ID_tools_uninstall, _("Uninstall..."));
bar->Append(tools, _("Tools"));
- SetMenuBar (bar);
- Bind (wxEVT_MENU, boost::bind(&DOMFrame::uninstall, this), ID_tools_uninstall);
+ SetMenuBar(bar);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::uninstall, this), ID_tools_uninstall);
#endif
/* Use a panel as the only child of the Frame so that we avoid
the dark-grey background on Windows.
*/
- auto overall_panel = new wxPanel (this);
- auto s = new wxBoxSizer (wxHORIZONTAL);
- s->Add (overall_panel, 1, wxEXPAND);
- SetSizer (s);
+ auto overall_panel = new wxPanel(this);
+ auto s = new wxBoxSizer(wxHORIZONTAL);
+ s->Add(overall_panel, 1, wxEXPAND);
+ SetSizer(s);
- auto grid = new wxGridBagSizer (DCPOMATIC_SIZER_X_GAP, DCPOMATIC_SIZER_Y_GAP);
+ auto grid = new wxGridBagSizer(DCPOMATIC_SIZER_X_GAP, DCPOMATIC_SIZER_Y_GAP);
int r = 0;
add_label_to_sizer(grid, overall_panel, _("DCPs"), true, wxGBPosition(r, 0));
- auto dcp_sizer = new wxBoxSizer (wxHORIZONTAL);
- auto dcps = new EditableList<boost::filesystem::path, DirDialogWrapper>(
+ auto dcp_sizer = new wxBoxSizer(wxHORIZONTAL);
+ auto dcps = new EditableList<boost::filesystem::path>(
overall_panel,
{ EditableListColumn(_("DCP"), 300, true) },
boost::bind(&DOMFrame::dcp_paths, this),
boost::bind(&DOMFrame::set_dcp_paths, this, _1),
+ EditableList<boost::filesystem::path>::add_with_dialog<DirDialogWrapper>,
+ EditableList<boost::filesystem::path>::edit_with_dialog<DirDialogWrapper>,
[](boost::filesystem::path p, int) { return p.filename().string(); },
EditableListTitle::INVISIBLE,
EditableListButton::NEW | EditableListButton::REMOVE
@@ -148,40 +150,40 @@ public:
grid->Add(dcp_sizer, wxGBPosition(r, 1), wxDefaultSpan, wxEXPAND);
++r;
- add_label_to_sizer (grid, overall_panel, _("Drive"), true, wxGBPosition(r, 0));
- auto drive_sizer = new wxBoxSizer (wxHORIZONTAL);
- _drive = new wxChoice (overall_panel, wxID_ANY);
+ add_label_to_sizer(grid, overall_panel, _("Drive"), true, wxGBPosition(r, 0));
+ auto drive_sizer = new wxBoxSizer(wxHORIZONTAL);
+ _drive = new wxChoice(overall_panel, wxID_ANY);
drive_sizer->Add(_drive, 1, wxTOP, 2);
- _drive_refresh = new wxButton (overall_panel, wxID_ANY, _("Refresh"));
+ _drive_refresh = new wxButton(overall_panel, wxID_ANY, _("Refresh"));
drive_sizer->Add(_drive_refresh, 0, wxLEFT, DCPOMATIC_SIZER_X_GAP);
- grid->Add (drive_sizer, wxGBPosition(r, 1), wxDefaultSpan, wxEXPAND);
+ grid->Add(drive_sizer, wxGBPosition(r, 1), wxDefaultSpan, wxEXPAND);
++r;
- _jobs = new JobManagerView (overall_panel, false);
- grid->Add (_jobs, wxGBPosition(r, 0), wxGBSpan(6, 2), wxEXPAND);
+ _jobs = new JobManagerView(overall_panel, false);
+ grid->Add(_jobs, wxGBPosition(r, 0), wxGBSpan(6, 2), wxEXPAND);
r += 6;
_copy = new wxButton(overall_panel, wxID_ANY, _("Copy DCPs"));
- grid->Add (_copy, wxGBPosition(r, 0), wxGBSpan(1, 2), wxEXPAND);
+ grid->Add(_copy, wxGBPosition(r, 0), wxGBSpan(1, 2), wxEXPAND);
++r;
- grid->AddGrowableCol (1);
+ grid->AddGrowableCol(1);
- _copy->Bind (wxEVT_BUTTON, boost::bind(&DOMFrame::copy, this));
- _drive->Bind (wxEVT_CHOICE, boost::bind(&DOMFrame::setup_sensitivity, this));
- _drive_refresh->Bind (wxEVT_BUTTON, boost::bind(&DOMFrame::drive_refresh, this));
+ _copy->Bind(wxEVT_BUTTON, boost::bind(&DOMFrame::copy, this));
+ _drive->Bind(wxEVT_CHOICE, boost::bind(&DOMFrame::setup_sensitivity, this));
+ _drive_refresh->Bind(wxEVT_BUTTON, boost::bind(&DOMFrame::drive_refresh, this));
- _sizer->Add (grid, 1, wxALL | wxEXPAND, DCPOMATIC_DIALOG_BORDER);
- overall_panel->SetSizer (_sizer);
- Fit ();
- SetSize(768, GetSize().GetHeight() + 32);
+ _sizer->Add(grid, 1, wxALL | wxEXPAND, DCPOMATIC_DIALOG_BORDER);
+ overall_panel->SetSizer(_sizer);
+ Fit();
+ SetSize(768, GetSize().GetHeight() + 96);
/* XXX: this is a hack, but I expect we'll need logs and I'm not sure if there's
* a better place to put them.
*/
dcpomatic_log = make_shared<FileLog>(State::write_path("disk.log"));
- dcpomatic_log->set_types (dcpomatic_log->types() | LogEntry::TYPE_DISK);
- LOG_DISK("dcpomatic_disk %1 started", dcpomatic_git_commit);
+ dcpomatic_log->set_types(dcpomatic_log->types() | LogEntry::TYPE_DISK);
+ LOG_DISK("dcpomatic_disk {} started", dcpomatic_git_commit);
{
int constexpr seconds_to_look = 3;
@@ -195,42 +197,46 @@ public:
}
}
- Bind (wxEVT_SIZE, boost::bind(&DOMFrame::sized, this, _1));
- Bind (wxEVT_CLOSE_WINDOW, boost::bind(&DOMFrame::close, this, _1));
+ Bind(wxEVT_SIZE, boost::bind(&DOMFrame::sized, this, _1));
+ Bind(wxEVT_CLOSE_WINDOW, boost::bind(&DOMFrame::close, this, _1));
JobManager::instance()->ActiveJobsChanged.connect(boost::bind(&DOMFrame::setup_sensitivity, this));
#ifdef DCPOMATIC_WINDOWS
/* We must use ::shell here, it seems, to avoid error code 740 (related to privilege escalation) */
- LOG_DISK("Starting writer process %1", disk_writer_path().string());
- _writer = new boost::process::child (disk_writer_path(), boost::process::shell, boost::process::windows::hide);
+ LOG_DISK("Starting writer process {}", disk_writer_path().string());
+ _writer = new boost::process::child(disk_writer_path(), boost::process::shell, boost::process::windows::hide);
#endif
#ifdef DCPOMATIC_LINUX
if (getenv("DCPOMATIC_NO_START_WRITER")) {
- LOG_DISK_NC("Not starting writer process as DCPOMATIC_NO_START_WRITER is set");
+ LOG_DISK("Not starting writer process as DCPOMATIC_NO_START_WRITER is set");
} else {
- LOG_DISK("Starting writer process %1", disk_writer_path().string());
- _writer = new boost::process::child (disk_writer_path());
+ LOG_DISK("Starting writer process {}", disk_writer_path().string());
+#ifdef DCPOMATIC_BOOST_PROCESS_V1
+ _writer = new boost::process::child(disk_writer_path());
+#else
+ _writer = new boost::process::v2::process(_context, disk_writer_path(), {});
+#endif
}
#endif
#ifdef DCPOMATIC_OSX
- LOG_DISK_NC("Sending notification to writer daemon");
- notify_post ("com.dcpomatic.disk.writer.start");
+ LOG_DISK("Sending notification to writer daemon");
+ notify_post("com.dcpomatic.disk.writer.start");
#endif
}
- ~DOMFrame ()
+ ~DOMFrame()
{
_nanomsg.send(DISK_WRITER_QUIT "\n", 2000);
/* This seems really horrible but it's suggested by the examples on nanomsg.org, so...
* Without this the quit is not received (at least sometimes) causing #2018.
*/
- dcpomatic_sleep_seconds (1);
+ dcpomatic_sleep_seconds(1);
}
- void set_dcp_paths (vector<boost::filesystem::path> dcps)
+ void set_dcp_paths(vector<boost::filesystem::path> dcps)
{
_dcp_paths = dcps;
setup_sensitivity();
@@ -242,22 +248,22 @@ private:
return _dcp_paths;
}
- void sized (wxSizeEvent& ev)
+ void sized(wxSizeEvent& ev)
{
- _sizer->Layout ();
- ev.Skip ();
+ _sizer->Layout();
+ ev.Skip();
}
#ifdef DCPOMATIC_OSX
void uninstall()
{
- system(String::compose("osascript \"%1/uninstall_disk.applescript\"", resources_path().string()).c_str());
+ system(fmt::format("osascript \"{}/uninstall_disk.applescript\"", resources_path().string()).c_str());
}
#endif
- bool should_close ()
+ bool should_close()
{
if (!JobManager::instance()->work_to_do()) {
return true;
@@ -274,28 +280,28 @@ private:
}
- void close (wxCloseEvent& ev)
+ void close(wxCloseEvent& ev)
{
if (!should_close()) {
- ev.Veto ();
+ ev.Veto();
return;
}
- ev.Skip ();
- JobManager::drop ();
+ ev.Skip();
+ JobManager::drop();
}
- void copy ()
+ void copy()
{
/* Check that the selected drive still exists and update its properties if so */
- drive_refresh ();
+ drive_refresh();
if (_drive->GetSelection() == wxNOT_FOUND) {
- error_dialog (this, _("The disk you selected is no longer available. Please choose another."));
+ error_dialog(this, _("The disk you selected is no longer available. Please choose another."));
return;
}
- DCPOMATIC_ASSERT (_drive->GetSelection() != wxNOT_FOUND);
- DCPOMATIC_ASSERT (!_dcp_paths.empty());
+ DCPOMATIC_ASSERT(_drive->GetSelection() != wxNOT_FOUND);
+ DCPOMATIC_ASSERT(!_dcp_paths.empty());
auto ping = [this](int attempt) {
if (_nanomsg.send(DISK_WRITER_PING "\n", 1000)) {
@@ -303,14 +309,14 @@ private:
if (reply && reply->type() == DiskWriterBackEndResponse::Type::PONG) {
return true;
} else if (reply) {
- LOG_DISK("Unexpected response %1 to ping received (attempt %2)", static_cast<int>(reply->type()), attempt);
+ LOG_DISK("Unexpected response {} to ping received (attempt {})", static_cast<int>(reply->type()), attempt);
} else {
- LOG_DISK("No reply received from ping (attempt %1)", attempt);
+ LOG_DISK("No reply received from ping (attempt {})", attempt);
}
} else {
- LOG_DISK("Could not send ping to writer (attempt %1)", attempt);
+ LOG_DISK("Could not send ping to writer (attempt {})", attempt);
}
- dcpomatic_sleep_seconds (1);
+ dcpomatic_sleep_seconds(1);
return false;
};
@@ -340,8 +346,8 @@ private:
dialog.ShowModal();
return;
#else
- LOG_DISK_NC ("Failed to ping writer");
- throw CommunicationFailedError ();
+ LOG_DISK("Failed to ping writer");
+ throw CommunicationFailedError();
#endif
}
@@ -353,14 +359,14 @@ private:
return;
}
- LOG_DISK("Sending unmount request to disk writer for %1", drive.as_xml());
+ LOG_DISK("Sending unmount request to disk writer for {}", drive.as_xml());
if (!_nanomsg.send(DISK_WRITER_UNMOUNT "\n", 2000)) {
- LOG_DISK_NC("Failed to send unmount request.");
- throw CommunicationFailedError ();
+ LOG_DISK("Failed to send unmount request.");
+ throw CommunicationFailedError();
}
if (!_nanomsg.send(drive.as_xml(), 2000)) {
- LOG_DISK_NC("Failed to send drive for unmount request.");
- throw CommunicationFailedError ();
+ LOG_DISK("Failed to send drive for unmount request.");
+ throw CommunicationFailedError();
}
/* The reply may have to wait for the user to authenticate, so let's wait a while */
auto const reply = DiskWriterBackEndResponse::read_from_nanomsg(_nanomsg, 30000);
@@ -390,20 +396,20 @@ private:
}
JobManager::instance()->add(make_shared<CopyToDriveJob>(_dcp_paths, _drives[_drive->GetSelection()], _nanomsg));
- setup_sensitivity ();
+ setup_sensitivity();
}
- void drive_refresh ()
+ void drive_refresh()
{
- int const sel = _drive->GetSelection ();
+ int const sel = _drive->GetSelection();
wxString current;
if (sel != wxNOT_FOUND) {
- current = _drive->GetString (sel);
+ current = _drive->GetString(sel);
}
- _drive->Clear ();
+ _drive->Clear();
int re_select = wxNOT_FOUND;
int j = 0;
- _drives = Drive::get ();
+ _drives = Drive::get();
for (auto i: _drives) {
auto const s = std_to_wx(i.description());
if (s == current) {
@@ -412,13 +418,13 @@ private:
_drive->Append(s);
++j;
}
- _drive->SetSelection (re_select);
- setup_sensitivity ();
+ _drive->SetSelection(re_select);
+ setup_sensitivity();
}
- void setup_sensitivity ()
+ void setup_sensitivity()
{
- _copy->Enable (!_dcp_paths.empty() && _drive->GetSelection() != wxNOT_FOUND && !JobManager::instance()->work_to_do());
+ _copy->Enable(!_dcp_paths.empty() && _drive->GetSelection() != wxNOT_FOUND && !JobManager::instance()->work_to_do());
}
wxChoice* _drive;
@@ -428,7 +434,12 @@ private:
std::vector<boost::filesystem::path> _dcp_paths;
std::vector<Drive> _drives;
#ifndef DCPOMATIC_OSX
+#ifdef DCPOMATIC_BOOST_PROCESS_V1
boost::process::child* _writer;
+#else
+ boost::process::v2::process* _writer;
+ boost::asio::io_context _context;
+#endif
#endif
Nanomsg _nanomsg;
wxSizer* _sizer;
@@ -438,22 +449,22 @@ private:
static const wxCmdLineEntryDesc command_line_description[] = {
{ wxCMD_LINE_OPTION, "d", "dcp", "DCP to write", wxCMD_LINE_VAL_STRING, wxCMD_LINE_PARAM_OPTIONAL },
{ wxCMD_LINE_SWITCH, "s", "sure", "skip alpha test warnings", wxCMD_LINE_VAL_NONE, wxCMD_LINE_PARAM_OPTIONAL },
- { wxCMD_LINE_NONE, "", "", "", wxCmdLineParamType (0), 0 }
+ { wxCMD_LINE_NONE, "", "", "", wxCmdLineParamType(0), 0 }
};
class App : public wxApp
{
public:
- App ()
- : _frame (nullptr)
+ App()
+ : _frame(nullptr)
{}
- bool OnInit () override
+ bool OnInit() override
{
try {
- Config::FailedToLoad.connect (boost::bind (&App::config_failed_to_load, this));
- Config::Warning.connect (boost::bind (&App::config_warning, this, _1));
+ Config::FailedToLoad.connect(boost::bind(&App::config_failed_to_load, this));
+ Config::Warning.connect(boost::bind(&App::config_warning, this, _1));
SetAppName(variant::wx::dcpomatic_disk_writer());
@@ -462,15 +473,15 @@ public:
}
#ifdef DCPOMATIC_LINUX
- unsetenv ("UBUNTU_MENUPROXY");
+ unsetenv("UBUNTU_MENUPROXY");
#endif
#ifdef DCPOMATIC_OSX
- dcpomatic_sleep_seconds (1);
- make_foreground_application ();
+ dcpomatic_sleep_seconds(1);
+ make_foreground_application();
#endif
- dcpomatic_setup_path_encoding ();
+ dcpomatic_setup_path_encoding();
/* Enable i18n; this will create a Config object
to look for a force-configured language. This Config
@@ -483,24 +494,24 @@ public:
/* Set things up, including filters etc.
which will now be internationalised correctly.
*/
- dcpomatic_setup ();
+ dcpomatic_setup();
/* Force the configuration to be re-loaded correctly next
time it is needed.
*/
- Config::drop ();
+ Config::drop();
_frame = new DOMFrame(variant::wx::dcpomatic_disk_writer());
- SetTopWindow (_frame);
+ SetTopWindow(_frame);
- _frame->Show ();
+ _frame->Show();
if (_dcp_to_write) {
_frame->set_dcp_paths({*_dcp_to_write});
}
- signal_manager = new wxSignalManager (this);
- Bind (wxEVT_IDLE, boost::bind (&App::idle, this, _1));
+ signal_manager = new wxSignalManager(this);
+ Bind(wxEVT_IDLE, boost::bind(&App::idle, this, _1));
}
catch (exception& e)
{
@@ -511,46 +522,46 @@ public:
return true;
}
- void OnInitCmdLine (wxCmdLineParser& parser) override
+ void OnInitCmdLine(wxCmdLineParser& parser) override
{
- parser.SetDesc (command_line_description);
+ parser.SetDesc(command_line_description);
parser.SetSwitchChars(char_to_wx("-"));
}
- bool OnCmdLineParsed (wxCmdLineParser& parser) override
+ bool OnCmdLineParsed(wxCmdLineParser& parser) override
{
wxString dcp;
if (parser.Found(char_to_wx("dcp"), &dcp)) {
- _dcp_to_write = wx_to_std (dcp);
+ _dcp_to_write = wx_to_std(dcp);
}
return true;
}
- void config_failed_to_load ()
+ void config_failed_to_load()
{
- message_dialog (_frame, _("The existing configuration failed to load. Default values will be used instead. These may take a short time to create."));
+ message_dialog(_frame, _("The existing configuration failed to load. Default values will be used instead. These may take a short time to create."));
}
- void config_warning (string m)
+ void config_warning(string m)
{
- message_dialog (_frame, std_to_wx(m));
+ message_dialog(_frame, std_to_wx(m));
}
- void idle (wxIdleEvent& ev)
+ void idle(wxIdleEvent& ev)
{
- signal_manager->ui_idle ();
- ev.Skip ();
+ signal_manager->ui_idle();
+ ev.Skip();
}
- void report_exception ()
+ void report_exception()
{
try {
throw;
} catch (FileError& e) {
- error_dialog (
+ error_dialog(
0,
- wxString::Format (
+ wxString::Format(
_("An exception occurred: %s (%s)\n\n%s"),
std_to_wx(e.what()),
std_to_wx(e.file().string().c_str()),
@@ -558,9 +569,9 @@ public:
)
);
} catch (exception& e) {
- error_dialog (
+ error_dialog(
0,
- wxString::Format (
+ wxString::Format(
_("An exception occurred: %s.\n\n%s"),
std_to_wx(e.what()),
dcpomatic::wx::report_problem()
@@ -571,20 +582,20 @@ public:
}
}
- bool OnExceptionInMainLoop () override
+ bool OnExceptionInMainLoop() override
{
- report_exception ();
+ report_exception();
/* This will terminate the program */
return false;
}
- void OnUnhandledException () override
+ void OnUnhandledException() override
{
- report_exception ();
+ report_exception();
}
DOMFrame* _frame;
boost::optional<boost::filesystem::path> _dcp_to_write;
};
-IMPLEMENT_APP (App)
+IMPLEMENT_APP(App)
diff --git a/src/tools/dcpomatic_disk_writer.cc b/src/tools/dcpomatic_disk_writer.cc
index 3bb6fcd3f..4c0042d53 100644
--- a/src/tools/dcpomatic_disk_writer.cc
+++ b/src/tools/dcpomatic_disk_writer.cc
@@ -19,7 +19,6 @@
*/
-#include "lib/compose.hpp"
#include "lib/cross.h"
#include "lib/dcpomatic_log.h"
#include "lib/digester.h"
@@ -100,7 +99,7 @@ polkit_callback (GObject *, GAsyncResult* res, gpointer data)
bool failed = false;
if (error) {
- LOG_DISK("polkit authority check failed (check_authorization_finish failed with %1)", error->message);
+ LOG_DISK("polkit authority check failed (check_authorization_finish failed with {})", error->message);
failed = true;
} else {
if (polkit_authorization_result_get_is_authorized(result)) {
@@ -108,9 +107,9 @@ polkit_callback (GObject *, GAsyncResult* res, gpointer data)
} else {
failed = true;
if (polkit_authorization_result_get_is_challenge(result)) {
- LOG_DISK_NC("polkit authority check failed (challenge)");
+ LOG_DISK("polkit authority check failed (challenge)");
} else {
- LOG_DISK_NC("polkit authority check failed (not authorized)");
+ LOG_DISK("polkit authority check failed (not authorized)");
}
}
}
@@ -159,7 +158,7 @@ try
return true;
}
- LOG_DISK("Writer receives command: %1", *s);
+ LOG_DISK("Writer receives command: {}", *s);
if (*s == DISK_WRITER_QUIT) {
exit (EXIT_SUCCESS);
@@ -169,7 +168,7 @@ try
auto xml_head = nanomsg->receive (LONG_TIMEOUT);
auto xml_body = nanomsg->receive (LONG_TIMEOUT);
if (!xml_head || !xml_body) {
- LOG_DISK_NC("Failed to receive unmount request");
+ LOG_DISK("Failed to receive unmount request");
throw CommunicationFailedError ();
}
auto xml = *xml_head + *xml_body;
@@ -184,20 +183,20 @@ try
sent_reply = DiskWriterBackEndResponse::error("Could not unmount drive", 1, 0).write_to_nanomsg(*nanomsg, LONG_TIMEOUT);
}
if (!sent_reply) {
- LOG_DISK_NC("CommunicationFailedError in unmount_finished");
+ LOG_DISK("CommunicationFailedError in unmount_finished");
throw CommunicationFailedError ();
}
},
[]() {
if (!DiskWriterBackEndResponse::error("Could not get permission to unmount drive", 1, 0).write_to_nanomsg(*nanomsg, LONG_TIMEOUT)) {
- LOG_DISK_NC("CommunicationFailedError in unmount_finished");
+ LOG_DISK("CommunicationFailedError in unmount_finished");
throw CommunicationFailedError ();
}
});
} else if (*s == DISK_WRITER_WRITE) {
auto device_opt = nanomsg->receive (LONG_TIMEOUT);
if (!device_opt) {
- LOG_DISK_NC("Failed to receive write request");
+ LOG_DISK("Failed to receive write request");
throw CommunicationFailedError();
}
auto device = *device_opt;
@@ -206,7 +205,7 @@ try
while (true) {
auto dcp_path_opt = nanomsg->receive (LONG_TIMEOUT);
if (!dcp_path_opt) {
- LOG_DISK_NC("Failed to receive write request");
+ LOG_DISK("Failed to receive write request");
throw CommunicationFailedError();
}
if (*dcp_path_opt != "") {
@@ -220,21 +219,21 @@ try
#ifdef DCPOMATIC_OSX
if (!starts_with(device, "/dev/disk")) {
- LOG_DISK ("Will not write to %1", device);
+ LOG_DISK ("Will not write to {}", device);
DiskWriterBackEndResponse::error("Refusing to write to this drive", 1, 0).write_to_nanomsg(*nanomsg, LONG_TIMEOUT);
return true;
}
#endif
#ifdef DCPOMATIC_LINUX
if (!starts_with(device, "/dev/sd") && !starts_with(device, "/dev/hd")) {
- LOG_DISK ("Will not write to %1", device);
+ LOG_DISK ("Will not write to {}", device);
DiskWriterBackEndResponse::error("Refusing to write to this drive", 1, 0).write_to_nanomsg(*nanomsg, LONG_TIMEOUT);
return true;
}
#endif
#ifdef DCPOMATIC_WINDOWS
if (!starts_with(device, "\\\\.\\PHYSICALDRIVE")) {
- LOG_DISK ("Will not write to %1", device);
+ LOG_DISK ("Will not write to {}", device);
DiskWriterBackEndResponse::error("Refusing to write to this drive", 1, 0).write_to_nanomsg(*nanomsg, LONG_TIMEOUT);
return true;
}
@@ -250,19 +249,19 @@ try
}
if (!on_drive_list) {
- LOG_DISK ("Will not write to %1 as it's not recognised as a drive", device);
+ LOG_DISK ("Will not write to {} as it's not recognised as a drive", device);
DiskWriterBackEndResponse::error("Refusing to write to this drive", 1, 0).write_to_nanomsg(*nanomsg, LONG_TIMEOUT);
return true;
}
if (mounted) {
- LOG_DISK ("Will not write to %1 as it's mounted", device);
+ LOG_DISK ("Will not write to {} as it's mounted", device);
DiskWriterBackEndResponse::error("Refusing to write to this drive", 1, 0).write_to_nanomsg(*nanomsg, LONG_TIMEOUT);
return true;
}
- LOG_DISK("Here we go writing these to %1", device);
+ LOG_DISK("Here we go writing these to {}", device);
for (auto dcp: dcp_paths) {
- LOG_DISK(" %1", dcp);
+ LOG_DISK(" {}", dcp.string());
}
request_privileges (
@@ -293,7 +292,7 @@ try
return true;
} catch (exception& e) {
- LOG_DISK("Exception (from idle): %1", e.what());
+ LOG_DISK("Exception (from idle): {}", e.what());
return true;
}
@@ -308,13 +307,13 @@ main ()
* redirect this to a file in /var/log
*/
dcpomatic_log.reset(new StdoutLog(LogEntry::TYPE_DISK));
- LOG_DISK("dcpomatic_disk_writer %1 started uid=%2 euid=%3", dcpomatic_git_commit, getuid(), geteuid());
+ LOG_DISK("dcpomatic_disk_writer {} started uid={} euid={}", dcpomatic_git_commit, getuid(), geteuid());
#else
/* XXX: this is a hack, but I expect we'll need logs and I'm not sure if there's
* a better place to put them.
*/
dcpomatic_log.reset(new FileLog(State::write_path("disk_writer.log"), LogEntry::TYPE_DISK));
- LOG_DISK_NC("dcpomatic_disk_writer started");
+ LOG_DISK("dcpomatic_disk_writer started");
#endif
#ifdef DCPOMATIC_OSX
@@ -327,11 +326,11 @@ main ()
try {
nanomsg = new Nanomsg (false);
} catch (runtime_error& e) {
- LOG_DISK_NC("Could not set up nanomsg socket");
+ LOG_DISK("Could not set up nanomsg socket");
exit (EXIT_FAILURE);
}
- LOG_DISK_NC("Entering main loop");
+ LOG_DISK("Entering main loop");
auto ml = Glib::MainLoop::create ();
Glib::signal_timeout().connect(sigc::ptr_fun(&idle), 500);
ml->run ();
diff --git a/src/tools/dcpomatic_editor.cc b/src/tools/dcpomatic_editor.cc
index 1cb79681d..1ed7c940f 100644
--- a/src/tools/dcpomatic_editor.cc
+++ b/src/tools/dcpomatic_editor.cc
@@ -21,6 +21,7 @@
#include "wx/about_dialog.h"
#include "wx/dcpomatic_spin_ctrl.h"
+#include "wx/dir_dialog.h"
#include "wx/editable_list.h"
#include "wx/i18n_setup.h"
#include "wx/id.h"
@@ -87,12 +88,12 @@ public:
++r;
add_label_to_sizer(sizer, this, _("Entry point"), true, wxGBPosition(r, 0));
- _entry_point = new SpinCtrl(this, DCPOMATIC_SPIN_CTRL_WIDTH);
+ _entry_point = new SpinCtrl(this);
sizer->Add(_entry_point, wxGBPosition(r, 1), wxDefaultSpan);
++r;
add_label_to_sizer(sizer, this, _("Duration"), true, wxGBPosition(r, 0));
- _duration = new SpinCtrl(this, DCPOMATIC_SPIN_CTRL_WIDTH);
+ _duration = new SpinCtrl(this);
sizer->Add(_duration, wxGBPosition(r, 1), wxDefaultSpan);
++r;
@@ -221,13 +222,15 @@ public:
++r;
add_label_to_sizer(sizer, this, _("Reels"), true, wxGBPosition(r, 0));
- _reels = new EditableList<shared_ptr<dcp::Reel>, ReelEditor>(
+ _reels = new EditableList<shared_ptr<dcp::Reel>>(
this,
{ EditableListColumn(_("Name"), 600, true) },
[this]() { return _cpl->reels(); },
[this](vector<shared_ptr<dcp::Reel>> reels) {
_cpl->set(reels);
},
+ EditableList<shared_ptr<dcp::Reel>>::add_with_dialog<ReelEditor>,
+ EditableList<shared_ptr<dcp::Reel>>::edit_with_dialog<ReelEditor>,
[](shared_ptr<dcp::Reel> reel, int) {
return reel->id();
},
@@ -272,7 +275,7 @@ private:
wxTextCtrl* _issuer = nullptr;
wxTextCtrl* _creator = nullptr;
wxTextCtrl* _content_title_text = nullptr;
- EditableList<shared_ptr<dcp::Reel>, ReelEditor>* _reels;
+ EditableList<shared_ptr<dcp::Reel>>* _reels;
};
@@ -371,6 +374,8 @@ public:
SetIcon(wxIcon(std_to_wx("id")));
#endif
+ Config::instance()->Changed.connect(boost::bind(&DOMFrame::config_changed, this));
+
Bind(wxEVT_MENU, boost::bind(&DOMFrame::file_open, this), ID_file_open);
Bind(wxEVT_MENU, boost::bind(&DOMFrame::file_save, this), ID_file_save);
Bind(wxEVT_MENU, boost::bind(&DOMFrame::file_exit, this), wxID_EXIT);
@@ -410,6 +415,12 @@ public:
}
private:
+ void config_changed()
+ {
+ try {
+ Config::instance()->write_config();
+ } catch (exception& e) {}
+ }
void setup_menu (wxMenuBar* m)
{
@@ -437,28 +448,26 @@ private:
void file_open ()
{
- auto d = wxStandardPaths::Get().GetDocumentsDir();
- wxDirDialog dialog(this, _("Select DCP to open"), d, wxDEFAULT_DIALOG_STYLE | wxDD_DIR_MUST_EXIST);
+ DirDialog dialog(this, _("Select DCP to open"), wxDEFAULT_DIALOG_STYLE | wxDD_DIR_MUST_EXIST, "AddEditorInputPath");
- int r;
+ bool r;
while (true) {
- r = dialog.ShowModal();
- if (r == wxID_OK && dialog.GetPath() == wxStandardPaths::Get().GetDocumentsDir()) {
+ r = dialog.show();
+ if (r && dialog.GetPath() == wxStandardPaths::Get().GetDocumentsDir()) {
error_dialog (this, _("You did not select a folder. Make sure that you select a folder before clicking Open."));
} else {
break;
}
}
- if (r == wxID_OK) {
- boost::filesystem::path const dcp(wx_to_std(dialog.GetPath()));
- load_dcp (dcp);
+ if (r) {
+ load_dcp(dialog.path());
}
}
void file_save ()
{
- _dcp->write_xml();
+ _dcp->write_xml(Config::instance()->signer_chain(), dcp::Filenames::ORIGINAL);
}
void file_exit ()
diff --git a/src/tools/dcpomatic_kdm.cc b/src/tools/dcpomatic_kdm.cc
index 843684103..31b40cfb7 100644
--- a/src/tools/dcpomatic_kdm.cc
+++ b/src/tools/dcpomatic_kdm.cc
@@ -42,7 +42,6 @@
#include "wx/wx_variant.h"
#include "lib/cinema.h"
#include "lib/collator.h"
-#include "lib/compose.hpp"
#include "lib/constants.h"
#include "lib/config.h"
#include "lib/cross.h"
@@ -131,7 +130,7 @@ public:
setvbuf(hf_in, NULL, _IONBF, 128);
*stdin = *hf_in;
- std::cout << variant::insert_dcpomatic_kdm_creator("%1 is starting.\n");
+ std::cout << variant::insert_dcpomatic_kdm_creator("{} is starting.\n");
}
#endif
@@ -835,7 +834,6 @@ private:
void screens_changed()
{
- _timing->suggest_utc_offset(_screens->best_utc_offset());
setup_sensitivity();
}
diff --git a/src/tools/dcpomatic_player.cc b/src/tools/dcpomatic_player.cc
index 60d6911ef..415dbf3ba 100644
--- a/src/tools/dcpomatic_player.cc
+++ b/src/tools/dcpomatic_player.cc
@@ -19,6 +19,7 @@
*/
#include "wx/about_dialog.h"
+#include "wx/audio_dialog.h"
#include "wx/file_dialog.h"
#include "wx/film_viewer.h"
#include "wx/i18n_setup.h"
@@ -38,9 +39,10 @@
#include "wx/wx_signal_manager.h"
#include "wx/wx_util.h"
#include "wx/wx_variant.h"
-#include "lib/compose.hpp"
+#include "lib/audio_content.h"
#include "lib/config.h"
#include "lib/constants.h"
+#include "lib/copy_dcp_details_to_film.h"
#include "lib/cross.h"
#include "lib/dcp_content.h"
#include "lib/dcp_examiner.h"
@@ -143,6 +145,7 @@ enum {
ID_view_scale_quarter,
ID_help_report_a_problem,
ID_tools_verify,
+ ID_tools_audio_graph,
ID_tools_check_for_updates,
ID_tools_timing,
ID_tools_system_information,
@@ -202,81 +205,82 @@ public:
};
- DOMFrame ()
+ DOMFrame()
: wxFrame(nullptr, -1, variant::wx::dcpomatic_player())
- , _mode (Config::instance()->player_mode())
+ , _mode(Config::instance()->player_mode())
/* Use a panel as the only child of the Frame so that we avoid
the dark-grey background on Windows.
*/
, _overall_panel(new wxPanel(this, wxID_ANY))
- , _viewer(_overall_panel)
- , _main_sizer (new wxBoxSizer(wxVERTICAL))
+ , _viewer(_overall_panel, true)
+ , _main_sizer(new wxBoxSizer(wxVERTICAL))
{
dcpomatic_log = make_shared<NullLog>();
#if defined(DCPOMATIC_WINDOWS)
- maybe_open_console ();
+ maybe_open_console();
cout << variant::dcpomatic_player() << " is starting." << "\n";
#endif
auto bar = new wxMenuBar;
- setup_menu (bar);
- set_menu_sensitivity ();
- SetMenuBar (bar);
+ setup_menu(bar);
+ set_menu_sensitivity();
+ SetMenuBar(bar);
#ifdef DCPOMATIC_WINDOWS
- SetIcon (wxIcon (std_to_wx ("id")));
+ SetIcon(wxIcon(std_to_wx("id")));
#endif
- _config_changed_connection = Config::instance()->Changed.connect (boost::bind (&DOMFrame::config_changed, this, _1));
- update_from_config (Config::PLAYER_DEBUG_LOG);
-
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::file_open, this), ID_file_open);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::file_add_ov, this), ID_file_add_ov);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::file_add_kdm, this), ID_file_add_kdm);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::file_save_frame, this), ID_file_save_frame);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::file_history, this, _1), ID_file_history, ID_file_history + HISTORY_SIZE);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::file_close, this), ID_file_close);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::file_exit, this), wxID_EXIT);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::edit_preferences, this), wxID_PREFERENCES);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::view_full_screen, this), ID_view_full_screen);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::view_dual_screen, this), ID_view_dual_screen);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::view_closed_captions, this), ID_view_closed_captions);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::view_cpl, this, _1), ID_view_cpl, ID_view_cpl + MAX_CPLS);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::view_eye_changed, this, _1), ID_view_eye_left);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::view_eye_changed, this, _1), ID_view_eye_right);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::set_decode_reduction, this, optional<int>(0)), ID_view_scale_full);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::set_decode_reduction, this, optional<int>(1)), ID_view_scale_half);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::set_decode_reduction, this, optional<int>(2)), ID_view_scale_quarter);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::help_about, this), wxID_ABOUT);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::help_report_a_problem, this), ID_help_report_a_problem);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::tools_verify, this), ID_tools_verify);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::tools_check_for_updates, this), ID_tools_check_for_updates);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::tools_timing, this), ID_tools_timing);
- Bind (wxEVT_MENU, boost::bind (&DOMFrame::tools_system_information, this), ID_tools_system_information);
+ _config_changed_connection = Config::instance()->Changed.connect(boost::bind(&DOMFrame::config_changed, this, _1));
+ update_from_config(Config::PLAYER_DEBUG_LOG);
+
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::file_open, this), ID_file_open);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::file_add_ov, this), ID_file_add_ov);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::file_add_kdm, this), ID_file_add_kdm);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::file_save_frame, this), ID_file_save_frame);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::file_history, this, _1), ID_file_history, ID_file_history + HISTORY_SIZE);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::file_close, this), ID_file_close);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::file_exit, this), wxID_EXIT);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::edit_preferences, this), wxID_PREFERENCES);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::view_full_screen, this), ID_view_full_screen);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::view_dual_screen, this), ID_view_dual_screen);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::view_closed_captions, this), ID_view_closed_captions);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::view_cpl, this, _1), ID_view_cpl, ID_view_cpl + MAX_CPLS);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::view_eye_changed, this, _1), ID_view_eye_left);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::view_eye_changed, this, _1), ID_view_eye_right);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::set_decode_reduction, this, optional<int>(0)), ID_view_scale_full);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::set_decode_reduction, this, optional<int>(1)), ID_view_scale_half);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::set_decode_reduction, this, optional<int>(2)), ID_view_scale_quarter);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::help_about, this), wxID_ABOUT);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::help_report_a_problem, this), ID_help_report_a_problem);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::tools_verify, this), ID_tools_verify);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::tools_audio_graph, this), ID_tools_audio_graph);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::tools_check_for_updates, this), ID_tools_check_for_updates);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::tools_timing, this), ID_tools_timing);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::tools_system_information, this), ID_tools_system_information);
Bind(wxEVT_CLOSE_WINDOW, boost::bind(&DOMFrame::close, this, _1));
if (Config::instance()->player_mode() == Config::PlayerMode::DUAL) {
- auto pc = new PlaylistControls (_overall_panel, _viewer);
+ auto pc = new PlaylistControls(_overall_panel, _viewer);
_controls = pc;
- pc->ResetFilm.connect (bind(&DOMFrame::reset_film_weak, this, _1));
+ pc->ResetFilm.connect(bind(&DOMFrame::reset_film_weak, this, _1, _2));
} else {
- _controls = new StandardControls (_overall_panel, _viewer, false);
+ _controls = new StandardControls(_overall_panel, _viewer, false);
}
_controls->set_film(_viewer.film());
_viewer.set_dcp_decode_reduction(Config::instance()->decode_reduction());
_viewer.PlaybackPermitted.connect(bind(&DOMFrame::playback_permitted, this));
_viewer.TooManyDropped.connect(bind(&DOMFrame::too_many_frames_dropped, this));
- _info = new PlayerInformation (_overall_panel, _viewer);
- setup_main_sizer (Config::instance()->player_mode());
+ _info = new PlayerInformation(_overall_panel, _viewer);
+ setup_main_sizer(Config::instance()->player_mode());
#ifdef __WXOSX__
int accelerators = 12;
#else
int accelerators = 11;
#endif
- _stress.setup (this, _controls);
+ _stress.setup(this, _controls);
std::vector<wxAcceleratorEntry> accel(accelerators);
accel[0].Set(wxACCEL_NORMAL, WXK_SPACE, ID_start_stop);
@@ -293,27 +297,27 @@ public:
#ifdef __WXOSX__
accel[11].Set(wxACCEL_CTRL, static_cast<int>('W'), ID_file_close);
#endif
- wxAcceleratorTable accel_table (accelerators, accel.data());
- SetAcceleratorTable (accel_table);
+ wxAcceleratorTable accel_table(accelerators, accel.data());
+ SetAcceleratorTable(accel_table);
- Bind (wxEVT_MENU, boost::bind(&DOMFrame::start_stop_pressed, this), ID_start_stop);
- Bind (wxEVT_MENU, boost::bind(&DOMFrame::go_back_frame, this), ID_go_back_frame);
- Bind (wxEVT_MENU, boost::bind(&DOMFrame::go_forward_frame, this), ID_go_forward_frame);
- Bind (wxEVT_MENU, boost::bind(&DOMFrame::go_seconds, this, -60), ID_go_back_small_amount);
- Bind (wxEVT_MENU, boost::bind(&DOMFrame::go_seconds, this, 60), ID_go_forward_small_amount);
- Bind (wxEVT_MENU, boost::bind(&DOMFrame::go_seconds, this, -600), ID_go_back_medium_amount);
- Bind (wxEVT_MENU, boost::bind(&DOMFrame::go_seconds, this, 600), ID_go_forward_medium_amount);
- Bind (wxEVT_MENU, boost::bind(&DOMFrame::go_seconds, this, -3600), ID_go_back_large_amount);
- Bind (wxEVT_MENU, boost::bind(&DOMFrame::go_seconds, this, 3600), ID_go_forward_large_amount);
- Bind (wxEVT_MENU, boost::bind(&DOMFrame::go_to_start, this), ID_go_to_start);
- Bind (wxEVT_MENU, boost::bind(&DOMFrame::go_to_end, this), ID_go_to_end);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::start_stop_pressed, this), ID_start_stop);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::go_back_frame, this), ID_go_back_frame);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::go_forward_frame, this), ID_go_forward_frame);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::go_seconds, this, -60), ID_go_back_small_amount);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::go_seconds, this, 60), ID_go_forward_small_amount);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::go_seconds, this, -600), ID_go_back_medium_amount);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::go_seconds, this, 600), ID_go_forward_medium_amount);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::go_seconds, this, -3600), ID_go_back_large_amount);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::go_seconds, this, 3600), ID_go_forward_large_amount);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::go_to_start, this), ID_go_to_start);
+ Bind(wxEVT_MENU, boost::bind(&DOMFrame::go_to_end, this), ID_go_to_end);
- reset_film ();
+ reset_film();
- UpdateChecker::instance()->StateChanged.connect (boost::bind(&DOMFrame::update_checker_state_changed, this));
- setup_screen ();
+ UpdateChecker::instance()->StateChanged.connect(boost::bind(&DOMFrame::update_checker_state_changed, this));
+ setup_screen();
- _stress.LoadDCP.connect (boost::bind(&DOMFrame::load_dcp, this, _1));
+ _stress.LoadDCP.connect(boost::bind(&DOMFrame::load_dcp, this, _1));
setup_internal_player_server();
setup_http_server();
@@ -321,7 +325,7 @@ public:
SetDropTarget(new DCPDropTarget(this));
}
- ~DOMFrame ()
+ ~DOMFrame()
{
try {
stop_http_server();
@@ -330,9 +334,9 @@ public:
*/
_viewer.stop();
} catch (std::exception& e) {
- LOG_ERROR("Destructor threw %1", e.what());
+ LOG_ERROR("Destructor threw {}", e.what());
} catch (...) {
- LOG_ERROR_NC("Destructor threw");
+ LOG_ERROR("Destructor threw");
}
}
@@ -342,21 +346,21 @@ public:
ev.Skip();
}
- void setup_main_sizer (Config::PlayerMode mode)
+ void setup_main_sizer(Config::PlayerMode mode)
{
_main_sizer->Detach(_viewer.panel());
- _main_sizer->Detach (_controls);
- _main_sizer->Detach (_info);
+ _main_sizer->Detach(_controls);
+ _main_sizer->Detach(_info);
if (mode != Config::PlayerMode::DUAL) {
_main_sizer->Add(_viewer.panel(), 1, wxEXPAND);
}
- _main_sizer->Add (_controls, mode == Config::PlayerMode::DUAL ? 1 : 0, wxEXPAND | wxALL, 6);
- _main_sizer->Add (_info, 0, wxEXPAND | wxALL, 6);
- _overall_panel->SetSizer (_main_sizer);
- _overall_panel->Layout ();
+ _main_sizer->Add(_controls, mode == Config::PlayerMode::DUAL ? 1 : 0, wxEXPAND | wxALL, 6);
+ _main_sizer->Add(_info, 0, wxEXPAND | wxALL, 6);
+ _overall_panel->SetSizer(_main_sizer);
+ _overall_panel->Layout();
}
- bool playback_permitted ()
+ bool playback_permitted()
{
if (!_film || !Config::instance()->respect_kdm_validity_periods()) {
return true;
@@ -371,20 +375,20 @@ public:
}
if (!ok) {
- error_dialog (this, _("The KDM does not allow playback of this content at this time."));
+ error_dialog(this, _("The KDM does not allow playback of this content at this time."));
}
return ok;
}
- void too_many_frames_dropped ()
+ void too_many_frames_dropped()
{
if (!Config::instance()->nagged(Config::NAG_TOO_MANY_DROPPED_FRAMES)) {
_viewer.stop();
}
- NagDialog::maybe_nag (
+ NagDialog::maybe_nag(
this,
Config::NAG_TOO_MANY_DROPPED_FRAMES,
wxGetTranslation(
@@ -399,21 +403,21 @@ public:
);
}
- void set_decode_reduction (optional<int> reduction)
+ void set_decode_reduction(optional<int> reduction)
{
_viewer.set_dcp_decode_reduction(reduction);
- _info->triggered_update ();
- Config::instance()->set_decode_reduction (reduction);
+ _info->triggered_update();
+ Config::instance()->set_decode_reduction(reduction);
}
- void load_dcp (boost::filesystem::path dir)
+ void load_dcp(boost::filesystem::path dir)
{
- DCPOMATIC_ASSERT (_film);
+ DCPOMATIC_ASSERT(_film);
auto film = std::make_shared<Film>(optional<boost::filesystem::path>());
try {
- _stress.set_suspended (true);
+ _stress.set_suspended(true);
/* Handler to set things up once the DCP has been examined */
auto setup = [this](weak_ptr<Film> weak_film, weak_ptr<Job> weak_job, weak_ptr<Content> weak_content)
@@ -433,21 +437,21 @@ public:
return;
}
- film->add_content(content);
+ film->add_content({content});
_stress.set_suspended(false);
reset_film(film);
};
auto dcp = make_shared<DCPContent>(dir);
- auto job = make_shared<ExamineContentJob>(film, dcp, true);
+ auto job = make_shared<ExamineContentJob>(film, vector<shared_ptr<Content>>{dcp}, true);
_examine_job_connection = job->Finished.connect(boost::bind<void>(setup, weak_ptr<Film>(film), weak_ptr<Job>(job), weak_ptr<Content>(dcp)));
- JobManager::instance()->add (job);
+ JobManager::instance()->add(job);
bool const ok = display_progress(variant::wx::dcpomatic_player(), _("Loading content"));
if (ok && report_errors_from_last_job(this)) {
Config::instance()->add_to_player_history(dir);
}
} catch (ProjectFolderError &) {
- error_dialog (
+ error_dialog(
this,
wxString::Format(_("Could not load a DCP from %s"), std_to_wx(dir.string())),
wxString::Format(
@@ -458,36 +462,32 @@ public:
)
);
} catch (dcp::ReadError& e) {
- error_dialog (this, wxString::Format(_("Could not load a DCP from %s"), std_to_wx(dir.string())), std_to_wx(e.what()));
+ error_dialog(this, wxString::Format(_("Could not load a DCP from %s"), std_to_wx(dir.string())), std_to_wx(e.what()));
} catch (DCPError& e) {
- error_dialog (this, wxString::Format(_("Could not load a DCP from %s"), std_to_wx(dir.string())), std_to_wx(e.what()));
+ error_dialog(this, wxString::Format(_("Could not load a DCP from %s"), std_to_wx(dir.string())), std_to_wx(e.what()));
}
}
- void reset_film_weak (weak_ptr<Film> weak_film)
+ void reset_film_weak(weak_ptr<Film> weak_film, optional<float> crop_to_ratio)
{
- auto film = weak_film.lock ();
- if (film) {
- reset_film (film);
+ if (auto film = weak_film.lock()) {
+ reset_film(film, crop_to_ratio);
}
}
- void reset_film(shared_ptr<Film> film = std::make_shared<Film>(boost::none))
+ void reset_film(shared_ptr<Film> film = std::make_shared<Film>(boost::none), optional<float> crop_to_ratio = {})
{
_film = film;
- film_changed();
- _viewer.set_film(_film);
- _viewer.seek(DCPTime(), true);
- _viewer.set_eyes(_view_eye_left->IsChecked() ? Eyes::LEFT : Eyes::RIGHT);
- _info->triggered_update();
- set_menu_sensitivity();
+ if (!crop_to_ratio) {
+ crop_to_ratio = Config::instance()->player_crop_output_ratio();
+ }
- _controls->set_film (_film);
+ prepare_to_play_film(crop_to_ratio);
}
- /* Update anything that depends on properties of the film or its contents */
- void film_changed()
+ /* _film is now something new: set up to play it */
+ void prepare_to_play_film(optional<float> crop_to_ratio)
{
if (_viewer.playing()) {
_viewer.stop();
@@ -496,13 +496,15 @@ public:
/* Start off as Flat */
auto auto_ratio = Ratio::from_id("185");
- _film->set_audio_channels (MAX_DCP_AUDIO_CHANNELS);
+ _film->set_audio_channels(MAX_DCP_AUDIO_CHANNELS);
for (auto i: _film->content()) {
auto dcp = dynamic_pointer_cast<DCPContent>(i);
+ copy_dcp_markers_to_film(dcp, _film);
+
for (auto j: i->text) {
- j->set_use (true);
+ j->set_use(true);
}
if (i->video && i->video->size()) {
@@ -515,14 +517,14 @@ public:
/* Any 3D content means we use 3D mode */
if (i->video && i->video->frame_type() != VideoFrameType::TWO_D) {
- _film->set_three_d (true);
+ _film->set_three_d(true);
}
if (dcp->video_frame_rate()) {
- _film->set_video_frame_rate(dcp->video_frame_rate().get(), true);
+ _film->set_video_frame_rate(dcp->video_frame_rate().get());
}
- switch (dcp->video_encoding()) {
+ switch (dcp->video_encoding().get_value_or(VideoEncoding::JPEG2000)) {
case VideoEncoding::JPEG2000:
_viewer.set_optimisation(Optimisation::JPEG2000);
break;
@@ -534,13 +536,13 @@ public:
}
}
+ set_audio_delay_from_config();
+
auto old = _cpl_menu->GetMenuItems();
for (auto const& i: old) {
- _cpl_menu->Remove (i);
+ _cpl_menu->Remove(i);
}
- auto const crop = Config::instance()->player_crop_output_ratio();
-
if (_film->content().size() == 1) {
/* Offer a CPL menu */
auto first = dynamic_pointer_cast<DCPContent>(_film->content().front());
@@ -556,29 +558,50 @@ public:
}
}
- if (crop) {
+ if (crop_to_ratio) {
auto size = _film->content()[0]->video->size().get_value_or({1998, 1080});
int pixels = 0;
- if (*crop > (2048.0 / 1080.0)) {
- pixels = (size.height - (size.width / *crop)) / 2;
- _film->content()[0]->video->set_crop(Crop{0, 0, pixels, pixels});
+ if (*crop_to_ratio > (2048.0 / 1080.0)) {
+ pixels = (size.height - (size.width / *crop_to_ratio)) / 2;
+ _film->content()[0]->video->set_crop(Crop{0, 0, std::max(0, pixels), std::max(0, pixels)});
} else {
- pixels = (size.width - (size.height * *crop)) / 2;
- _film->content()[0]->video->set_crop(Crop{pixels, pixels, 0, 0});
+ pixels = (size.width - (size.height * *crop_to_ratio)) / 2;
+ _film->content()[0]->video->set_crop(Crop{std::max(0, pixels), std::max(0, pixels), 0, 0});
}
}
}
- if (crop) {
- _film->set_container(Ratio(*crop, "custom", "custom", {}, "custom"));
+ if (crop_to_ratio) {
+ _film->set_container(Ratio(*crop_to_ratio, "custom", "custom", {}, "custom"));
} else {
_film->set_container(auto_ratio);
}
+
+ _viewer.set_film(_film);
+ _viewer.seek(DCPTime(), true);
+ _viewer.set_eyes(_view_eye_left->IsChecked() ? Eyes::LEFT : Eyes::RIGHT);
+ _info->triggered_update();
+ set_menu_sensitivity();
+
+ _controls->set_film(_film);
+ }
+
+ void set_audio_delay_from_config()
+ {
+ if (!_film) {
+ return;
+ }
+
+ for (auto i: _film->content()) {
+ if (i->audio) {
+ i->audio->set_delay(Config::instance()->player_audio_delay());
+ }
+ }
}
- void load_stress_script (boost::filesystem::path path)
+ void load_stress_script(boost::filesystem::path path)
{
- _stress.load_script (path);
+ _stress.load_script(path);
}
void idle()
@@ -602,24 +625,24 @@ public:
private:
- void examine_content ()
+ void examine_content()
{
- DCPOMATIC_ASSERT (_film);
+ DCPOMATIC_ASSERT(_film);
auto dcp = dynamic_pointer_cast<DCPContent>(_film->content().front());
- DCPOMATIC_ASSERT (dcp);
+ DCPOMATIC_ASSERT(dcp);
dcp->examine(_film, {}, true);
/* Examining content re-creates the TextContent objects, so we must re-enable them */
for (auto i: dcp->text) {
- i->set_use (true);
+ i->set_use(true);
}
}
- bool report_errors_from_last_job (wxWindow* parent) const
+ bool report_errors_from_last_job(wxWindow* parent) const
{
- auto jm = JobManager::instance ();
+ auto jm = JobManager::instance();
- DCPOMATIC_ASSERT (!jm->get().empty());
+ DCPOMATIC_ASSERT(!jm->get().empty());
auto last = jm->get().back();
if (last->finished_in_error()) {
@@ -630,35 +653,35 @@ private:
return true;
}
- void setup_menu (wxMenuBar* m)
+ void setup_menu(wxMenuBar* m)
{
_file_menu = new wxMenu;
- _file_menu->Append (ID_file_open, _("&Open...\tCtrl-O"));
- _file_add_ov = _file_menu->Append (ID_file_add_ov, _("&Add OV..."));
- _file_add_kdm = _file_menu->Append (ID_file_add_kdm, _("Add &KDM..."));
- _file_menu->AppendSeparator ();
- _file_save_frame = _file_menu->Append (ID_file_save_frame, _("&Save frame to file...\tCtrl-S"));
+ _file_menu->Append(ID_file_open, _("&Open...\tCtrl-O"));
+ _file_add_ov = _file_menu->Append(ID_file_add_ov, _("&Add OV..."));
+ _file_add_kdm = _file_menu->Append(ID_file_add_kdm, _("Add &KDM..."));
+ _file_menu->AppendSeparator();
+ _file_save_frame = _file_menu->Append(ID_file_save_frame, _("&Save frame to file...\tCtrl-S"));
_history_position = _file_menu->GetMenuItems().GetCount();
- _file_menu->AppendSeparator ();
- _file_menu->Append (ID_file_close, _("&Close"));
- _file_menu->AppendSeparator ();
+ _file_menu->AppendSeparator();
+ _file_menu->Append(ID_file_close, _("&Close"));
+ _file_menu->AppendSeparator();
#ifdef __WXOSX__
- _file_menu->Append (wxID_EXIT, _("&Exit"));
+ _file_menu->Append(wxID_EXIT, _("&Exit"));
#else
- _file_menu->Append (wxID_EXIT, _("&Quit"));
+ _file_menu->Append(wxID_EXIT, _("&Quit"));
#endif
#ifdef __WXOSX__
auto prefs = _file_menu->Append(wxID_PREFERENCES, _("&Preferences...\tCtrl-,"));
#else
auto edit = new wxMenu;
- auto prefs = edit->Append (wxID_PREFERENCES, _("&Preferences...\tCtrl-P"));
+ auto prefs = edit->Append(wxID_PREFERENCES, _("&Preferences...\tCtrl-P"));
#endif
- prefs->Enable (Config::instance()->have_write_permission());
+ prefs->Enable(Config::instance()->have_write_permission());
_cpl_menu = new wxMenu;
@@ -668,7 +691,7 @@ private:
view->AppendSeparator();
_view_full_screen = view->AppendCheckItem(ID_view_full_screen, _("Full screen\tF11"));
_view_dual_screen = view->AppendCheckItem(ID_view_dual_screen, _("Dual screen\tShift+F11"));
- setup_menu ();
+ setup_menu();
view->AppendSeparator();
view->Append(ID_view_closed_captions, _("Closed captions..."));
_view_eye_menu = new wxMenu;
@@ -682,17 +705,18 @@ private:
view->AppendRadioItem(ID_view_scale_quarter, _("Decode at quarter resolution"))->Check(c && c.get() == 2);
auto tools = new wxMenu;
- _tools_verify = tools->Append (ID_tools_verify, _("Verify DCP..."));
- tools->AppendSeparator ();
- tools->Append (ID_tools_check_for_updates, _("Check for updates"));
- tools->Append (ID_tools_timing, _("Timing..."));
- tools->Append (ID_tools_system_information, _("System information..."));
+ _tools_verify = tools->Append(ID_tools_verify, _("Verify DCP..."));
+ _tools_audio_graph = tools->Append(ID_tools_audio_graph, _("Audio graph..."));
+ tools->AppendSeparator();
+ tools->Append(ID_tools_check_for_updates, _("Check for updates"));
+ tools->Append(ID_tools_timing, _("Timing..."));
+ tools->Append(ID_tools_system_information, _("System information..."));
auto help = new wxMenu;
#ifdef __WXOSX__
help->Append(wxID_ABOUT, variant::wx::insert_dcpomatic_player(_("About %s")));
#else
- help->Append (wxID_ABOUT, _("About"));
+ help->Append(wxID_ABOUT, _("About"));
#endif
if (variant::show_report_a_problem()) {
help->Append(ID_help_report_a_problem, _("Report a problem..."));
@@ -701,19 +725,19 @@ private:
m->Append (_file_menu, _("&File"));
if (!Config::instance()->player_restricted_menus()) {
#ifndef __WXOSX__
- m->Append (edit, _("&Edit"));
+ m->Append(edit, _("&Edit"));
#endif
- m->Append (view, _("&View"));
- m->Append (tools, _("&Tools"));
- m->Append (help, _("&Help"));
+ m->Append(view, _("&View"));
+ m->Append(tools, _("&Tools"));
+ m->Append(help, _("&Help"));
}
}
- void file_open ()
+ void file_open()
{
auto d = wxStandardPaths::Get().GetDocumentsDir();
if (Config::instance()->last_player_load_directory()) {
- d = std_to_wx (Config::instance()->last_player_load_directory()->string());
+ d = std_to_wx(Config::instance()->last_player_load_directory()->string());
}
wxDirDialog dialog(this, _("Select DCP to open"), d, wxDEFAULT_DIALOG_STYLE | wxDD_DIR_MUST_EXIST);
@@ -722,20 +746,20 @@ private:
while (true) {
r = dialog.ShowModal();
if (r == wxID_OK && dialog.GetPath() == wxStandardPaths::Get().GetDocumentsDir()) {
- error_dialog (this, _("You did not select a folder. Make sure that you select a folder before clicking Open."));
+ error_dialog(this, _("You did not select a folder. Make sure that you select a folder before clicking Open."));
} else {
break;
}
}
if (r == wxID_OK) {
- boost::filesystem::path const dcp(wx_to_std(dialog.GetPath ()));
- load_dcp (dcp);
- Config::instance()->set_last_player_load_directory (dcp.parent_path());
+ boost::filesystem::path const dcp(wx_to_std(dialog.GetPath()));
+ load_dcp(dcp);
+ Config::instance()->set_last_player_load_directory(dcp.parent_path());
}
}
- void file_add_ov ()
+ void file_add_ov()
{
auto initial_dir = wxStandardPaths::Get().GetDocumentsDir();
if (Config::instance()->last_player_load_directory()) {
@@ -753,7 +777,7 @@ private:
while (true) {
r = dialog.ShowModal();
if (r == wxID_OK && dialog.GetPath() == wxStandardPaths::Get().GetDocumentsDir()) {
- error_dialog (this, _("You did not select a folder. Make sure that you select a folder before clicking Open."));
+ error_dialog(this, _("You did not select a folder. Make sure that you select a folder before clicking Open."));
} else {
break;
}
@@ -772,17 +796,8 @@ private:
return;
}
- auto job = make_shared<ExamineContentJob>(_film, dcp, true);
-
- auto film_ready = [this]() {
- film_changed();
- _viewer.set_film(_film);
- _viewer.seek(DCPTime(), true);
- _info->triggered_update();
- set_menu_sensitivity();
- };
-
- _examine_job_connection = job->Finished.connect(boost::bind<void>(film_ready));
+ auto job = make_shared<ExamineContentJob>(_film, vector<shared_ptr<Content>>{dcp}, true);
+ _examine_job_connection = job->Finished.connect(boost::bind(&DOMFrame::prepare_to_play_film, this, Config::instance()->player_crop_output_ratio()));
JobManager::instance()->add(job);
display_progress(variant::wx::dcpomatic_player(), _("Loading content"));
@@ -790,14 +805,14 @@ private:
}
}
- void file_add_kdm ()
+ void file_add_kdm()
{
FileDialog dialog(this, _("Select KDM"), char_to_wx("XML files|*.xml|All files|*.*"), wxFD_MULTIPLE, "AddKDMPath");
if (dialog.show()) {
- DCPOMATIC_ASSERT (_film);
+ DCPOMATIC_ASSERT(_film);
auto dcp = std::dynamic_pointer_cast<DCPContent>(_film->content().front());
- DCPOMATIC_ASSERT (dcp);
+ DCPOMATIC_ASSERT(dcp);
try {
if (dcp) {
dcp::ScopeGuard sg([this]() {
@@ -811,34 +826,35 @@ private:
examine_content();
}
} catch (exception& e) {
- error_dialog (this, wxString::Format (_("Could not load KDM.")), std_to_wx(e.what()));
+ error_dialog(this, wxString::Format(_("Could not load KDM.")), std_to_wx(e.what()));
return;
}
}
- _info->triggered_update ();
+ _info->triggered_update();
+ set_menu_sensitivity();
}
- void file_save_frame ()
+ void file_save_frame()
{
- wxFileDialog dialog (this, _("Save frame to file"), {}, {}, char_to_wx("PNG files (*.png)|*.png|JPEG files (*.jpg;*.jpeg)|*.jpg;*.jpeg"), wxFD_SAVE | wxFD_OVERWRITE_PROMPT);
+ wxFileDialog dialog(this, _("Save frame to file"), {}, {}, char_to_wx("PNG files (*.png)|*.png|JPEG files (*.jpg;*.jpeg)|*.jpg;*.jpeg"), wxFD_SAVE | wxFD_OVERWRITE_PROMPT);
if (dialog.ShowModal() == wxID_CANCEL) {
return;
}
- auto path = boost::filesystem::path (wx_to_std(dialog.GetPath()));
+ auto path = boost::filesystem::path(wx_to_std(dialog.GetPath()));
auto player = make_shared<Player>(_film, Image::Alignment::PADDED, true);
player->seek(_viewer.position(), true);
bool done = false;
- player->Video.connect ([path, &done, this](shared_ptr<PlayerVideo> video, DCPTime) {
+ player->Video.connect([path, &done, this](shared_ptr<PlayerVideo> video, DCPTime) {
auto ext = boost::algorithm::to_lower_copy(path.extension().string());
if (ext == ".png") {
- auto image = video->image(AV_PIX_FMT_RGBA, VideoRange::FULL, false);
+ auto image = video->image(force(AV_PIX_FMT_RGBA), VideoRange::FULL, false);
image_as_png(image).write(path);
} else if (ext == ".jpg" || ext == ".jpeg") {
- auto image = video->image(AV_PIX_FMT_RGB24, VideoRange::FULL, false);
+ auto image = video->image(force(AV_PIX_FMT_RGB24), VideoRange::FULL, false);
image_as_jpeg(image, 80).write(path);
} else {
error_dialog(this, wxString::Format(_("Unrecognised file extension %s (use .jpg, .jpeg or .png)"), std_to_wx(ext)));
@@ -852,54 +868,54 @@ private:
--tries_left;
}
- DCPOMATIC_ASSERT (tries_left >= 0);
+ DCPOMATIC_ASSERT(tries_left >= 0);
}
- void file_history (wxCommandEvent& event)
+ void file_history(wxCommandEvent& event)
{
- auto history = Config::instance()->player_history ();
+ auto history = Config::instance()->player_history();
int n = event.GetId() - ID_file_history;
- if (n >= 0 && n < static_cast<int> (history.size ())) {
+ if (n >= 0 && n < static_cast<int>(history.size())) {
try {
- load_dcp (history[n]);
+ load_dcp(history[n]);
} catch (exception& e) {
error_dialog(nullptr, wxString::Format(_("Could not load DCP %s."), std_to_wx(history[n].string()))), std_to_wx(e.what());
}
}
}
- void file_close ()
+ void file_close()
{
- reset_film ();
- _info->triggered_update ();
- set_menu_sensitivity ();
+ reset_film();
+ _info->triggered_update();
+ set_menu_sensitivity();
}
- void file_exit ()
+ void file_exit()
{
- Close ();
+ Close();
}
- void edit_preferences ()
+ void edit_preferences()
{
if (!Config::instance()->have_write_permission()) {
return;
}
if (!_config_dialog) {
- _config_dialog = create_player_config_dialog ();
+ _config_dialog = create_player_config_dialog();
}
- _config_dialog->Show (this);
+ _config_dialog->Show(this);
}
- void view_cpl (wxCommandEvent& ev)
+ void view_cpl(wxCommandEvent& ev)
{
auto dcp = std::dynamic_pointer_cast<DCPContent>(_film->content().front());
- DCPOMATIC_ASSERT (dcp);
- auto cpls = dcp::find_and_resolve_cpls (dcp->directories(), true);
+ DCPOMATIC_ASSERT(dcp);
+ auto cpls = dcp::find_and_resolve_cpls(dcp->directories(), true);
int id = ev.GetId() - ID_view_cpl;
- DCPOMATIC_ASSERT (id >= 0);
- DCPOMATIC_ASSERT (id < int(cpls.size()));
+ DCPOMATIC_ASSERT(id >= 0);
+ DCPOMATIC_ASSERT(id < int(cpls.size()));
auto i = cpls.begin();
while (id > 0) {
++i;
@@ -907,11 +923,11 @@ private:
}
_viewer.set_coalesce_player_changes(true);
- dcp->set_cpl ((*i)->id());
- examine_content ();
+ dcp->set_cpl((*i)->id());
+ examine_content();
_viewer.set_coalesce_player_changes(false);
- _info->triggered_update ();
+ _info->triggered_update();
}
void view_eye_changed(wxCommandEvent& ev)
@@ -919,64 +935,64 @@ private:
_viewer.set_eyes(ev.GetId() == ID_view_eye_left ? Eyes::LEFT : Eyes::RIGHT);
}
- void view_full_screen ()
+ void view_full_screen()
{
if (_mode == Config::PlayerMode::FULL) {
_mode = Config::PlayerMode::WINDOW;
} else {
_mode = Config::PlayerMode::FULL;
}
- setup_screen ();
- setup_menu ();
+ setup_screen();
+ setup_menu();
}
- void view_dual_screen ()
+ void view_dual_screen()
{
if (_mode == Config::PlayerMode::DUAL) {
_mode = Config::PlayerMode::WINDOW;
} else {
_mode = Config::PlayerMode::DUAL;
}
- setup_screen ();
- setup_menu ();
+ setup_screen();
+ setup_menu();
}
- void setup_menu ()
+ void setup_menu()
{
if (_view_full_screen) {
- _view_full_screen->Check (_mode == Config::PlayerMode::FULL);
+ _view_full_screen->Check(_mode == Config::PlayerMode::FULL);
}
if (_view_dual_screen) {
- _view_dual_screen->Check (_mode == Config::PlayerMode::DUAL);
+ _view_dual_screen->Check(_mode == Config::PlayerMode::DUAL);
}
}
- void setup_screen ()
+ void setup_screen()
{
- _controls->Show (_mode != Config::PlayerMode::FULL);
- _info->Show (_mode != Config::PlayerMode::FULL);
- _overall_panel->SetBackgroundColour (_mode == Config::PlayerMode::FULL ? wxColour(0, 0, 0) : wxNullColour);
- ShowFullScreen (_mode == Config::PlayerMode::FULL);
+ _controls->Show(_mode != Config::PlayerMode::FULL);
+ _info->Show(_mode != Config::PlayerMode::FULL);
+ _overall_panel->SetBackgroundColour(_mode == Config::PlayerMode::FULL ? wxColour(0, 0, 0) : wxNullColour);
+ ShowFullScreen(_mode == Config::PlayerMode::FULL);
_viewer.set_pad_black(_mode != Config::PlayerMode::WINDOW);
if (_mode == Config::PlayerMode::DUAL) {
_dual_screen = new wxFrame(this, wxID_ANY, {});
- _dual_screen->SetBackgroundColour (wxColour(0, 0, 0));
- _dual_screen->ShowFullScreen (true);
+ _dual_screen->SetBackgroundColour(wxColour(0, 0, 0));
+ _dual_screen->ShowFullScreen(true);
_viewer.panel()->Reparent(_dual_screen);
_viewer.panel()->SetFocus();
- _dual_screen->Show ();
- LOG_DEBUG_PLAYER("Setting up dual screen mode with %1 displays", wxDisplay::GetCount());
+ _dual_screen->Show();
+ LOG_DEBUG_PLAYER("Setting up dual screen mode with {} displays", wxDisplay::GetCount());
for (auto index = 0U; index < wxDisplay::GetCount(); ++index) {
wxDisplay display(index);
auto client = display.GetClientArea();
auto mode = display.GetCurrentMode();
auto geometry = display.GetGeometry();
- LOG_DEBUG_PLAYER("Display %1", index);
- LOG_DEBUG_PLAYER(" ClientArea position=(%1, %2) size=(%3, %4)", client.GetX(), client.GetY(), client.GetWidth(), client.GetHeight());
- LOG_DEBUG_PLAYER(" Geometry position=(%1, %2) size=(%3, %4)", geometry.GetX(), geometry.GetY(), geometry.GetWidth(), geometry.GetHeight());
- LOG_DEBUG_PLAYER(" Mode size=(%1, %2)", mode.GetWidth(), mode.GetHeight());
- LOG_DEBUG_PLAYER(" Primary? %1", static_cast<int>(display.IsPrimary()));
+ LOG_DEBUG_PLAYER("Display {}", index);
+ LOG_DEBUG_PLAYER(" ClientArea position=({}, {}) size=({}, {})", client.GetX(), client.GetY(), client.GetWidth(), client.GetHeight());
+ LOG_DEBUG_PLAYER(" Geometry position=({}, {}) size=({}, {})", geometry.GetX(), geometry.GetY(), geometry.GetWidth(), geometry.GetHeight());
+ LOG_DEBUG_PLAYER(" Mode size=({}, {})", mode.GetWidth(), mode.GetHeight());
+ LOG_DEBUG_PLAYER(" Primary? {}", static_cast<int>(display.IsPrimary()));
}
if (wxDisplay::GetCount() > 1) {
wxRect geometry[2] = {
@@ -992,12 +1008,12 @@ private:
} else {
if (_dual_screen) {
_viewer.panel()->Reparent(_overall_panel);
- _dual_screen->Destroy ();
+ _dual_screen->Destroy();
_dual_screen = 0;
}
}
- setup_main_sizer (_mode);
+ setup_main_sizer(_mode);
}
void dual_screen_key_press(wxKeyEvent& ev)
@@ -1011,50 +1027,60 @@ private:
}
}
- void view_closed_captions ()
+ void view_closed_captions()
{
_viewer.show_closed_captions();
}
- void tools_verify ()
+ void tools_verify()
{
DCPOMATIC_ASSERT(!_film->content().empty());
auto dcp = std::dynamic_pointer_cast<DCPContent>(_film->content().front());
- DCPOMATIC_ASSERT (dcp);
+ DCPOMATIC_ASSERT(dcp);
- auto job = make_shared<VerifyDCPJob>(dcp->directories(), _kdms, dcp::VerificationOptions{});
- VerifyDCPDialog dialog(this, _("Verify DCP"), job);
+ VerifyDCPDialog dialog(this, _("Verify DCP"), dcp->directories(), _kdms);
dialog.ShowModal();
}
- void tools_check_for_updates ()
+ void tools_audio_graph()
+ {
+ DCPOMATIC_ASSERT(!_film->content().empty());
+ auto dcp = std::dynamic_pointer_cast<DCPContent>(_film->content().front());
+ DCPOMATIC_ASSERT(dcp);
+
+ _audio_dialog.reset(this, _film, dcp);
+ _audio_dialog->Seek.connect(boost::bind(&FilmViewer::seek, &_viewer, _1, true));
+ _audio_dialog->Show();
+ }
+
+ void tools_check_for_updates()
{
- UpdateChecker::instance()->run ();
+ UpdateChecker::instance()->run();
_update_news_requested = true;
}
- void tools_timing ()
+ void tools_timing()
{
TimerDisplay dialog(this, _viewer.state_timer(), _viewer.gets());
dialog.ShowModal();
}
- void tools_system_information ()
+ void tools_system_information()
{
if (!_system_information_dialog) {
_system_information_dialog.reset(this, _viewer);
}
- _system_information_dialog->Show ();
+ _system_information_dialog->Show();
}
- void help_about ()
+ void help_about()
{
AboutDialog dialog(this);
dialog.ShowModal();
}
- void help_report_a_problem ()
+ void help_report_a_problem()
{
ReportProblemDialog dialog(this);
if (dialog.ShowModal() == wxID_OK) {
@@ -1062,9 +1088,9 @@ private:
}
}
- void update_checker_state_changed ()
+ void update_checker_state_changed()
{
- auto uc = UpdateChecker::instance ();
+ auto uc = UpdateChecker::instance();
bool const announce =
_update_news_requested ||
@@ -1078,7 +1104,7 @@ private:
}
if (uc->state() == UpdateChecker::State::YES) {
- UpdateDialog dialog(this, uc->stable (), uc->test ());
+ UpdateDialog dialog(this, uc->stable(), uc->test());
dialog.ShowModal();
} else if (uc->state() == UpdateChecker::State::FAILED) {
error_dialog(this, variant::wx::insert_dcpomatic(_("The %s download server could not be contacted.")));
@@ -1089,14 +1115,14 @@ private:
_update_news_requested = false;
}
- void config_changed (Config::Property prop)
+ void config_changed(Config::Property prop)
{
/* Instantly save any config changes when using the player GUI */
try {
Config::instance()->write_config();
} catch (FileError& e) {
if (prop != Config::HISTORY) {
- error_dialog (
+ error_dialog(
this,
wxString::Format(
_("Could not write to config file at %s. Your changes have not been saved."),
@@ -1105,13 +1131,13 @@ private:
);
}
} catch (exception& e) {
- error_dialog (
+ error_dialog(
this,
_("Could not write to config file. Your changes have not been saved.")
);
}
- update_from_config (prop);
+ update_from_config(prop);
setup_http_server();
}
@@ -1138,7 +1164,7 @@ private:
_http_server_thread = boost::thread(boost::bind(&HTTPServer::run, _http_server.get()));
}
} catch (std::exception& e) {
- LOG_DEBUG_PLAYER("Failed to start player HTTP server (%1)", e.what());
+ LOG_DEBUG_PLAYER("Failed to start player HTTP server ({})", e.what());
}
}
@@ -1152,18 +1178,18 @@ private:
/* This is not the end of the world; probably a failure to bind the server socket
* because there's already another player running.
*/
- LOG_DEBUG_PLAYER("Failed to start internal player server (%1)", e.what());
+ LOG_DEBUG_PLAYER("Failed to start internal player server ({})", e.what());
}
}
- void update_from_config (Config::Property prop)
+ void update_from_config(Config::Property prop)
{
for (int i = 0; i < _history_items; ++i) {
- delete _file_menu->Remove (ID_file_history + i);
+ delete _file_menu->Remove(ID_file_history + i);
}
if (_history_separator) {
- _file_menu->Remove (_history_separator);
+ _file_menu->Remove(_history_separator);
}
delete _history_separator;
_history_separator = nullptr;
@@ -1171,24 +1197,24 @@ private:
int pos = _history_position;
/* Clear out non-existent history items before we re-build the menu */
- Config::instance()->clean_player_history ();
- auto history = Config::instance()->player_history ();
+ Config::instance()->clean_player_history();
+ auto history = Config::instance()->player_history();
- if (!history.empty ()) {
- _history_separator = _file_menu->InsertSeparator (pos++);
+ if (!history.empty()) {
+ _history_separator = _file_menu->InsertSeparator(pos++);
}
for (size_t i = 0; i < history.size(); ++i) {
string s;
if (i < 9) {
- s = String::compose ("&%1 %2", i + 1, history[i].string());
+ s = fmt::format("&{} {}", i + 1, history[i].string());
} else {
s = history[i].string();
}
- _file_menu->Insert (pos++, ID_file_history + i, std_to_wx (s));
+ _file_menu->Insert(pos++, ID_file_history + i, std_to_wx(s));
}
- _history_items = history.size ();
+ _history_items = history.size();
if (prop == Config::PLAYER_DEBUG_LOG) {
auto p = Config::instance()->player_debug_log_file();
@@ -1198,20 +1224,27 @@ private:
dcpomatic_log = make_shared<NullLog>();
}
}
+
+ dcpomatic_log->set_types(Config::instance()->log_types());
+
+ set_audio_delay_from_config();
}
- void set_menu_sensitivity ()
+ void set_menu_sensitivity()
{
- auto const enable = _film && !_film->content().empty();
- _tools_verify->Enable(enable);
- _file_add_ov->Enable(enable);
- _file_add_kdm->Enable(enable);
- _file_save_frame->Enable(enable);
- _view_cpl->Enable(enable);
- _view_eye->Enable(enable && _film->three_d());
+ auto const have_content = _film && !_film->content().empty();
+ auto const dcp = _viewer.dcp();
+ auto const playable = dcp && !dcp->needs_assets() && !dcp->needs_kdm();
+ _tools_verify->Enable(have_content);
+ _tools_audio_graph->Enable(playable);
+ _file_add_ov->Enable(have_content);
+ _file_add_kdm->Enable(have_content);
+ _file_save_frame->Enable(playable);
+ _view_cpl->Enable(have_content);
+ _view_eye->Enable(have_content && _film->three_d());
}
- void start_stop_pressed ()
+ void start_stop_pressed()
{
if (_viewer.playing()) {
_viewer.stop();
@@ -1220,27 +1253,27 @@ private:
}
}
- void go_back_frame ()
+ void go_back_frame()
{
_viewer.seek_by(-_viewer.one_video_frame(), true);
}
- void go_forward_frame ()
+ void go_forward_frame()
{
_viewer.seek_by(_viewer.one_video_frame(), true);
}
- void go_seconds (int s)
+ void go_seconds(int s)
{
_viewer.seek_by(DCPTime::from_seconds(s), true);
}
- void go_to_start ()
+ void go_to_start()
{
_viewer.seek(DCPTime(), true);
}
- void go_to_end ()
+ void go_to_end()
{
_viewer.seek(_film->length() - _viewer.one_video_frame(), true);
}
@@ -1270,6 +1303,7 @@ private:
wxMenuItem* _file_add_kdm = nullptr;
wxMenuItem* _file_save_frame = nullptr;
wxMenuItem* _tools_verify = nullptr;
+ wxMenuItem* _tools_audio_graph = nullptr;
wxMenuItem* _view_full_screen = nullptr;
wxMenuItem* _view_dual_screen = nullptr;
wxSizer* _main_sizer = nullptr;
@@ -1279,13 +1313,14 @@ private:
boost::thread _http_server_thread;
std::unique_ptr<HTTPServer> _http_server;
struct timeval _last_http_server_update = { 0, 0 };
+ wx_ptr<AudioDialog> _audio_dialog;
};
static const wxCmdLineEntryDesc command_line_description[] = {
{ wxCMD_LINE_PARAM, 0, 0, "DCP to load or create", wxCMD_LINE_VAL_STRING, wxCMD_LINE_PARAM_OPTIONAL },
{ wxCMD_LINE_OPTION, "c", "config", "Directory containing config.xml", wxCMD_LINE_VAL_STRING, wxCMD_LINE_PARAM_OPTIONAL },
{ wxCMD_LINE_OPTION, "s", "stress", "File containing description of stress test", wxCMD_LINE_VAL_STRING, wxCMD_LINE_PARAM_OPTIONAL },
- { wxCMD_LINE_NONE, "", "", "", wxCmdLineParamType (0), 0 }
+ { wxCMD_LINE_NONE, "", "", "", wxCmdLineParamType(0), 0 }
};
@@ -1295,26 +1330,26 @@ static const wxCmdLineEntryDesc command_line_description[] = {
class App : public wxApp
{
public:
- App ()
- : wxApp ()
+ App()
+ : wxApp()
{
#ifdef DCPOMATIC_LINUX
- XInitThreads ();
+ XInitThreads();
#endif
}
private:
- bool OnInit () override
+ bool OnInit() override
{
wxSplashScreen* splash;
try {
- wxInitAllImageHandlers ();
+ wxInitAllImageHandlers();
- Config::FailedToLoad.connect (boost::bind (&App::config_failed_to_load, this));
- Config::Warning.connect (boost::bind (&App::config_warning, this, _1));
+ Config::FailedToLoad.connect(boost::bind(&App::config_failed_to_load, this));
+ Config::Warning.connect(boost::bind(&App::config_warning, this, _1));
- splash = maybe_show_splash ();
+ splash = maybe_show_splash();
SetAppName(variant::wx::dcpomatic_player());
@@ -1323,14 +1358,14 @@ private:
}
#ifdef DCPOMATIC_LINUX
- unsetenv ("UBUNTU_MENUPROXY");
+ unsetenv("UBUNTU_MENUPROXY");
#endif
#ifdef DCPOMATIC_OSX
- make_foreground_application ();
+ make_foreground_application();
#endif
- dcpomatic_setup_path_encoding ();
+ dcpomatic_setup_path_encoding();
/* Enable i18n; this will create a Config object
to look for a force-configured language. This Config
@@ -1343,50 +1378,50 @@ private:
/* Set things up, including filters etc.
which will now be internationalised correctly.
*/
- dcpomatic_setup ();
+ dcpomatic_setup();
/* Force the configuration to be re-loaded correctly next
time it is needed.
*/
- Config::drop ();
+ Config::drop();
- signal_manager = new wxSignalManager (this);
+ signal_manager = new wxSignalManager(this);
- _frame = new DOMFrame ();
- SetTopWindow (_frame);
- _frame->Maximize ();
+ _frame = new DOMFrame();
+ SetTopWindow(_frame);
+ _frame->Maximize();
if (splash) {
- splash->Destroy ();
+ splash->Destroy();
splash = nullptr;
}
- _frame->Show ();
+ _frame->Show();
- if (!_dcp_to_load.empty() && dcp::filesystem::is_directory(_dcp_to_load)) {
+ if (_dcp_to_load && dcp::filesystem::is_directory(*_dcp_to_load)) {
try {
- _frame->load_dcp (_dcp_to_load);
+ _frame->load_dcp(*_dcp_to_load);
} catch (exception& e) {
- error_dialog(nullptr, wxString::Format(_("Could not load DCP %s"), std_to_wx(_dcp_to_load)), std_to_wx(e.what()));
+ error_dialog(nullptr, wxString::Format(_("Could not load DCP %s"), std_to_wx(_dcp_to_load->string())), std_to_wx(e.what()));
}
}
if (_stress) {
try {
- _frame->load_stress_script (*_stress);
+ _frame->load_stress_script(*_stress);
} catch (exception& e) {
error_dialog(nullptr, wxString::Format(_("Could not load stress test file %s"), std_to_wx(*_stress)));
}
}
- Bind (wxEVT_IDLE, boost::bind (&App::idle, this));
+ Bind(wxEVT_IDLE, boost::bind(&App::idle, this));
- if (Config::instance()->check_for_updates ()) {
- UpdateChecker::instance()->run ();
+ if (Config::instance()->check_for_updates()) {
+ UpdateChecker::instance()->run();
}
}
catch (exception& e)
{
if (splash) {
- splash->Destroy ();
+ splash->Destroy();
}
error_dialog(nullptr, variant::wx::insert_dcpomatic_player(_("%s could not start")), std_to_wx(e.what()));
}
@@ -1394,38 +1429,48 @@ private:
return true;
}
- void OnInitCmdLine (wxCmdLineParser& parser) override
+ void OnInitCmdLine(wxCmdLineParser& parser) override
{
- parser.SetDesc (command_line_description);
+ parser.SetDesc(command_line_description);
parser.SetSwitchChars(char_to_wx("-"));
}
- bool OnCmdLineParsed (wxCmdLineParser& parser) override
+ bool OnCmdLineParsed(wxCmdLineParser& parser) override
{
if (parser.GetParamCount() > 0) {
- _dcp_to_load = wx_to_std (parser.GetParam (0));
+ auto path = boost::filesystem::path(wx_to_std(parser.GetParam(0)));
+ /* Go at most two directories higher looking for a DCP that contains the file
+ * that was passed in.
+ */
+ for (int i = 0; i < 2; ++i) {
+ if (dcp::filesystem::is_directory(path) && contains_assetmap(path)) {
+ _dcp_to_load = path;
+ break;
+ }
+ path = path.parent_path();
+ }
}
wxString config;
if (parser.Found(char_to_wx("c"), &config)) {
- Config::override_path = wx_to_std (config);
+ Config::override_path = wx_to_std(config);
}
wxString stress;
if (parser.Found(char_to_wx("s"), &stress)) {
- _stress = wx_to_std (stress);
+ _stress = wx_to_std(stress);
}
return true;
}
- void report_exception ()
+ void report_exception()
{
try {
throw;
} catch (FileError& e) {
- error_dialog (
+ error_dialog(
0,
- wxString::Format (
+ wxString::Format(
_("An exception occurred: %s (%s)\n\n%s"),
std_to_wx(e.what()),
std_to_wx(e.file().string().c_str()),
@@ -1433,9 +1478,9 @@ private:
)
);
} catch (exception& e) {
- error_dialog (
+ error_dialog(
0,
- wxString::Format (
+ wxString::Format(
_("An exception occurred: %s\n\n%s"),
std_to_wx(e.what()),
dcpomatic::wx::report_problem()
@@ -1447,39 +1492,39 @@ private:
}
/* An unhandled exception has occurred inside the main event loop */
- bool OnExceptionInMainLoop () override
+ bool OnExceptionInMainLoop() override
{
- report_exception ();
+ report_exception();
/* This will terminate the program */
return false;
}
- void OnUnhandledException () override
+ void OnUnhandledException() override
{
- report_exception ();
+ report_exception();
}
- void idle ()
+ void idle()
{
- signal_manager->ui_idle ();
+ signal_manager->ui_idle();
if (_frame) {
_frame->idle();
}
}
- void config_failed_to_load ()
+ void config_failed_to_load()
{
- message_dialog (_frame, _("The existing configuration failed to load. Default values will be used instead. These may take a short time to create."));
+ message_dialog(_frame, _("The existing configuration failed to load. Default values will be used instead. These may take a short time to create."));
}
- void config_warning (string m)
+ void config_warning(string m)
{
- message_dialog (_frame, std_to_wx (m));
+ message_dialog(_frame, std_to_wx(m));
}
DOMFrame* _frame = nullptr;
- string _dcp_to_load;
+ boost::optional<boost::filesystem::path> _dcp_to_load;
boost::optional<string> _stress;
};
-IMPLEMENT_APP (App)
+IMPLEMENT_APP(App)
diff --git a/src/tools/dcpomatic_playlist.cc b/src/tools/dcpomatic_playlist.cc
index c7ba80833..f90af4a29 100644
--- a/src/tools/dcpomatic_playlist.cc
+++ b/src/tools/dcpomatic_playlist.cc
@@ -24,6 +24,7 @@
#include "wx/dcpomatic_button.h"
#include "wx/i18n_setup.h"
#include "wx/playlist_editor_config_dialog.h"
+#include "wx/spl_entry_dialog.h"
#include "wx/wx_signal_manager.h"
#include "wx/wx_util.h"
#include "wx/wx_variant.h"
@@ -102,9 +103,14 @@ public:
return _content_view->selected();
}
- shared_ptr<Content> get(string digest) const override
+ shared_ptr<Content> get_by_digest(string digest) const override
{
- return _content_view->get(digest);
+ return _content_view->get_by_digest(digest);
+ }
+
+ shared_ptr<Content> get_by_cpl_id(string cpl_id) const override
+ {
+ return _content_view->get_by_cpl_id(cpl_id);
}
private:
@@ -248,7 +254,7 @@ private:
return;
}
- shared_ptr<SignalSPL> spl(new SignalSPL(wx_to_std(_("New Playlist"))));
+ auto spl = std::make_shared<SignalSPL>(wx_to_std(_("New Playlist")));
add_playlist_to_model(spl);
add_playlist_to_view(spl);
_list->SetItemState(_list->GetItemCount() - 1, wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED);
@@ -310,6 +316,7 @@ class PlaylistContent
public:
PlaylistContent(wxPanel* parent, ContentDialog* content_dialog)
: _content_dialog(content_dialog)
+ , _parent(parent)
, _sizer(new wxBoxSizer(wxVERTICAL))
{
auto title = new wxBoxSizer(wxHORIZONTAL);
@@ -332,6 +339,7 @@ public:
_list->AppendColumn(_("CPL"), wxLIST_FORMAT_LEFT, 350);
_list->AppendColumn(_("Type"), wxLIST_FORMAT_LEFT, 100);
_list->AppendColumn(_("Encrypted"), wxLIST_FORMAT_CENTRE, 90);
+ _list->AppendColumn(_("Crop"), wxLIST_FORMAT_LEFT, 120);
list->Add(_list, 1, wxEXPAND | wxALL, DCPOMATIC_SIZER_GAP);
@@ -340,10 +348,12 @@ public:
_down = new Button(parent, _("Down"));
_add = new Button(parent, _("Add"));
_remove = new Button(parent, _("Remove"));
+ _edit = new Button(parent, _("Edit..."));
button_sizer->Add(_up, 0, wxEXPAND | wxBOTTOM, DCPOMATIC_BUTTON_STACK_GAP);
button_sizer->Add(_down, 0, wxEXPAND | wxBOTTOM, DCPOMATIC_BUTTON_STACK_GAP);
button_sizer->Add(_add, 0, wxEXPAND | wxBOTTOM, DCPOMATIC_BUTTON_STACK_GAP);
button_sizer->Add(_remove, 0, wxEXPAND | wxBOTTOM, DCPOMATIC_BUTTON_STACK_GAP);
+ button_sizer->Add(_edit, 0, wxEXPAND | wxBOTTOM, DCPOMATIC_BUTTON_STACK_GAP);
list->Add(button_sizer, 0, wxALL, DCPOMATIC_SIZER_GAP);
@@ -357,6 +367,7 @@ public:
_down->Bind(wxEVT_BUTTON, bind(&PlaylistContent::down_clicked, this));
_add->Bind(wxEVT_BUTTON, bind(&PlaylistContent::add_clicked, this));
_remove->Bind(wxEVT_BUTTON, bind(&PlaylistContent::remove_clicked, this));
+ _edit->Bind(wxEVT_BUTTON, bind(&PlaylistContent::edit_clicked, this));
setup_sensitivity();
}
@@ -413,9 +424,10 @@ private:
void set_item(long N, SPLEntry e)
{
_list->SetItem(N, 0, std_to_wx(e.name));
- _list->SetItem(N, 1, std_to_wx(e.id));
+ _list->SetItem(N, 1, std_to_wx(e.id.get_value_or("")));
_list->SetItem(N, 2, std_to_wx(e.kind->name()));
_list->SetItem(N, 3, e.encrypted ? S_("Question|Y") : S_("Question|N"));
+ _list->SetItem(N, 4, e.crop_to_ratio ? wxString::Format(char_to_wx("%.2f"), *e.crop_to_ratio) : char_to_wx(""));
}
void setup_sensitivity()
@@ -430,6 +442,7 @@ private:
_down->Enable(have_list && selected != -1 && selected <(_list->GetItemCount() - 1));
_add->Enable(have_list);
_remove->Enable(have_list && num_selected > 0);
+ _edit->Enable(have_list && num_selected > 0);
}
void add_clicked()
@@ -457,8 +470,8 @@ private:
_playlist->swap(s, s - 1);
- set_item(s - 1, (*_playlist)[s-1]);
- set_item(s, (*_playlist)[s]);
+ set_item(s - 1, _playlist->get(s - 1));
+ set_item(s, _playlist->get(s));
}
void down_clicked()
@@ -472,8 +485,8 @@ private:
_playlist->swap(s, s + 1);
- set_item(s + 1, (*_playlist)[s+1]);
- set_item(s, (*_playlist)[s]);
+ set_item(s + 1, _playlist->get(s + 1));
+ set_item(s, _playlist->get(s));
}
void remove_clicked()
@@ -488,7 +501,22 @@ private:
_list->DeleteItem(s);
}
+ void edit_clicked()
+ {
+ long int s = _list->GetNextItem(-1, wxLIST_NEXT_ALL, wxLIST_STATE_SELECTED);
+ if (s == -1) {
+ return;
+ }
+
+ SPLEntryDialog dialog(_parent, _playlist->get(s));
+ if (dialog.ShowModal() == wxID_OK) {
+ _playlist->set(s, dialog.get());
+ set_item(s, _playlist->get(s));
+ }
+ }
+
ContentDialog* _content_dialog;
+ wxWindow* _parent;
wxBoxSizer* _sizer;
wxTextCtrl* _name;
Button* _save_name;
@@ -497,6 +525,7 @@ private:
wxButton* _down;
wxButton* _add;
wxButton* _remove;
+ wxButton* _edit;
shared_ptr<SignalSPL> _playlist;
};
diff --git a/src/tools/dcpomatic_server.cc b/src/tools/dcpomatic_server.cc
index e5d8b0a90..664b33056 100644
--- a/src/tools/dcpomatic_server.cc
+++ b/src/tools/dcpomatic_server.cc
@@ -34,8 +34,6 @@
#include "lib/encode_server.h"
#include "lib/encoded_log_entry.h"
#include "lib/log.h"
-#include "lib/log.h"
-#include "lib/signaller.h"
#include "lib/signaller.h"
#include "lib/util.h"
#include <dcp/warnings.h>
@@ -81,11 +79,7 @@ static unsigned int const log_lines = 128;
class ServerLog : public Log, public Signaller
{
public:
- ServerLog ()
- : _fps (0)
- {}
-
- string get () const {
+ string get() const {
string a;
for (auto const& i: _log) {
a += i + "\n";
@@ -93,8 +87,8 @@ public:
return a;
}
- float fps () const {
- boost::mutex::scoped_lock lm (_state_mutex);
+ float fps() const {
+ boost::mutex::scoped_lock lm(_state_mutex);
return _fps;
}
@@ -102,10 +96,10 @@ public:
boost::signals2::signal<void(int)> Removed;
private:
- void do_log (shared_ptr<const LogEntry> entry) override
+ void do_log(shared_ptr<const LogEntry> entry) override
{
- time_t const s = entry->seconds ();
- struct tm* local = localtime (&s);
+ time_t const s = entry->seconds();
+ struct tm* local = localtime(&s);
if (
!_last_time ||
local->tm_yday != _last_time->tm_yday ||
@@ -114,35 +108,34 @@ private:
local->tm_min != _last_time->tm_min
) {
char buffer[64];
- strftime (buffer, 64, "%c", local);
- append (buffer);
+ strftime(buffer, 64, "%c", local);
+ append(buffer);
}
if (_log.size() > log_lines) {
- emit (boost::bind (boost::ref (Removed), _log.front().length()));
- _log.pop_front ();
+ emit(boost::bind(boost::ref(Removed), _log.front().length()));
+ _log.pop_front();
}
- append (entry->message ());
+ append(entry->message());
_last_time = *local;
- auto encoded = dynamic_pointer_cast<const EncodedLogEntry> (entry);
- if (encoded) {
- _history.push_back (encoded->seconds ());
+ if (auto encoded = dynamic_pointer_cast<const EncodedLogEntry>(entry)) {
+ _history.push_back(encoded->seconds());
if (_history.size() > 48) {
- _history.pop_front ();
+ _history.pop_front();
}
if (_history.size() > 2) {
- boost::mutex::scoped_lock lm (_state_mutex);
+ boost::mutex::scoped_lock lm(_state_mutex);
_fps = _history.size() / (_history.back() - _history.front());
}
}
}
- void append (string s)
+ void append(string s)
{
- _log.push_back (s);
- emit (boost::bind(boost::ref(Appended), s));
+ _log.push_back(s);
+ emit(boost::bind(boost::ref(Appended), s));
}
list<string> _log;
@@ -150,7 +143,7 @@ private:
std::list<double> _history;
mutable boost::mutex _state_mutex;
- float _fps;
+ float _fps = 0;
};
@@ -160,8 +153,8 @@ static shared_ptr<ServerLog> server_log;
class StatusDialog : public wxDialog
{
public:
- StatusDialog ()
- : wxDialog (
+ StatusDialog()
+ : wxDialog(
nullptr, wxID_ANY, variant::wx::dcpomatic_encode_server(),
wxDefaultPosition, wxDefaultSize,
#ifdef DCPOMATIC_OSX
@@ -177,8 +170,8 @@ public:
_fps = new StaticText(this, {});
state_sizer->Add(_fps, 1, wxLEFT, DCPOMATIC_DIALOG_BORDER);
- _text = new wxTextCtrl (
- this, wxID_ANY, std_to_wx (server_log->get()), wxDefaultPosition, wxDefaultSize,
+ _text = new wxTextCtrl(
+ this, wxID_ANY, std_to_wx(server_log->get()), wxDefaultPosition, wxDefaultSize,
wxTE_READONLY | wxTE_MULTILINE
);
@@ -188,23 +181,23 @@ public:
SetSizer(overall_sizer);
overall_sizer->Layout();
- Bind (wxEVT_TIMER, boost::bind (&StatusDialog::update_state, this));
- _timer.reset (new wxTimer (this));
- _timer->Start (1000);
+ Bind(wxEVT_TIMER, boost::bind(&StatusDialog::update_state, this));
+ _timer.reset(new wxTimer(this));
+ _timer->Start(1000);
- server_log->Appended.connect (bind (&StatusDialog::appended, this, _1));
- server_log->Removed.connect (bind (&StatusDialog::removed, this, _1));
+ server_log->Appended.connect(bind(&StatusDialog::appended, this, _1));
+ server_log->Removed.connect(bind(&StatusDialog::removed, this, _1));
SetSize(800, 600);
}
private:
- void appended (string s)
+ void appended(string s)
{
(*_text) << std_to_wx(s) << char_to_wx("\n");
}
- void removed (int n)
+ void removed(int n)
{
#ifdef DCPOMATIC_WINDOWS
_text->Remove(0, n + 2);
@@ -213,7 +206,7 @@ private:
#endif
}
- void update_state ()
+ void update_state()
{
_fps->SetLabel(wxString::Format(char_to_wx("%.1f"), server_log->fps()));
}
@@ -230,15 +223,15 @@ static StatusDialog* status_dialog = nullptr;
class TaskBarIcon : public wxTaskBarIcon
{
public:
- TaskBarIcon ()
+ TaskBarIcon()
{
- set_icon ();
+ set_icon();
- Bind (wxEVT_MENU, boost::bind (&TaskBarIcon::status, this), ID_status);
- Bind (wxEVT_MENU, boost::bind (&TaskBarIcon::quit, this), ID_quit);
+ Bind(wxEVT_MENU, boost::bind(&TaskBarIcon::status, this), ID_status);
+ Bind(wxEVT_MENU, boost::bind(&TaskBarIcon::quit, this), ID_quit);
}
- wxMenu* CreatePopupMenu () override
+ wxMenu* CreatePopupMenu() override
{
auto menu = new wxMenu;
menu->Append(ID_status, _("Status..."));
@@ -246,32 +239,32 @@ public:
return menu;
}
- void set_icon ()
+ void set_icon()
{
#ifdef DCPOMATIC_WINDOWS
- wxIcon icon (std_to_wx("id"));
+ wxIcon icon(std_to_wx("id"));
#else
string const colour = gui_is_dark() ? "white" : "black";
- wxBitmap bitmap (
- bitmap_path(String::compose("dcpomatic_small_%1.png", colour)),
+ wxBitmap bitmap(
+ bitmap_path(fmt::format("dcpomatic_small_{}.png", colour)),
wxBITMAP_TYPE_PNG
);
wxIcon icon;
- icon.CopyFromBitmap (bitmap);
+ icon.CopyFromBitmap(bitmap);
#endif
SetIcon(icon, _("DCP-o-matic Encode Server"));
}
private:
- void status ()
+ void status()
{
- status_dialog->Show ();
+ status_dialog->Show();
}
- void quit ()
+ void quit()
{
- wxTheApp->ExitMainLoop ();
+ wxTheApp->ExitMainLoop();
}
};
@@ -279,36 +272,36 @@ private:
class App : public wxApp, public ExceptionStore
{
public:
- App ()
- : wxApp ()
+ App()
+ : wxApp()
{}
private:
- bool OnInit () override
+ bool OnInit() override
{
if (!wxApp::OnInit()) {
return false;
}
- wxInitAllImageHandlers ();
+ wxInitAllImageHandlers();
- server_log.reset (new ServerLog);
- server_log->set_types (LogEntry::TYPE_GENERAL | LogEntry::TYPE_WARNING | LogEntry::TYPE_ERROR);
+ server_log.reset(new ServerLog);
+ server_log->set_types(LogEntry::TYPE_GENERAL | LogEntry::TYPE_WARNING | LogEntry::TYPE_ERROR);
dcpomatic_log = server_log;
Config::FailedToLoad.connect(boost::bind(&App::config_failed_to_load, this, _1));
- Config::Warning.connect (boost::bind (&App::config_warning, this, _1));
+ Config::Warning.connect(boost::bind(&App::config_warning, this, _1));
- auto splash = maybe_show_splash ();
+ auto splash = maybe_show_splash();
- dcpomatic_setup_path_encoding ();
+ dcpomatic_setup_path_encoding();
dcpomatic::wx::setup_i18n();
- dcpomatic_setup ();
- Config::drop ();
+ dcpomatic_setup();
+ Config::drop();
- signal_manager = new wxSignalManager (this);
- Bind (wxEVT_IDLE, boost::bind (&App::idle, this));
+ signal_manager = new wxSignalManager(this);
+ Bind(wxEVT_IDLE, boost::bind(&App::idle, this));
/* Bad things happen (on Linux at least) if the config is reloaded by main_thread;
it seems like there's a race which results in the locked_sstream mutex being
@@ -317,24 +310,24 @@ private:
*/
Config::instance();
- status_dialog = new StatusDialog ();
+ status_dialog = new StatusDialog();
#ifdef DCPOMATIC_LINUX
- status_dialog->Show ();
+ status_dialog->Show();
#else
_icon = new TaskBarIcon;
- status_dialog->Bind (wxEVT_SYS_COLOUR_CHANGED, boost::bind(&TaskBarIcon::set_icon, _icon));
+ status_dialog->Bind(wxEVT_SYS_COLOUR_CHANGED, boost::bind(&TaskBarIcon::set_icon, _icon));
#endif
- _thread = thread (bind (&App::main_thread, this));
+ _thread = thread(bind(&App::main_thread, this));
- Bind (wxEVT_TIMER, boost::bind (&App::check, this));
- _timer.reset (new wxTimer (this));
- _timer->Start (1000);
+ Bind(wxEVT_TIMER, boost::bind(&App::check, this));
+ _timer.reset(new wxTimer(this));
+ _timer->Start(1000);
if (splash) {
- splash->Destroy ();
+ splash->Destroy();
}
- SetExitOnFrameDelete (false);
+ SetExitOnFrameDelete(false);
#ifdef DCPOMATIC_GROK
grk_plugin::setMessengerLogger(new grk_plugin::GrokLogger("[GROK] "));
@@ -344,36 +337,36 @@ private:
return true;
}
- int OnExit () override
+ int OnExit() override
{
delete _icon;
- return wxApp::OnExit ();
+ return wxApp::OnExit();
}
- void main_thread ()
+ void main_thread()
try {
- EncodeServer server (false, Config::instance()->server_encoding_threads());
- server.run ();
+ EncodeServer server(false, Config::instance()->server_encoding_threads());
+ server.run();
} catch (...) {
- store_current ();
+ store_current();
}
- void check ()
+ void check()
{
try {
- rethrow ();
+ rethrow();
} catch (exception& e) {
- error_dialog (nullptr, std_to_wx(e.what()));
- wxTheApp->ExitMainLoop ();
+ error_dialog(nullptr, std_to_wx(e.what()));
+ wxTheApp->ExitMainLoop();
} catch (...) {
error_dialog(nullptr, variant::wx::insert_dcpomatic_encode_server(_("An unknown error has occurred with the %s.")));
- wxTheApp->ExitMainLoop ();
+ wxTheApp->ExitMainLoop();
}
}
- void idle ()
+ void idle()
{
- signal_manager->ui_idle ();
+ signal_manager->ui_idle();
}
void config_failed_to_load(Config::LoadFailure what)
@@ -381,9 +374,9 @@ private:
report_config_load_failure(nullptr, what);
}
- void config_warning (string m)
+ void config_warning(string m)
{
- message_dialog (nullptr, std_to_wx(m));
+ message_dialog(nullptr, std_to_wx(m));
}
boost::thread _thread;
@@ -391,4 +384,4 @@ private:
shared_ptr<wxTimer> _timer;
};
-IMPLEMENT_APP (App)
+IMPLEMENT_APP(App)
diff --git a/src/tools/dcpomatic_server_cli.cc b/src/tools/dcpomatic_server_cli.cc
index ea78d41a5..a20b14f68 100644
--- a/src/tools/dcpomatic_server_cli.cc
+++ b/src/tools/dcpomatic_server_cli.cc
@@ -56,7 +56,7 @@ static void
help (string n)
{
cerr << "Syntax: " << n << " [OPTION]\n"
- << variant::insert_dcpomatic(" -v, --version show %1 version\n")
+ << variant::insert_dcpomatic(" -v, --version show {} version\n")
<< " -h, --help show this help\n"
<< " -t, --threads number of parallel encoding threads to use\n"
<< " --verbose be verbose to stdout\n"
@@ -127,7 +127,7 @@ main (int argc, char* argv[])
server.run ();
} catch (boost::system::system_error& e) {
if (e.code() == boost::system::errc::address_in_use) {
- cerr << program_name << variant::insert_dcpomatic(": address already in use. Is another %1 server instance already running?\n");
+ cerr << program_name << variant::insert_dcpomatic(": address already in use. Is another {} server instance already running?\n");
exit (EXIT_FAILURE);
}
cerr << program_name << ": " << e.what() << "\n";
diff --git a/src/tools/dcpomatic_verifier.cc b/src/tools/dcpomatic_verifier.cc
index f53f99e3d..c881019d8 100644
--- a/src/tools/dcpomatic_verifier.cc
+++ b/src/tools/dcpomatic_verifier.cc
@@ -27,24 +27,33 @@
#include "wx/about_dialog.h"
#include "wx/check_box.h"
#include "wx/dcpomatic_button.h"
+#include "wx/dir_dialog.h"
#include "wx/dir_picker_ctrl.h"
#include "wx/editable_list.h"
+#include "wx/file_dialog.h"
#include "wx/i18n_setup.h"
#include "wx/id.h"
+#include "wx/wx_signal_manager.h"
#include "wx/verify_dcp_progress_panel.h"
#include "wx/verify_dcp_result_panel.h"
#include "wx/wx_util.h"
#include "wx/wx_variant.h"
#include "lib/constants.h"
#include "lib/cross.h"
+#include "lib/dkdm_wrapper.h"
#include "lib/job_manager.h"
#include "lib/verify_dcp_job.h"
#include "lib/util.h"
#include "lib/variant.h"
+#include "lib/version.h"
+#include <dcp/dcp.h>
#include <dcp/search.h>
+#include <dcp/text_formatter.h>
#include <dcp/verify_report.h>
LIBDCP_DISABLE_WARNINGS
+#include <wx/cmdline.h>
#include <wx/evtloop.h>
+#include <wx/progdlg.h>
#include <wx/wx.h>
LIBDCP_ENABLE_WARNINGS
#ifdef __WXGTK__
@@ -56,6 +65,7 @@ using std::dynamic_pointer_cast;
using std::exception;
using std::make_shared;
using std::shared_ptr;
+using std::string;
using std::vector;
#if BOOST_VERSION >= 106100
using namespace boost::placeholders;
@@ -67,46 +77,61 @@ enum {
};
-class DirDialogWrapper : public wxDirDialog
+class DCPPath
{
public:
- DirDialogWrapper(wxWindow* parent)
- : wxDirDialog(parent, _("Choose a folder"), {}, wxDD_DIR_MUST_EXIST)
+ explicit DCPPath(boost::filesystem::path path, vector<dcp::DecryptedKDM> const& kdms)
+ : _path(std::move(path))
{
-
- }
-
- vector<boost::filesystem::path> get() const
- {
- return dcp::find_potential_dcps(boost::filesystem::path(wx_to_std(GetPath())));
+ check(kdms);
}
- void set(boost::filesystem::path)
+ void check(vector<dcp::DecryptedKDM> const& kdms)
{
- /* Not used */
+ dcp::DCP dcp(_path);
+ dcp.read(nullptr, true);
+ _encrypted = dcp.any_encrypted();
+ if (_encrypted) {
+ for (auto const& kdm: kdms) {
+ dcp.add(kdm);
+ }
+ }
+ _readable = dcp.can_be_read();
}
-private:
- void search(vector<boost::filesystem::path>& dcp, boost::filesystem::path path) const
+ string description() const
{
- if (dcp::filesystem::exists(path / "ASSETMAP") || dcp::filesystem::exists(path / "ASSETMAP.xml")) {
- dcp.push_back(path);
- } else if (boost::filesystem::is_directory(path)) {
- for (auto i: boost::filesystem::directory_iterator(path)) {
- search(dcp, i.path());
+ string d = _path.filename().string();
+ if (_encrypted) {
+ if (_readable) {
+ d += string{" "} + wx_to_std(_("(encrypted, have KDM)"));
+ } else {
+ d += string{" "} + wx_to_std(_("(encrypted, no KDM)"));
}
}
- };
-};
+ return d;
+ }
+ boost::filesystem::path path() const {
+ return _path;
+ }
+private:
+ boost::filesystem::path _path;
+ bool _encrypted;
+ bool _readable;
+};
class DOMFrame : public wxFrame
{
public:
- explicit DOMFrame(wxString const& title)
+ explicit DOMFrame(wxString const& title, bool start, vector<boost::filesystem::path> const& dcps_to_load)
: wxFrame(nullptr, -1, title)
+ /* Use a panel as the only child of the Frame so that we avoid
+ the dark-grey background on Windows.
+ */
+ , _overall_panel(new wxPanel(this, wxID_ANY))
{
auto bar = new wxMenuBar;
setup_menu(bar);
@@ -121,52 +146,96 @@ public:
auto overall_sizer = new wxBoxSizer(wxVERTICAL);
auto dcp_sizer = new wxBoxSizer(wxHORIZONTAL);
- add_label_to_sizer(dcp_sizer, this, _("DCPs"), true, 0, wxALIGN_CENTER_VERTICAL);
+ add_label_to_sizer(dcp_sizer, _overall_panel, _("DCPs"), true, 0, wxALIGN_CENTER_VERTICAL);
+
+ auto load_dcps = [this](vector<boost::filesystem::path> const& dcps) {
+ wxProgressDialog progress(variant::wx::dcpomatic(), _("Examining DCPs"));
+ vector<DCPPath> dcp_paths;
+ for (auto path: dcps) {
+ for (auto const& dcp: dcp::find_potential_dcps(path)) {
+ progress.Pulse();
+ dcp_paths.push_back(DCPPath(dcp, _kdms));
+ }
+ }
+ return dcp_paths;
+ };
- auto dcps = new EditableList<boost::filesystem::path, DirDialogWrapper>(
- this,
+ auto add = [&load_dcps](wxWindow* parent) {
+#if wxCHECK_VERSION(3, 1, 4)
+ DirDialog dialog(parent, _("Select DCP(s)"), wxDD_MULTIPLE, "AddVerifierInputPath");
+#else
+ DirDialog dialog(parent, _("Select DCP(s)"), 0, "AddVerifierInputPath");
+#endif
+
+ if (dialog.show()) {
+ return load_dcps(dialog.paths());
+ } else {
+ return std::vector<DCPPath>{};
+ }
+ };
+
+ _dcps = new EditableList<DCPPath>(
+ _overall_panel,
{ EditableListColumn(_("DCP"), 300, true) },
boost::bind(&DOMFrame::dcp_paths, this),
boost::bind(&DOMFrame::set_dcp_paths, this, _1),
- [](boost::filesystem::path p, int) { return p.filename().string(); },
+ add,
+ std::function<void (wxWindow*, DCPPath&)>(),
+ [](DCPPath p, int) { return p.description(); },
EditableListTitle::INVISIBLE,
- EditableListButton::NEW | EditableListButton::REMOVE
+ EditableListButton::NEW | EditableListButton::REMOVE,
+ _("Add KDM...")
);
- dcp_sizer->Add(dcps, 1, wxLEFT | wxEXPAND, DCPOMATIC_SIZER_GAP);
+ dcp_sizer->Add(_dcps, 1, wxLEFT | wxEXPAND, DCPOMATIC_SIZER_GAP);
overall_sizer->Add(dcp_sizer, 0, wxEXPAND | wxALL, DCPOMATIC_DIALOG_BORDER);
auto options_sizer = new wxBoxSizer(wxVERTICAL);
- _check_picture_details = new CheckBox(this, _("Verify picture asset details"));
+ _check_picture_details = new CheckBox(_overall_panel, _("Verify picture asset details"));
_check_picture_details->set(true);
_check_picture_details->SetToolTip(
_("Tick to check details of the picture asset, such as frame sizes and JPEG2000 bitstream validity. "
"These checks are quite time-consuming.")
);
options_sizer->Add(_check_picture_details, 0, wxBOTTOM, DCPOMATIC_SIZER_GAP);
- _write_log = new CheckBox(this, _("Write logs to DCP folders"));
+ _write_log = new CheckBox(_overall_panel, _("Write logs to DCP folders"));
options_sizer->Add(_write_log, 0, wxBOTTOM, DCPOMATIC_SIZER_GAP);
overall_sizer->Add(options_sizer, 0, wxLEFT, DCPOMATIC_DIALOG_BORDER);
auto actions_sizer = new wxBoxSizer(wxHORIZONTAL);
- _cancel = new Button(this, _("Cancel"));
+ _cancel = new Button(_overall_panel, _("Cancel"));
actions_sizer->Add(_cancel, 0, wxRIGHT, DCPOMATIC_SIZER_GAP);
- _verify = new Button(this, _("Verify"));
+ _verify = new Button(_overall_panel, _("Verify"));
actions_sizer->Add(_verify, 0, wxRIGHT, DCPOMATIC_SIZER_GAP);
- overall_sizer->Add(actions_sizer, 1, wxLEFT | wxRIGHT | wxALIGN_CENTER, DCPOMATIC_DIALOG_BORDER);
+ overall_sizer->Add(actions_sizer, 0, wxLEFT | wxRIGHT | wxALIGN_CENTER, DCPOMATIC_DIALOG_BORDER);
- _progress_panel = new VerifyDCPProgressPanel(this);
+ _progress_panel = new VerifyDCPProgressPanel(_overall_panel);
overall_sizer->Add(_progress_panel, 0, wxEXPAND | wxALL, DCPOMATIC_DIALOG_BORDER);
- _result_panel = new VerifyDCPResultPanel(this);
+ _result_panel = new VerifyDCPResultPanel(_overall_panel);
overall_sizer->Add(_result_panel, 0, wxEXPAND | wxALL, DCPOMATIC_DIALOG_BORDER);
- SetSizerAndFit(overall_sizer);
+ _overall_panel->SetSizerAndFit(overall_sizer);
_cancel->bind(&DOMFrame::cancel_clicked, this);
_verify->bind(&DOMFrame::verify_clicked, this);
+ _dcps->custom_button()->bind(&DOMFrame::add_kdm_clicked, this);
setup_sensitivity();
+
+ if (auto private_key = Config::instance()->decryption_chain()->key()) {
+ for (auto dkdm: Config::instance()->dkdms()->all_dkdms()) {
+ try {
+ _kdms.push_back(dcp::DecryptedKDM(dkdm, *private_key));
+ } catch (...) {}
+ }
+ }
+
+ set_dcp_paths(load_dcps(dcps_to_load));
+ _dcps->refresh();
+ if (start) {
+ signal_manager->when_idle(boost::bind(&DOMFrame::verify_clicked, this));
+ }
}
private:
@@ -177,7 +246,7 @@ private:
void help_about()
{
- AboutDialog dialog(this);
+ AboutDialog dialog(_overall_panel);
dialog.ShowModal();
}
@@ -220,8 +289,8 @@ private:
vector<shared_ptr<const VerifyDCPJob>> jobs;
for (auto const& dcp: _dcp_paths) {
auto job = make_shared<VerifyDCPJob>(
- std::vector<boost::filesystem::path>{dcp},
- std::vector<boost::filesystem::path>(),
+ std::vector<boost::filesystem::path>{dcp.path()},
+ _kdms,
options
);
job_manager->add(job);
@@ -253,7 +322,7 @@ private:
_result_panel->add(jobs);
if (_write_log->get()) {
for (size_t i = 0; i < _dcp_paths.size(); ++i) {
- dcp::TextFormatter formatter(_dcp_paths[i] / "REPORT.txt");
+ dcp::TextFormatter formatter(_dcp_paths[i].path() / "REPORT.txt");
dcp::verify_report({ jobs[i]->result() }, formatter);
}
}
@@ -263,18 +332,58 @@ private:
}
private:
- void set_dcp_paths (vector<boost::filesystem::path> dcps)
+ void set_dcp_paths(vector<DCPPath> dcps)
{
_dcp_paths = dcps;
setup_sensitivity();
}
- vector<boost::filesystem::path> dcp_paths() const
+ vector<DCPPath> dcp_paths() const
{
return _dcp_paths;
}
- std::vector<boost::filesystem::path> _dcp_paths;
+ void add_kdm_clicked()
+ {
+ FileDialog dialog(this, _("Select KDM"), char_to_wx("XML files|*.xml|All files|*.*"), wxFD_MULTIPLE, "AddKDMPath");
+ if (!dialog.show()) {
+ return;
+ }
+
+ for (auto path: dialog.paths()) {
+ try {
+ auto encrypted = dcp::EncryptedKDM(dcp::file_to_string(path));
+ _kdms.push_back(dcp::DecryptedKDM(encrypted, Config::instance()->decryption_chain()->key().get()));
+ } catch (dcp::KDMFormatError& e) {
+ error_dialog (
+ this,
+ _("Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM at all."),
+ std_to_wx(e.what())
+ );
+ return;
+ } catch (dcp::KDMDecryptionError &) {
+ error_dialog (
+ this,
+ _("Could not decrypt the DKDM. Perhaps it was not created with the correct certificate.")
+ );
+ } catch (exception& e) {
+ error_dialog(this, wxString::Format(_("Could not load KDM.")), std_to_wx(e.what()));
+ return;
+ }
+ }
+
+ wxProgressDialog progress(variant::wx::dcpomatic(), _("Checking KDM"));
+ for (auto& dcp: _dcp_paths) {
+ dcp.check(_kdms);
+ progress.Pulse();
+ }
+ _dcps->refresh();
+ }
+
+ wxPanel* _overall_panel = nullptr;
+ EditableList<DCPPath>* _dcps;
+ std::vector<DCPPath> _dcp_paths;
+ std::vector<dcp::DecryptedKDM> _kdms;
CheckBox* _check_picture_details;
CheckBox* _write_log;
Button* _cancel;
@@ -285,6 +394,14 @@ private:
};
+static const wxCmdLineEntryDesc command_line_description[] = {
+ { wxCMD_LINE_SWITCH, "s", "start", "start verifying specified DCP(s)", wxCMD_LINE_VAL_NONE, wxCMD_LINE_PARAM_OPTIONAL },
+ { wxCMD_LINE_SWITCH, "v", "version", "show version", wxCMD_LINE_VAL_NONE, wxCMD_LINE_PARAM_OPTIONAL },
+ { wxCMD_LINE_PARAM, 0, 0, "DCP to verify", wxCMD_LINE_VAL_STRING, wxCMD_LINE_PARAM_OPTIONAL },
+ { wxCMD_LINE_NONE, "", "", "", wxCmdLineParamType (0), 0 }
+};
+
+
/** @class App
* @brief The magic App class for wxWidgets.
*/
@@ -337,7 +454,10 @@ private:
*/
Config::drop();
- _frame = new DOMFrame(variant::wx::dcpomatic_verifier());
+ signal_manager = new wxSignalManager(this);
+ Bind(wxEVT_IDLE, boost::bind(&App::idle, this, _1));
+
+ _frame = new DOMFrame(variant::wx::dcpomatic_verifier(), _start, _dcps_to_load);
SetTopWindow(_frame);
_frame->Maximize();
_frame->Show();
@@ -401,7 +521,41 @@ private:
report_exception();
}
+ void OnInitCmdLine(wxCmdLineParser& parser) override
+ {
+ parser.SetDesc(command_line_description);
+ parser.SetSwitchChars(char_to_wx("-"));
+ }
+
+ bool OnCmdLineParsed(wxCmdLineParser& parser) override
+ {
+ if (parser.Found(char_to_wx("version"))) {
+ std::cout << "dcpomatic version " << dcpomatic_version << " " << dcpomatic_git_commit << "\n";
+ exit(EXIT_SUCCESS);
+ }
+
+ _start = parser.Found(char_to_wx("start"));
+ for (auto i = 0UL; i < parser.GetParamCount(); ++i) {
+ auto const path = boost::filesystem::path(wx_to_std(parser.GetParam(0)));
+ if (path.filename_is_dot()) {
+ _dcps_to_load.push_back(path.parent_path());
+ } else {
+ _dcps_to_load.push_back(path);
+ }
+ }
+
+ return true;
+ }
+
+ void idle(wxIdleEvent& ev)
+ {
+ signal_manager->ui_idle();
+ ev.Skip();
+ }
+
DOMFrame* _frame = nullptr;
+ bool _start = false;
+ std::vector<boost::filesystem::path> _dcps_to_load;
};
diff --git a/src/tools/po/cs_CZ.po b/src/tools/po/cs_CZ.po
index 4d144bf4a..3c1a1a603 100644
--- a/src/tools/po/cs_CZ.po
+++ b/src/tools/po/cs_CZ.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
"PO-Revision-Date: 2025-06-11 07:50+0200\n"
"Last-Translator: Tomáš Begeni <begeni@razdva.cz>\n"
"Language-Team: \n"
@@ -28,28 +28,28 @@ msgstr "%d KDM zapsat do %s"
msgid "%d KDMs written to %s"
msgstr "%d KDMs zapsat do %s"
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
msgstr "%s již existuje jako soubor, takže jej nemůžete použít pro DCP."
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, c-format
msgid "%s could not start"
msgstr "%s nelze spustit"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, c-format
msgid "%s could not start %s"
msgstr "%s nelze spustit %s"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, c-format
msgid "%s could not start (%s)"
msgstr "%s nelze spustit (%s)"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, c-format
msgid "%s could not start."
msgstr "%s nelze spustit"
@@ -58,125 +58,141 @@ msgstr "%s nelze spustit"
msgid "&Add Film...\tCtrl-A"
msgstr "&Přidat film…\tCtrl-A"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr "&Přidat OV…"
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "&Zavřít"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
msgid "&Close\tCtrl-W"
msgstr "&Zavřít\tCtrl-W"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "&Upravit"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&Konec"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&Soubor"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "&Pomoc"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&Práce"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&Vytvořit DCP\tCtrl-M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&Otevřít…\tCtrl-O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
msgid "&Preferences...\tCtrl-,"
msgstr "&Nastavení…\tCtrl-,"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&Nastavení…\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&Ukončit"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&Uložit\tCtrl-S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
msgid "&Save frame to file...\tCtrl-S"
msgstr "&Uložit snímek do souboru…\tCtrl-S"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "&Odeslat DCP do TMS"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "&Nástroje"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "&Zobrazit"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr "<b>Playlist:</b>"
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr "<b>Playlisty</b>"
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "O"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, c-format
msgid "About %s"
msgstr "O %s"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
msgid "Add"
msgstr "Přidat"
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
msgid "Add &KDM..."
msgstr "Přidat &KDM…"
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "Přidat &KDM…"
+
+#: src/tools/dcpomatic_playlist.cc:80
msgid "Add content"
msgstr "Přidat obsah"
@@ -196,8 +212,8 @@ msgstr "Přidat složku…"
msgid "Add..."
msgstr "Přidat…"
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, c-format
msgid ""
"An exception occurred: %s\n"
@@ -208,10 +224,10 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -222,7 +238,7 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -233,8 +249,8 @@ msgstr ""
"\n"
"\\%s"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -245,30 +261,30 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, c-format
msgid "An unknown error has occurred with the %s."
msgstr "U %s došlo k neznámé chybě."
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "Vyskytl se neznámy problém."
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, c-format
msgid "An unknown exception occurred. %s"
msgstr "Došlo k neznámé výjimce. %s"
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr "Text komentáře"
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
@@ -276,34 +292,46 @@ msgstr ""
"Jste si jisti, že chcete obnovit předvolby na výchozí hodnoty? Tento krok "
"nelze vrátit zpět."
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr "Chybné nastavení pro %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr "CPL"
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "CPL obsah není enkryptovaný."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr "CPL: %s"
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "Zkontrolovat aktualizace"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr "Výběr složky DCP"
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, c-format
msgid "Close %s"
msgstr "Zavřít %s"
@@ -312,49 +340,49 @@ msgstr "Zavřít %s"
msgid "Close without saving film"
msgstr "Zavřít bez uložení filmu"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr "Skryté tytulky…"
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr "Kombinovat"
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr "Kombinování DCP"
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr "Text názvu obsahu"
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr "Kopírovat DCP"
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "Kopírovat nastavení\tCtrl-C"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr "Nemohu vytvořit složku pro uložení filmu."
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
msgstr "Nelze dešifrovat DKDM. Možná nebylo vytvořeno správným certifikátem."
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
msgid "Could not duplicate project."
msgstr "Projekt nelze duplikovat."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "Konvertor nebyl nalezen."
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
msgid "Could not find player."
msgstr "Nemohu najít přehrávač."
@@ -365,21 +393,21 @@ msgid ""
"running."
msgstr "Nelze načíst nové dávkové úlohy. Možná je spuštěna jiná instance %s."
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
msgid "Could not load DCP"
msgstr "Nemohu načíst DCP"
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, c-format
msgid "Could not load DCP %s"
msgstr "Nezle načíst DCP %s"
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, c-format
msgid "Could not load DCP %s."
msgstr "Nezle načíst DCP %s."
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, c-format
msgid ""
"Could not load DCP.\n"
@@ -390,40 +418,42 @@ msgstr ""
"\n"
"%s."
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "Nelze načíst KDM."
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr "Nelze načíst DCP z %s"
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
-msgstr "Nelze načíst film %1"
+#, c++-format
+msgid "Could not load film {}"
+msgstr "Nelze načíst film {}"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "Nelze načíst film %1 (%2)"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "Nelze načíst film {} ({})"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, c-format
msgid "Could not load stress test file %s"
msgstr "Nepodařilo se načíst soubor zátěžového testu %s"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr "Nemohu vytvořit DCP."
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, c-format
msgid "Could not open film at %s"
msgstr "Nemohu otevřít film na %s"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, c-format
msgid "Could not open this folder as a %s project."
msgstr "Tuto složku se nepodařilo otevřít jako projekt %s."
@@ -436,7 +466,7 @@ msgstr ""
"Nelze číst soubor jako KDM. Je příliš velký. Ujistěte se, že načítáte "
"soubor DKDM (XML)."
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
@@ -444,23 +474,23 @@ msgstr ""
"Nelze číst soubor jako KDM. Možná je špatně formátovaný, nebo to vůbec není "
"KDM."
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr "Stávající soubor předvoleb nelze odstranit"
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
msgid "Could not save project."
msgstr "Projekt nelze uložit."
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
msgid "Could not save template."
msgstr "Šablonu nelze uložit."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "Nemohu zobrazit DCP."
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
@@ -468,22 +498,22 @@ msgstr ""
"Dávkový převodník nelze spustit. Možná si jej budete muset stáhnout z "
"dcpomatic.com."
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
"Přehrávač se nepodařilo spustit. Možná si jej budete muset stáhnout z "
"dcpomatic.com."
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
msgstr ""
"Nemohu zapsat do konfiguračního souboru %s. Vaše změny nebudou uloženy."
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
msgid "Could not write to config file. Your changes have not been saved."
msgstr "Nemohu zapsat do konfiguračního souboru. Vaše změny nebudou uloženy."
@@ -491,23 +521,27 @@ msgstr "Nemohu zapsat do konfiguračního souboru. Vaše změny nebudou uloženy
msgid "Create KDMs"
msgstr "Vytvořit KDMs"
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr "Tvůrce"
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
msgid "DCP"
msgstr "DCP"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
msgstr "DCP-o-matic Encode Server"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr "DCP"
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr "DCP se úspěšně spojily."
@@ -520,23 +554,23 @@ msgstr "DKDM"
msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr "DKDM %s je již v seznamu DKDM a nebude znovu přidán."
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr "Dekódovat v plném rozlišení"
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr "Dekódovat v polovičním rozlišení"
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr "Dekódovat ve čtvrtinovém rozlišení"
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr "Smazat"
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
@@ -545,16 +579,16 @@ msgstr ""
"Nainstalovali jste %s Disk Writer.pkg z .dmg? Zkontrolujte to a zkuste to "
"znovu."
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Disk Writer"
msgstr "Disk Writer"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr "Nedělat nic"
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
@@ -562,7 +596,7 @@ msgstr ""
"Vidíte dialog „Řízení uživatelských účtů“ s dotazem na "
"dcpomatic2_disk_writer.exe? Pokud ano, klikněte na ‚Ano‘ a zkuste to znovu."
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr "Opravdu chcete přepsat stávající DCP %s?"
@@ -575,23 +609,23 @@ msgstr "Nezavírejte"
msgid "Don't duplicate"
msgstr "Neduplikujte"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr "Dolů"
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr "Disk"
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr "Dvojitá obrazovka\tShift+F11"
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "Duplicitní film"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "Duplikovat a otevřít…"
@@ -599,39 +633,50 @@ msgstr "Duplikovat a otevřít…"
msgid "Duplicate without saving film"
msgstr "Duplikovat bez uložení filmu"
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "Duplikovat…"
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr "Délka"
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr "Upravit reel"
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+#, fuzzy
+msgid "Edit..."
+msgstr "&Upravit"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "Enkódovací servery…"
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr "Šifrované"
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr "Vstupní bod"
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+#, fuzzy
+msgid "Examining DCPs"
+msgstr "Kombinování DCP"
+
+#: src/tools/dcpomatic.cc:1446
msgid "Export preferences..."
msgstr "Předvolby exportu…"
-#: src/tools/dcpomatic.cc:1403
-msgid "Export subtitles..."
+#: src/tools/dcpomatic.cc:1418
+#, fuzzy
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "Exportovat titulky…"
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
msgid "Export video file...\tCtrl-E"
msgstr "Exportovat video soubor…\tCtrl-E"
@@ -639,11 +684,11 @@ msgstr "Exportovat video soubor…\tCtrl-E"
msgid "Export..."
msgstr "Export…"
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr "Oko"
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "Soubor %s již existuje. Chcete soubor přepsat?"
@@ -654,7 +699,7 @@ msgstr "Soubor %s již existuje. Chcete soubor přepsat?"
msgid "Film changed"
msgstr "Film byl změněn"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr "Vyhledávání disků"
@@ -663,35 +708,35 @@ msgstr "Vyhledávání disků"
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "Složka %s již existuje. Chcete jej přepsat?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "Snímků za sekundu"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr "Na celou obrazovku\tF11"
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "Tipy…"
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
msgid "Import preferences..."
msgstr "Importovat předvolby…"
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr "Vstup DCP"
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr "Vnitřní doba trvání"
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr "Vydavatel"
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -707,61 +752,61 @@ msgstr ""
msgid "KDM|Timing"
msgstr "KDM|Timing"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr "Vlevo"
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr "Délka"
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
msgid "Loading content"
msgstr "Načítání obsahu"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
msgid "Make &DKDMs...\tCtrl-D"
msgstr "Vytvořit &KDM…\tCtrl-D"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "Vytvořit &KDM\tCtrl-K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "Vytvořit DCP v &batch konvertéri\tCtrl-B"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, c-format
msgid "Make DKDM for %s..."
msgstr "Vytvořte DKDM pro %s..."
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr "Správa šablon..."
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr "Název"
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr "Novový"
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "Nový film"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr "Nový Playlist"
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Nový...\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
@@ -769,7 +814,7 @@ msgstr ""
"V této složce nebyl nalezen žádný ASSETMAP nebo ASSETMAP.xml. Vyberte prosím "
"složku DCP."
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
@@ -777,11 +822,11 @@ msgstr ""
"V předvolbách není zadána žádná složka seznamu skladeb. Nastavte jednu a "
"zkuste to znovu."
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr "Otevřít DCP v &player"
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr "Otevřete DCP pomocí Soubor -> Otevřít"
@@ -789,16 +834,16 @@ msgstr "Otevřete DCP pomocí Soubor -> Otevřít"
msgid "Output"
msgstr "Výstup"
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr "Složka pro uložení DCP"
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr "PKL: %s"
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "Vložit nastavení…\tCtrl-V"
@@ -810,11 +855,11 @@ msgstr "Pozastavit nebo obnovit konverzi"
msgid "Pause/resume"
msgstr "Pozastavit/obnovit"
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr "Obrázek"
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
@@ -823,73 +868,73 @@ msgstr ""
"Zkontrolujte, zda nemáte povolen řízený přístup ke složkám systému Windows "
"pro %s."
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr "Otázka|N"
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr "Otázka|Y"
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
msgid "Quit"
msgstr "Ukončit"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr "Znovu vytvořit řetězec dešifrování KDM"
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr "Znovu vytvořit podpisové certifikáty"
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr "Reels"
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr "Obnovit"
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr "Poznámky k vydání"
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "Vyjmout"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "Nahlásit problém..."
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Obnovit původní nastavení"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr "Vpravo"
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
msgid "S&how DCP in Explorer"
msgstr "Zobrazit DCP v Průzkumníkovi"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
msgid "S&how DCP in Files"
msgstr "Zobrazit DCP v souborech"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
msgid "S&how DCP in Finder"
msgstr "Zobrazit DCP ve Findieru"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
msgid "Save"
msgstr "Uložit"
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr "Uložit jako &šablonu…"
@@ -911,7 +956,7 @@ msgstr "Uložit film a zavřít"
msgid "Save film and duplicate"
msgstr "Uložit film a duplikovat"
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr "Uložit snímek do souboru"
@@ -919,14 +964,19 @@ msgstr "Uložit snímek do souboru"
msgid "Screens"
msgstr "Obrazovky"
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr "Vybrat DCP k otevření"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr "Vybrat DCP k otevření jako OV"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "Vybrat KDM"
+
#: src/tools/dcpomatic_kdm.cc:821
msgid "Select DKDM File"
msgstr "Vybrat DKDM soubor"
@@ -935,15 +985,15 @@ msgstr "Vybrat DKDM soubor"
msgid "Select DKDM file"
msgstr "Vybrat DKDM soubor"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr "Vybrat KDM"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr "Označit všechny\tShift-Ctrl-A"
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "Vybrat film k otevření"
@@ -951,36 +1001,36 @@ msgstr "Vybrat film k otevření"
msgid "Send KDM emails"
msgstr "Poslat KDM emailem"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr "Nastavit rozlišení dekódování tak, aby odpovídalo zobrazení"
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr "Zvuk"
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr "Zadejte soubor ZIP"
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr "Stav..."
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr "Titulky"
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr "Systémové informace…"
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, c-format
msgid "The %s download server could not be contacted."
msgstr "%s download server je nedostupný."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -999,7 +1049,7 @@ msgstr ""
"DCP pro tento film bude zabírat alespoň %.1f GB a disk, který momentálně "
"používáte má jen %.1f GB dostupných. Chcete tento film přidat do fronty?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr "KDM v tuto chvíli neumožňuje přehrávání tohoto obsahu."
@@ -1022,11 +1072,11 @@ msgstr ""
"Počáteční období KDM je před (nebo blízko) začátku doby platnosti "
"podpisového certifikátu. Použijte pozdější čas zahájení pro tento KDM."
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr "Řetěz certifikátů pro podepisování je neplatný"
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1043,7 +1093,7 @@ msgstr ""
"řetězec certifikátů pro dešifrování KDM? Možná budete chtít zde říci \"Ne\" "
"a před pokračováním zálohovat konfiguraci"
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1058,7 +1108,7 @@ msgstr ""
"vytvořit\n"
"řetězec certifikátů pro podepisování DCP a KDM?"
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1077,7 +1127,7 @@ msgstr ""
"certifikátů\n"
"pro podepisování DCP a KDM?"
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1091,7 +1141,7 @@ msgstr ""
" To způsobuje problémy s přehráváním DCP na některých systémech.\n"
"Chcete znovu vytvořit řetězec certifikátů pro podepisování DCP a KDM?"
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1106,17 +1156,18 @@ msgstr ""
"vytvořit\n"
"řetězec certifikátů pro podepisování DCP a KDM?"
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
-msgstr "Složka %1 již existuje a není prázdná. Chcete pokračovat?"
+msgstr "Složka {} již existuje a není prázdná. Chcete pokračovat?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr "Vybraný disk již není k dispozici. Vyberte prosím jiný."
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
@@ -1125,7 +1176,7 @@ msgstr ""
"Disk %s nelze odpojit.\n"
"Zavřete všechny aplikace, které jej používají, a zkuste to znovu. (%s)"
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
@@ -1133,17 +1184,17 @@ msgstr ""
"Existující konfigurace se nepodařilo načíst. Místo toho budou použity "
"výchozí hodnoty. To může chvíli trvat."
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, c-format
msgid "There are no new versions of %s available."
msgstr "Nejsou k dispozici žádné nové verze %s."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr "Ještě nejsou dokončené úlohy; chcete přestat?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1151,7 +1202,7 @@ msgstr ""
"Tento film byl vytvořený starší verzí DVD-o-matic a nemusí v této verzi "
"fungovat správně. Prosím, zkontrolujte nastavení filmu."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1162,57 +1213,81 @@ msgstr ""
"chcete přehrávat právě tuto složku, vyberte složku DCP uvnitř složky "
"projektu %s."
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:712
msgid "Timing..."
msgstr "Časování…"
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
msgid "Tools"
msgstr "Nástroje"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr "Zkuste odebrat znaky %s z názvu složky."
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr "Typ"
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Nedokončené úlohy"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr "Odinstalovat…"
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr "Nerozpoznaná přípona souboru %s (použijte .jpg, .jpeg nebo .png)"
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr "Nahahoru"
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+#, fuzzy
+msgid "Verify"
+msgstr "Ověřit DCP"
+
+#: src/tools/dcpomatic_player.cc:1041
msgid "Verify DCP"
msgstr "Ověřit DCP"
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
msgid "Verify DCP..."
msgstr "Ověřuji DCP…"
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr "Soubor verze (VF)..."
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Analýza videa..."
+#: src/tools/dcpomatic_verifier.cc:194
+#, fuzzy
+msgid "Write logs to DCP folders"
+msgstr "Výběr složky DCP"
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
@@ -1221,7 +1296,7 @@ msgstr ""
"Chystáte se odstranit DKDM. To znemožní dešifrovat DCP pro které byl DKDM "
"vyroben a nelze jej vrátit zpět. Opravu odstranit?"
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1240,7 +1315,7 @@ msgstr ""
"<span weight=\"bold\" size=\"larger\">ZÁLOHOVAT TENTO SOUBOR</span> protože "
"pokud se ztratí vaše DKDM (a DCPs, které chrání) bude zbytečné."
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1256,7 +1331,7 @@ msgstr ""
"Měli byste se ujistit, že jsou tyto soubory <span weight=\"bold\" "
"size=\"larger\">ZAZÁLOHOVÁNY</span> pokud chcete vytvořit KDM pro tento film."
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1267,7 +1342,7 @@ msgstr ""
"paměť dostupnou pro %s a může způsobit chyby. Důrazně doporučujeme "
"nainstalovat 64bitovou verzi %s."
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
@@ -1275,9 +1350,9 @@ msgstr ""
"Nepotvrdili jste správně, že jste si přečetli právě zobrazené varování. "
"Prosím zkuste to znovu."
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
@@ -1285,6 +1360,10 @@ msgstr ""
"Nebyla vybraná žádná složka. Ujistěte se, že jste vybrali složku před "
"stiskem Otevřít."
+#, fuzzy
+#~ msgid "Choose a folder"
+#~ msgstr "Výběr složky DCP"
+
#, fuzzy, c-format
#~ msgid ""
#~ "You did not correctly confirm that you read the warning that was just "
diff --git a/src/tools/po/da_DK.po b/src/tools/po/da_DK.po
index 74bbdae93..918e6b446 100644
--- a/src/tools/po/da_DK.po
+++ b/src/tools/po/da_DK.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: DCP-o-matic\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
"PO-Revision-Date: 2019-04-06 14:07+0200\n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -29,30 +29,30 @@ msgstr "%d KDM skrevet til %s"
msgid "%d KDMs written to %s"
msgstr "%d KDMer skrevet til %s"
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, fuzzy, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
msgstr ""
-"%1 findes allerede som en fil, så du kan ikke bruge dette navn til en ny "
+"{} findes allerede som en fil, så du kan ikke bruge dette navn til en ny "
"film."
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, fuzzy, c-format
msgid "%s could not start"
msgstr "DCP-o-matic kunne ikke starte"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, fuzzy, c-format
msgid "%s could not start %s"
msgstr "DCP-o-matic kunne ikke starte"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, fuzzy, c-format
msgid "%s could not start (%s)"
msgstr "DCP-o-matic kunne ikke starte"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, fuzzy, c-format
msgid "%s could not start."
msgstr "DCP-o-matic kunne ikke starte"
@@ -61,128 +61,144 @@ msgstr "DCP-o-matic kunne ikke starte"
msgid "&Add Film...\tCtrl-A"
msgstr "&Tilføj film...\tCtrl-A"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr "&Tilføj OV..."
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "&Luk"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
msgid "&Close\tCtrl-W"
msgstr "&Luk\tCtrl-W"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "&Rediger"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&Afslut"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&Fil"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "&Hjælp"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&Job"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&Fremstil DCP\tCtrl-M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&Åbn...\tCtrl-O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
#, fuzzy
msgid "&Preferences...\tCtrl-,"
msgstr "&Indstillinger...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&Indstillinger...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&Afslut"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&Gem\tCtrl-S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
#, fuzzy
msgid "&Save frame to file...\tCtrl-S"
msgstr "Eksporter...\tCtrl-E"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "&Send DCP til TMS"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "&Værktøjer"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "&Vis"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "Om"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, fuzzy, c-format
msgid "About %s"
msgstr "Om"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
msgid "Add"
msgstr "Tilføj"
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
#, fuzzy
msgid "Add &KDM..."
msgstr "&Tilføj KDM..."
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "&Tilføj KDM..."
+
+#: src/tools/dcpomatic_playlist.cc:80
msgid "Add content"
msgstr "Tilføj indhold"
@@ -203,8 +219,8 @@ msgstr "Tilføj folder..."
msgid "Add..."
msgstr "Tilføj..."
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, fuzzy, c-format
msgid ""
"An exception occurred: %s\n"
@@ -214,10 +230,10 @@ msgstr ""
"Der opstod en fejl: %s.\n"
"\n"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -227,7 +243,7 @@ msgstr ""
"Der opstod en fejl: %s (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -237,8 +253,8 @@ msgstr ""
"Der opstod en fejl: %s (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, fuzzy, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -248,30 +264,30 @@ msgstr ""
"Der opstod en fejl: %s.\n"
"\n"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, fuzzy, c-format
msgid "An unknown error has occurred with the %s."
msgstr "En ukendt fejl er opstået i DCP-o-matic serveren."
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "Der er sket en uhåndteret fejl."
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, fuzzy, c-format
msgid "An unknown exception occurred. %s"
msgstr "Der er sket en uhåndteret fejl."
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr ""
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
@@ -279,34 +295,46 @@ msgstr ""
"Er du sikker på at du vil nulstille indstillingerne? Denne handling kan ikke "
"annulleres."
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr "Forkert indstilling af %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr "CPL"
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "CPL'ens indhold er ikke krypteret."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "Søg efter opdateringer"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr ""
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, fuzzy, c-format
msgid "Close %s"
msgstr "&Luk"
@@ -315,35 +343,35 @@ msgstr "&Luk"
msgid "Close without saving film"
msgstr "Afslut uden at gemme film"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr "Faste tekster..."
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr ""
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "Kopier indstillinger\tCtrl-C"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr "Kunne ikke oprette folder til at gemme film"
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
@@ -351,16 +379,16 @@ msgstr ""
"Kunne ikke dekryptere DKDM. Måske er den ikke oprettet med det korrekte "
"certifikat."
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
#, fuzzy
msgid "Could not duplicate project."
msgstr "Kunne ikke finde afspiller."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "Kunne ikke finde batch konverteringsprogram."
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
msgid "Could not find player."
msgstr "Kunne ikke finde afspiller."
@@ -371,63 +399,65 @@ msgid ""
"running."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
#, fuzzy
msgid "Could not load DCP"
msgstr "Kunne ikke danne DCP: %s."
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, fuzzy, c-format
msgid "Could not load DCP %s"
-msgstr "Kunne ikke indlæse DCP %1."
+msgstr "Kunne ikke indlæse DCP {}."
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, fuzzy, c-format
msgid "Could not load DCP %s."
-msgstr "Kunne ikke indlæse DCP %1."
+msgstr "Kunne ikke indlæse DCP {}."
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, fuzzy, c-format
msgid ""
"Could not load DCP.\n"
"\n"
"%s."
-msgstr "Kunne ikke indlæse DCP %1."
+msgstr "Kunne ikke indlæse DCP {}."
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "Kunne ikke indlæse KDM."
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr "Kunne ikke indlæse DCP fra %s."
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
-msgstr "Kunne ikke indlæse film %1"
+#, c++-format
+msgid "Could not load film {}"
+msgstr "Kunne ikke indlæse film {}"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "Kunne ikke indlæse film %1 (%2)"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "Kunne ikke indlæse film {} ({})"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, fuzzy, c-format
msgid "Could not load stress test file %s"
-msgstr "Kunne ikke indlæse film %1"
+msgstr "Kunne ikke indlæse film {}"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr "Kunne ikke danne DCP."
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, c-format
msgid "Could not open film at %s"
msgstr "Kunne ikke indlæse film ved %s"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, fuzzy, c-format
msgid "Could not open this folder as a %s project."
msgstr "Kunne ikke indlæse film ved %s"
@@ -440,7 +470,7 @@ msgstr ""
"Kunne ikke genkende filen som en KDM. Den er alt for stor. Kontroller at "
"du prøver at indlæse en DKDM (XML) fil."
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
@@ -448,44 +478,44 @@ msgstr ""
"Kunne ikke genkende filen som en KDM. Måske er der fejl i formatet, eller "
"også er den ikke en KDM."
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr ""
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
#, fuzzy
msgid "Could not save project."
msgstr "Kunne ikke danne DCP."
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
#, fuzzy
msgid "Could not save template."
msgstr "Kunne ikke finde afspiller."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "Kunne ikke vise DCP."
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
msgstr ""
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
msgstr ""
"Kunne ikke skrive til config filen i %s. Dine ændringer er ikke blevet gemt."
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
msgid "Could not write to config file. Your changes have not been saved."
msgstr ""
"Kunne ikke skrive til konfigurationsfilen. Dine ændringer er ikke blevet "
@@ -495,23 +525,27 @@ msgstr ""
msgid "Create KDMs"
msgstr "Dan KDMer"
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
msgid "DCP"
msgstr "DCP"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
msgstr "DCP-o-matic Kodningsserver"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr ""
@@ -524,46 +558,46 @@ msgstr "DKDM"
msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr ""
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr "Dekod med fuld opløsning"
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr "Dekod med halv opløsning"
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr "Dekod med kvart opløsning"
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
"again."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
#, fuzzy
msgid "Disk Writer"
msgstr "DCP-o-matic KDM Generator"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
msgstr ""
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr "Vil du overskrive den eksisterende DCP %s?"
@@ -576,23 +610,23 @@ msgstr "Luk ikke"
msgid "Don't duplicate"
msgstr "Dupliker ikke"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr "Ned"
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr ""
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr "Dobbeltskærm\tShift+F11"
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "Dupliker Film"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "Dupliker og åben..."
@@ -600,41 +634,50 @@ msgstr "Dupliker og åben..."
msgid "Duplicate without saving film"
msgstr "Dupliker uden at gemme film"
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "Dupliker"
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+#, fuzzy
+msgid "Edit..."
+msgstr "&Rediger"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "Kodnings-servere..."
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr "Krypteret"
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr ""
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+msgid "Examining DCPs"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1446
#, fuzzy
msgid "Export preferences..."
msgstr "Gendan standard indstillinger"
-#: src/tools/dcpomatic.cc:1403
+#: src/tools/dcpomatic.cc:1418
#, fuzzy
-msgid "Export subtitles..."
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "Eksporter...\tCtrl-E"
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
#, fuzzy
msgid "Export video file...\tCtrl-E"
msgstr "Eksporter...\tCtrl-E"
@@ -644,11 +687,11 @@ msgstr "Eksporter...\tCtrl-E"
msgid "Export..."
msgstr "Eksporter...\tCtrl-E"
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr ""
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "Filen %s eksisterer allerede. Vil du overskrive den?"
@@ -659,7 +702,7 @@ msgstr "Filen %s eksisterer allerede. Vil du overskrive den?"
msgid "Film changed"
msgstr "Film ændret"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr ""
@@ -668,36 +711,36 @@ msgstr ""
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "Filen %s eksisterer allerede. Vil du overskrive den?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "Billeder pr. sekund"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr "Fuld skærm\tF11"
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "Tips..."
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
#, fuzzy
msgid "Import preferences..."
msgstr "Gendan standard indstillinger"
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr ""
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -710,79 +753,79 @@ msgstr ""
msgid "KDM|Timing"
msgstr "Timing"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr ""
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
msgid "Loading content"
msgstr "Indlæser indhold"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
#, fuzzy
msgid "Make &DKDMs...\tCtrl-D"
msgstr "Fremstil &KDM'er...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "Fremstil &KDM'er...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "Dan DCP i &batch konvertering\tCtrl-B"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, fuzzy, c-format
msgid "Make DKDM for %s..."
msgstr "Dan DKDM til DCP-o-matic..."
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr "Håndter skabeloner..."
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr "Navn"
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr ""
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "Ny film"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
#, fuzzy
msgid "New Playlist"
msgstr "Gem playliste"
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Ny...\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
msgstr ""
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr "Åben DCP i &afspiller"
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr ""
@@ -790,16 +833,16 @@ msgstr ""
msgid "Output"
msgstr "Output"
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "Indsæt indstillinger...\tCtrl-V"
@@ -811,88 +854,88 @@ msgstr ""
msgid "Pause/resume"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr ""
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
"for %s."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr "Spørgsmål|N"
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr "Spørgsmål|J"
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
#, fuzzy
msgid "Quit"
msgstr "&Afslut"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr ""
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr ""
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "Fjern"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "Rapporter et problem..."
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Gendan standard indstillinger"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr ""
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
#, fuzzy
msgid "S&how DCP in Explorer"
msgstr "V&is DCP"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
#, fuzzy
msgid "S&how DCP in Files"
msgstr "V&is DCP"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
#, fuzzy
msgid "S&how DCP in Finder"
msgstr "V&is DCP"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
msgid "Save"
msgstr ""
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr "Gem som skabelon..."
@@ -914,7 +957,7 @@ msgstr "Gem film og luk"
msgid "Save film and duplicate"
msgstr "Gem film og dupliker"
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr ""
@@ -922,14 +965,19 @@ msgstr ""
msgid "Screens"
msgstr "Sale"
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr "Vælg DCP der skal åbnes"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr "Vælg DCP der skal åbnes som OV"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "Vælg KDM"
+
#: src/tools/dcpomatic_kdm.cc:821
#, fuzzy
msgid "Select DKDM File"
@@ -939,15 +987,15 @@ msgstr "Vælg DKDM fil"
msgid "Select DKDM file"
msgstr "Vælg DKDM fil"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr "Vælg KDM"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "Vælg film der skal åbnes"
@@ -955,36 +1003,36 @@ msgstr "Vælg film der skal åbnes"
msgid "Send KDM emails"
msgstr "Send KDM emails"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr "Sæt dekodningsopløsning til at passe med skærmen"
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr ""
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr ""
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr ""
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr ""
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, fuzzy, c-format
msgid "The %s download server could not be contacted."
msgstr "Kunne ikke få forbindelse til DCP-o-matic-serveren."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -1003,7 +1051,7 @@ msgstr ""
"DCP'en til denne film kommer til at fylde ca. %.1f GB, og diskene du bruger "
"har kun %.1f GB til rådighed. Vil du alligevel tilføje denne film til køen?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr "Denne KDM tillader ikke at indholdet vises på dette tidspunkt."
@@ -1021,11 +1069,11 @@ msgid ""
"certificate's validity period. Use a later start time for this KDM."
msgstr ""
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr ""
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1036,7 +1084,7 @@ msgid ""
"configuration before continuing."
msgstr ""
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1046,7 +1094,7 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1058,7 +1106,7 @@ msgid ""
"for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1068,7 +1116,7 @@ msgid ""
"Do you want to re-create the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1078,26 +1126,27 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
msgstr ""
-"Folderen %1 eksisterer allerede og er ikke tom. Er du sikker på, at du vil "
+"Folderen {} eksisterer allerede og er ikke tom. Er du sikker på, at du vil "
"benytte den?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
"Close any application that is using it, then try again. (%s)"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
@@ -1105,17 +1154,17 @@ msgstr ""
"Kunne ikke indlæse indstillingerne og benytter i stedet "
"standardindstillingerne. Det kan tage et lille stykke tid at klargøre."
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, fuzzy, c-format
msgid "There are no new versions of %s available."
msgstr "Der er ingen nye versioner af DCP-o-matic tilgængelig."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr "Der er uafsluttede jobs. Er du sikker på, at du vil afslutte?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1124,7 +1173,7 @@ msgstr ""
"måske ikke indlæses korrekt i denne version. Sørg for at verificere filmens "
"indstillinger."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1132,68 +1181,91 @@ msgid ""
"you want to play."
msgstr ""
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:712
#, fuzzy
msgid "Timing..."
msgstr "Timing"
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
#, fuzzy
msgid "Tools"
msgstr "&Værktøjer"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr "Prøv at fjerne %s tegenene fra dit foldernavn."
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr "Type"
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Uafsluttede jobs"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr ""
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr "Op"
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+#, fuzzy
+msgid "Verify"
+msgstr "Verificer DCP"
+
+#: src/tools/dcpomatic_player.cc:1041
#, fuzzy
msgid "Verify DCP"
msgstr "Verificer DCP"
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
#, fuzzy
msgid "Verify DCP..."
msgstr "Verificer DCP"
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr ""
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Video bølgeform..."
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr ""
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
"DCP that the DKDM was made for, and it cannot be undone. Are you sure?"
msgstr ""
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1213,7 +1285,7 @@ msgstr ""
"dine DKDMer (og de DCPer de beskytter) vil blive ubrugelige hvis denne fil "
"går tabt."
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1229,7 +1301,7 @@ msgstr ""
"Du bør sikre at der er <span weight=\"bold\" size=\"larger\">BACKUP</span> "
"af disse filer, hvis du vil generere KDMer til denne film."
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1237,15 +1309,15 @@ msgid ""
"strongly advised to install the 64-bit version of %s."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
diff --git a/src/tools/po/de_DE.po b/src/tools/po/de_DE.po
index fec36ef15..93154b43a 100644
--- a/src/tools/po/de_DE.po
+++ b/src/tools/po/de_DE.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
"PO-Revision-Date: 2025-04-13 23:26+0200\n"
"Last-Translator: Carsten Kurz\n"
"Language-Team: DCP-o-matic <carl@dcpomatic.com>\n"
@@ -28,29 +28,29 @@ msgstr "%d KDM wurde geschrieben nach %s"
msgid "%d KDMs written to %s"
msgstr "%d KDMs wurden geschrieben nach %s"
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
msgstr ""
"%s existiert bereits als Datei und kann deshalb nicht als DCP genutzt werden."
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, c-format
msgid "%s could not start"
msgstr "%s konnte nicht gestartet werden"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, c-format
msgid "%s could not start %s"
msgstr "%s konnte %s nicht starten"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, c-format
msgid "%s could not start (%s)"
msgstr "%s konnte (%s) nicht starten"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, c-format
msgid "%s could not start."
msgstr "%s konnte nicht gestartet werden."
@@ -59,125 +59,141 @@ msgstr "%s konnte nicht gestartet werden."
msgid "&Add Film...\tCtrl-A"
msgstr "&Projekt hinzufügen...\tCtrl-A"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr "&OV zu geladenem VF hinzufügen..."
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "&Schließen"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
msgid "&Close\tCtrl-W"
msgstr "&Schließen\tCtrl-W"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "&Bearbeiten"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&Ende"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&Datei"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "&Hilfe"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&Aufgaben"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&DCP erstellen\tCtrl-M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&Öffnen...\tCtrl-O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
msgid "&Preferences...\tCtrl-,"
msgstr "&Einstellungen...\tCtrl-,"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&Einstellungen...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&Beenden"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&Speichern\tCtrl-S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
msgid "&Save frame to file...\tCtrl-S"
msgstr "&Einzelbild exportieren...\tCtrl-E"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "&DCP an TMS senden"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "&Werkzeuge"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "&Darstellung"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr "<b>Playlist:</b>"
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr "<b>Playlisten</b>"
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "Über"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, c-format
msgid "About %s"
msgstr "Über %s"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
msgid "Add"
msgstr "Hinzufügen"
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
msgid "Add &KDM..."
msgstr "&KDM hinzufügen..."
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "&KDM hinzufügen..."
+
+#: src/tools/dcpomatic_playlist.cc:80
msgid "Add content"
msgstr "Inhalt hinzufügen"
@@ -197,8 +213,8 @@ msgstr "Ordner hinzufügen..."
msgid "Add..."
msgstr "Hinzufügen..."
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, c-format
msgid ""
"An exception occurred: %s\n"
@@ -209,10 +225,10 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -223,7 +239,7 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -234,8 +250,8 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -246,30 +262,30 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, c-format
msgid "An unknown error has occurred with the %s."
msgstr "Ein unbekannter Fehler ist mit dem %s aufgetreten."
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "Ein unbekannter Fehler ist aufgetreten."
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, c-format
msgid "An unknown exception occurred. %s"
msgstr "Ein unbekannter Fehler ist aufgetreten. %s"
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr "Anmerkungen"
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
@@ -278,34 +294,46 @@ msgstr ""
"gemacht werden. Ihre Zertifikate, Schlüssel und Kinostammdaten bleiben "
"jedoch erhalten."
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr "Falscher Parameter für %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr "CPL"
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "Inhalt(e) der CPL sind nicht verschlüsselt."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "Auf Updates prüfen"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr "Einen DCP Ordner auswählen"
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, c-format
msgid "Close %s"
msgstr "Schließen %s"
@@ -314,35 +342,35 @@ msgstr "Schließen %s"
msgid "Close without saving film"
msgstr "Schließen ohne speichern"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr "Closed Captions (CCAP) monitor…"
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr "Zusammenfügen"
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr "DCP zusammenfügen"
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr "Titel"
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr "DCPs kopieren"
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "Einstellungen kopieren\tCtrl-C"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr "Zielordner für das Projekt konnte nicht erstellt werden."
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
@@ -350,15 +378,15 @@ msgstr ""
"DKDM konnte nicht entschlüsselt werden. Möglicherweise wurde er mit einem "
"falschen Zertifikat erstellt."
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
msgid "Could not duplicate project."
msgstr "Projekt konnte nicht dupliziert werden."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "Batch Converter konnte nicht gefunden werden."
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
msgid "Could not find player."
msgstr "Player konnte nicht gefunden werden."
@@ -371,21 +399,21 @@ msgstr ""
"Stapelverarbeitung konnte nicht überwacht werden. %s wird möglicherweise "
"bereits ausgeführt."
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
msgid "Could not load DCP"
msgstr "DCP konnte nicht geladen werden"
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, c-format
msgid "Could not load DCP %s"
msgstr "DCP %s konnte nicht geladen werden"
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, c-format
msgid "Could not load DCP %s."
msgstr "DCP %s konnte nicht geladen werden."
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, c-format
msgid ""
"Could not load DCP.\n"
@@ -396,40 +424,42 @@ msgstr ""
"\n"
"%s."
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "KDM konnte nicht geladen werden."
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr "DCP aus %s konnte nicht geladen werden"
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
-msgstr "Projekt %1 konnte nicht geladen werden"
+#, c++-format
+msgid "Could not load film {}"
+msgstr "Projekt {} konnte nicht geladen werden"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "Projekt %1 (%2) konnte nicht geladen werden"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "Projekt {} ({}) konnte nicht geladen werden"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, c-format
msgid "Could not load stress test file %s"
msgstr "Stresstest-Datei %s konnte nicht geladen werden"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr "DCP konnte nicht erstellt werden."
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, c-format
msgid "Could not open film at %s"
msgstr "Konnte Projekt %s nicht laden"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, c-format
msgid "Could not open this folder as a %s project."
msgstr "Dieser Ordner konnte nicht als %s Projekt geöffnet werden."
@@ -442,7 +472,7 @@ msgstr ""
"Datei wurde nicht als KDM erkannt. Sie ist zu groß. Stellen Sie sicher, dass "
"es sich um eine DKDM-Datei (XML) handelt."
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
@@ -450,23 +480,23 @@ msgstr ""
"Datei wurde nicht als KDM erkannt. Möglicherweise ist sie fehlerhaft "
"formatiert, gepackt (ZIP), oder schlicht keine KDM."
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr "Vorhandene Voreinstellungen konnten nicht entfernt werden"
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
msgid "Could not save project."
msgstr "Projekt konnte nicht gespeichert werden."
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
msgid "Could not save template."
msgstr "Vorlage konnte nicht gespeichert werden."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "DCP kann nicht angezeigt werden."
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
@@ -474,14 +504,14 @@ msgstr ""
"Batch-Converter konnte nicht gestartet werden. Laden Sie ihn auf "
"dcpomatic.com."
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
"Der Player konnte nicht gestartet werden. Laden Sie ihn auf dcpomatic.com."
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
@@ -489,7 +519,7 @@ msgstr ""
"Konfigurationsdatei konnte nicht unter %s geschrieben werden. Ihre "
"Änderungen wurden nicht gespeichert."
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
msgid "Could not write to config file. Your changes have not been saved."
msgstr ""
"Konfigurationsdatei konnte nicht geschrieben werden. Ihre Änderungen wurden "
@@ -499,23 +529,27 @@ msgstr ""
msgid "Create KDMs"
msgstr "Erzeuge KDM(s)"
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr "Creator"
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
msgid "DCP"
msgstr "DCP"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
msgstr "DCP-o-matic J2C Kodierungsserver"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr "DCPs"
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr "DCPs erfolgreich zusammengefügt."
@@ -530,23 +564,23 @@ msgstr ""
"DKDM %s befindet sich bereits in der DKDM Liste und wird nicht erneut "
"hinzugefügt."
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr "Dekodierung bei voller Auflösung"
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr "Dekodierung bei halber Auflösung"
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr "Dekodierung bei Viertel-Auflösung"
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr "Löschen"
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
@@ -555,16 +589,16 @@ msgstr ""
"Haben Sie die %s Disk Writer.pkg aus der. dmg installiert? Überprüfen Sie "
"dies und versuchen Sie es erneut."
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Disk Writer"
msgstr "Disk Writer"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr "Nichts unternehmen"
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
@@ -572,7 +606,7 @@ msgstr ""
"Fragt der ‚User Account Control‘ Dialog Sie nach dcpomatic2_disk_writer.exe? "
"In diesem Fall drücken Sie auf ’Ja’. Versuchen Sie es anschließend erneut."
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr "Möchten Sie das existierende DCP %s überschreiben?"
@@ -585,23 +619,23 @@ msgstr "Nicht schließen"
msgid "Don't duplicate"
msgstr "Nicht duplizieren"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr "Nach unten"
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr "Laufwerk"
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr "Doppel-Monitor-Betrieb\tShift+F11"
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "Projekt duplizieren"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "Projekt Duplizieren und öffnen..."
@@ -609,40 +643,51 @@ msgstr "Projekt Duplizieren und öffnen..."
msgid "Duplicate without saving film"
msgstr "Projekt duplizieren ohne zu speichern"
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "Projekt Duplizieren..."
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr "Dauer"
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr "Reel bearbeiten"
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+#, fuzzy
+msgid "Edit..."
+msgstr "&Bearbeiten"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "Encoding Server..."
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr "Verschlüsselt"
# Where is it in the software?
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr "Startpunkt"
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+#, fuzzy
+msgid "Examining DCPs"
+msgstr "DCP zusammenfügen"
+
+#: src/tools/dcpomatic.cc:1446
msgid "Export preferences..."
msgstr "Voreinstellungen exportieren…"
-#: src/tools/dcpomatic.cc:1403
-msgid "Export subtitles..."
+#: src/tools/dcpomatic.cc:1418
+#, fuzzy
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "Untertitel exportieren…"
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
msgid "Export video file...\tCtrl-E"
msgstr "Videodatei exportieren…\tCtrl-E"
@@ -650,11 +695,11 @@ msgstr "Videodatei exportieren…\tCtrl-E"
msgid "Export..."
msgstr "Exportieren..."
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr "Auge"
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "Die Datei %s existiert bereits. Überschreiben ?"
@@ -665,7 +710,7 @@ msgstr "Die Datei %s existiert bereits. Überschreiben ?"
msgid "Film changed"
msgstr "Projekt wurde geändert"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr "Laufwerke suchen"
@@ -674,36 +719,36 @@ msgstr "Laufwerke suchen"
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "Der Ordner %s existiert bereits. Überschreiben ?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "Bilder pro Sekunde"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr "Vollbild\tF11"
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "Hinweise..."
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
msgid "Import preferences..."
msgstr "Voreinstellungen importieren…"
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr "DCP hinzufügen"
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr "Eigentliche Dauer"
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr "Herausgeber"
# Translation of the actions/commands "File -> Open" and "File-> New" depend on the corresponding German translations. Please replace the current translations ("..") with the correct menu command translations
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -721,61 +766,61 @@ msgstr ""
msgid "KDM|Timing"
msgstr "Zeitfenster/Gültigkeitsdauer"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr "Nach links"
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr "Länge"
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
msgid "Loading content"
msgstr "Inhalt(e) laden"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
msgid "Make &DKDMs...\tCtrl-D"
msgstr "&DKDM erstellen...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "&KDM erstellen...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "Sende Projekt an Batchkonverter\tCtrl-B"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, c-format
msgid "Make DKDM for %s..."
msgstr "DKDM für %s erzeugen..."
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr "Vorlagen verwalten…"
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr "Name"
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr "Neu"
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "Neues Projekt"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr "Neue Playlist"
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Neu...\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
@@ -783,7 +828,7 @@ msgstr ""
"ASSETMAP oder ASSETMAP.xml konnte in diesem Ordner nicht gefunden werden. "
"Bitte wählen Sie einen DCP Ordner."
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
@@ -791,11 +836,11 @@ msgstr ""
"In den Präferenzen ist kein Playlist-Ordner angegeben. Bitte wählen Sie "
"einen Ordner und wiederholen Sie den Vorgang."
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr "DCP im &Player wiedergeben"
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr "DCP öffnen: Datei-> Öffnen"
@@ -804,16 +849,16 @@ msgid "Output"
msgstr "Ausgabe"
# Where is this fuction?
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr "Speicherort DCP Ordner"
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "Einstellungen einfügen...\tCtrl-V"
@@ -825,11 +870,11 @@ msgstr "Umwandlung pausieren oder fortsetzen"
msgid "Pause/resume"
msgstr "Pausieren/Fortsetzen"
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr "Bild"
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
@@ -837,73 +882,73 @@ msgid ""
msgstr ""
"Überprüfen Sie, dass der Windows Dateizugriff für %s inaktiv geschaltet ist."
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr "Frage|N"
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr "Frage|J"
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
msgid "Quit"
msgstr "Beenden"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr "KDM Decryption Chain neu erzeugen"
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr "Signaturzertifikate neu erzeugen"
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr "Reels"
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr "Aktualisieren"
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr "Versionshinweise"
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "Entfernen"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "Problembericht senden..."
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Voreinstellungen zurücksetzen"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr "Nach rechts"
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
msgid "S&how DCP in Explorer"
msgstr "DCP im Explorer anzeigen"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
msgid "S&how DCP in Files"
msgstr "DCP in Dateien anzeigen"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
msgid "S&how DCP in Finder"
msgstr "DCP im Finder anzeigen"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
msgid "Save"
msgstr "Speichern"
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr "Als Vorlage speichern…"
@@ -926,7 +971,7 @@ msgid "Save film and duplicate"
msgstr "Speichern und Projekt duplizieren"
# is a single frame meant here?
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr "Einzelbild exportieren"
@@ -934,14 +979,19 @@ msgstr "Einzelbild exportieren"
msgid "Screens"
msgstr "Stammdaten Kinos und Leinwände"
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr "DCP Ordner auswählen"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr "Ordner mit DCP OV auswählen"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "KDM auswählen"
+
#: src/tools/dcpomatic_kdm.cc:821
msgid "Select DKDM File"
msgstr "DKDM auswählen"
@@ -950,15 +1000,15 @@ msgstr "DKDM auswählen"
msgid "Select DKDM file"
msgstr "DKDM auswählen"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr "KDM auswählen"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr "Alles auswählen\tShift-Ctrl-A"
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "Zu öffnendes Projekt auswählen"
@@ -966,36 +1016,36 @@ msgstr "Zu öffnendes Projekt auswählen"
msgid "Send KDM emails"
msgstr "Sende KDM Emails"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr "Dekodierungs-Auflösung an Displayauflösung anpassen"
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr "Ton"
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr "Name der ZIP Datei"
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr "Status…"
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr "Untertitel"
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr "Systeminformationen…"
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, c-format
msgid "The %s download server could not be contacted."
msgstr "Der %s Download Server ist nicht erreichbar."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -1015,7 +1065,7 @@ msgstr ""
"voraussichtlich etwa %.1f Gbyte groß. Auf dem ausgewählten Laufwerk sind "
"aber nur %.1f Gbyte frei. Möchten Sie trotzdem fortfahren ?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr "Das Zeitfenster des KDM für dieses DCP ist ungültig."
@@ -1041,11 +1091,11 @@ msgstr ""
"der Gültigkeitsdauer des ausstellenden Zertifikates. Erstellen Sie eine "
"spätere Gültigkeitsdauer für diesen KDM."
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr "Die Certificate Chain zum Signieren ist ungültig"
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1061,7 +1111,7 @@ msgstr ""
"generieren? Falls Sie dies nicht möchten, wählen Sie die Option \"Nein\". "
"Erstellen Sie ein Backup Ihrer Konfiguration, bevor Sie fortfahren."
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1075,7 +1125,7 @@ msgstr ""
"dazu führen, dass eine korrekte Validierung des DCPs fehlschlägt. Wollen Sie "
"die Certificate Chain neu generieren?"
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1091,7 +1141,7 @@ msgstr ""
"Validierung der DCPs auf manchen System fehlschlägt. Dieser Fehler wurde in "
"%s nun behoben. Möchten Sie die Certificate Chain neu generieren?"
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1104,7 +1154,7 @@ msgstr ""
"and KDMs nutzt, ist zu lang. Das kann auf manchen System zu Problemen "
"führen. Wollen Sie die Certificate Chain neu generieren?"
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1118,21 +1168,22 @@ msgstr ""
"kann %s nicht gestartet werden. Wollen Sie die Certificate Chain erneut "
"generieren?"
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
msgstr ""
-"Der Ordner %1 existiert bereits und ist nicht leer. Wollen Sie ihn trotzdem "
+"Der Ordner {} existiert bereits und ist nicht leer. Wollen Sie ihn trotzdem "
"benutzen ?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr ""
"Das ausgewählte Laufwerk ist nicht mehr verfügbar. Bitte wählen Sie ein "
"anderes Laufwerk."
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
@@ -1142,7 +1193,7 @@ msgstr ""
"Bitte schließen sie alle Anwendung, von denen das Laufwerk verwendet wird "
"und versuchen Sie es erneut. (%s)"
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
@@ -1150,19 +1201,19 @@ msgstr ""
"Die Programmeinstellungen konnten nicht geladen werden. Es werden "
"Standardeinstellungen wiederhergestellt. Dies kann etwas länger dauern."
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, c-format
msgid "There are no new versions of %s available."
msgstr "Es ist keine neue Version von %s verfügbar."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr ""
"Manche Aufgaben sind nicht erledigt - sind Sie sicher, dass Sie Beenden "
"wollen ?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1171,7 +1222,7 @@ msgstr ""
"und wird möglicherweise nicht korrekt geladen. Bitte prüfen Sie alle "
"Projekteinstellungen sorgfältig."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1182,61 +1233,86 @@ msgstr ""
"Ordnerinhalte können nicht in den Player geladen werden. Wählen Sie "
"stattdessen den DCP Ordner innerhalb des %s Projekts aus."
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
# Is it in the KDM Creator or somewhere else?
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_player.cc:712
msgid "Timing..."
msgstr "KDM Zeitfenster/Gültigkeitsdauer…"
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
msgid "Tools"
msgstr "Werkzeuge"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr "Bitte entfernen Sie die %s Zeichen aus dem Ordnernamen."
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr "Typ"
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Unerledigte Aufgaben"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr "Deinstallieren…"
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr "Unbekannte Dateierweiterung %s (nur .jpg, .jpeg or .png erlaubt)"
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr "Nach oben"
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
# validieren is a term from Sony on their older Projectors, which I think fits well here
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic_verifier.cc:201
+#, fuzzy
+msgid "Verify"
+msgstr "DCP validieren…"
+
+# validieren is a term from Sony on their older Projectors, which I think fits well here
+#: src/tools/dcpomatic_player.cc:1041
#, fuzzy
msgid "Verify DCP"
msgstr "DCP validieren…"
# validieren is a term from Sony on their older Projectors, which I think fits well here
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
msgid "Verify DCP..."
msgstr "DCP validieren…"
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr "Version File (VF)..."
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Waveform Monitor…"
+#: src/tools/dcpomatic_verifier.cc:194
+#, fuzzy
+msgid "Write logs to DCP folders"
+msgstr "Einen DCP Ordner auswählen"
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
@@ -1247,7 +1323,7 @@ msgstr ""
"Entfernen der DKDM kann nicht rückgängig gemacht werden. Sind Sie sicher, "
"dass Sie den Vorgang durchführen wollen?"
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1273,7 +1349,7 @@ msgstr ""
"mit seinen Implikationen und Fehlerquellen nicht vollständig verstanden "
"haben."
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1297,7 +1373,7 @@ msgstr ""
"mit seinen Implikationen und Fehlerquellen nicht vollständig verstanden "
"haben."
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1309,7 +1385,7 @@ msgstr ""
"Fehlern führen. Wir empfehlen dringend die Installation der 64-bit Version "
"von %s."
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
@@ -1317,14 +1393,18 @@ msgstr ""
"Sie haben nicht bestätigt, dass Sie die zuvor gezeigte Warnung gelesen "
"haben. Bitte versuchen Sie es erneut."
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
msgstr "Kein Ordner ausgewählt. Wählen Sie vor dem Öffnen einen Ordner aus."
+#, fuzzy
+#~ msgid "Choose a folder"
+#~ msgstr "Einen DCP Ordner auswählen"
+
#~ msgid "About DCP-o-matic"
#~ msgstr "Über DCP-o-matic"
diff --git a/src/tools/po/el_GR.po b/src/tools/po/el_GR.po
new file mode 100644
index 000000000..16e3a12f3
--- /dev/null
+++ b/src/tools/po/el_GR.po
@@ -0,0 +1,1247 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: src/tools/dcpomatic_kdm.cc:491
+#, c-format
+msgid "%d KDM written to %s"
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:491
+#, c-format
+msgid "%d KDMs written to %s"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:177
+#, c-format
+msgid "%s already exists as a file, so you cannot use it for a DCP."
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
+#, c-format
+msgid "%s could not start"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:717
+#, c-format
+msgid "%s could not start %s"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:272
+#, c-format
+msgid "%s could not start (%s)"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
+#, c-format
+msgid "%s could not start."
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:88
+msgid "&Add Film...\tCtrl-A"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:660
+msgid "&Add OV..."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:668
+msgid "&Close"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1375
+msgid "&Close\tCtrl-W"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
+msgid "&Edit"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
+msgid "&Exit"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
+msgid "&File"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
+msgid "&Help"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1462
+msgid "&Jobs"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1406
+msgid "&Make DCP\tCtrl-M"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
+msgid "&Open...\tCtrl-O"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
+msgid "&Preferences...\tCtrl-,"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
+msgid "&Preferences...\tCtrl-P"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
+msgid "&Quit"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
+msgid "&Save\tCtrl-S"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:663
+msgid "&Save frame to file...\tCtrl-S"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1420
+msgid "&Send DCP to TMS"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
+msgid "&Tools"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
+msgid "&View"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
+msgid "<b>Playlist:</b>"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:132
+msgid "<b>Playlists</b>"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
+msgid "About"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
+#, c-format
+msgid "About %s"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:349
+msgid "Add"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:661
+msgid "Add &KDM..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:180
+msgid "Add KDM..."
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:80
+msgid "Add content"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:177
+msgid "Add film"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:177
+msgid "Add film for conversion"
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:216
+msgid "Add folder..."
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:214
+msgid "Add..."
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
+#, c-format
+msgid ""
+"An exception occurred: %s\n"
+"\n"
+"%s"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
+#, c-format
+msgid ""
+"An exception occurred: %s (%s)\n"
+"\n"
+"%s"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
+#, c-format
+msgid ""
+"An exception occurred: %s (%s) (%s)\n"
+"\n"
+"%s"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
+#, c-format
+msgid ""
+"An exception occurred: %s.\n"
+"\n"
+"%s"
+msgstr ""
+
+#: src/tools/dcpomatic_server.cc:362
+#, c-format
+msgid "An unknown error has occurred with the %s."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
+msgid "An unknown exception occurred."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
+#, c-format
+msgid "An unknown exception occurred. %s"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
+msgid "Annotation text"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:777
+msgid ""
+"Are you sure you want to restore preferences to their defaults? This cannot "
+"be undone."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
+#, c-format
+msgid "Bad setting for %s."
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
+msgid "CPL"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
+msgid "CPL's content is not encrypted."
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:410
+#, c-format
+msgid "CPL: %s"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
+msgid "Check for updates"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
+msgid "Choose a DCP folder"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
+#, c-format
+msgid "Close %s"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:167
+msgid "Close without saving film"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
+msgid "Closed captions..."
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:130
+msgid "Combine"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:184
+msgid "Combining DCPs"
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:219
+msgid "Content title text"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:166
+msgid "Copy DCPs"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1389
+msgid "Copy settings\tCtrl-C"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
+msgid "Could not create folder to store film."
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
+msgid ""
+"Could not decrypt the DKDM. Perhaps it was not created with the correct "
+"certificate."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
+msgid "Could not duplicate project."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:955
+msgid "Could not find batch converter."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:970
+msgid "Could not find player."
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:478
+#, c-format
+msgid ""
+"Could not listen for new batch jobs. Perhaps another instance of the %s is "
+"running."
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:404
+msgid "Could not load DCP"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:1403
+#, c-format
+msgid "Could not load DCP %s"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:882
+#, c-format
+msgid "Could not load DCP %s."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:649
+#, c-format
+msgid ""
+"Could not load DCP.\n"
+"\n"
+"%s."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
+msgid "Could not load KDM."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
+#, c-format
+msgid "Could not load a DCP from %s"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:495
+#, c++-format
+msgid "Could not load film {}"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:1411
+#, c-format
+msgid "Could not load stress test file %s"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:880
+msgid "Could not make DCP."
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
+#, c-format
+msgid "Could not open film at %s"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:502
+#, c-format
+msgid "Could not open this folder as a %s project."
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:657
+msgid ""
+"Could not read file as a KDM. It is much too large. Make sure you are "
+"loading a DKDM (XML) file."
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
+msgid ""
+"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
+"at all."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:799
+msgid "Could not remove existing preferences file"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
+msgid "Could not save project."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:645
+msgid "Could not save template."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1089
+msgid "Could not show DCP."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:953
+msgid ""
+"Could not start the batch converter. You may need to download it from "
+"dcpomatic.com."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:968
+msgid ""
+"Could not start the player. You may need to download it from dcpomatic.com."
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
+#, c-format
+msgid ""
+"Could not write to config file at %s. Your changes have not been saved."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:1136
+msgid "Could not write to config file. Your changes have not been saved."
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:239
+msgid "Create KDMs"
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
+msgid "Creator"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
+msgid "DCP"
+msgstr ""
+
+#: src/tools/dcpomatic_server.cc:256
+msgid "DCP-o-matic Encode Server"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
+msgid "DCPs"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:194
+msgid "DCPs combined successfully."
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:175
+msgid "DKDM"
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:632
+#, c-format
+msgid "DKDM %s is already in the DKDM list and will not be added again."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:703
+msgid "Decode at full resolution"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:704
+msgid "Decode at half resolution"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:705
+msgid "Decode at quarter resolution"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:145
+msgid "Delete"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:344
+#, c-format
+msgid ""
+"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
+"again."
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:190
+msgid "Disk Writer"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
+msgid "Do nothing"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:336
+msgid ""
+"Do you see a 'User Account Control' dialogue asking about "
+"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:863
+#, c-format
+msgid "Do you want to overwrite the existing DCP %s?"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:167
+msgid "Don't close"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:195
+msgid "Don't duplicate"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:348
+msgid "Down"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:153
+msgid "Drive"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:693
+msgid "Dual screen\tShift+F11"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
+msgid "Duplicate Film"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1369
+msgid "Duplicate and open..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:195
+msgid "Duplicate without saving film"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1368
+msgid "Duplicate..."
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:95
+msgid "Duration"
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:155
+msgid "Edit reel"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:351
+msgid "Edit..."
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
+msgid "Encoding servers..."
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:341
+msgid "Encrypted"
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:90
+msgid "Entry point"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:156
+msgid "Examining DCPs"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1446
+msgid "Export preferences..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1418
+msgid "Export subtitles...\tShift-Ctrl-E"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1417
+msgid "Export video file...\tCtrl-E"
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:220
+msgid "Export..."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:700
+msgid "Eye"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
+#, c-format
+msgid "File %s already exists. Do you want to overwrite it?"
+msgstr ""
+
+#. TRANSLATORS: this is the heading for a dialog box, which tells the user that the current
+#. project (Film) has been changed since it was last saved.
+#: src/tools/dcpomatic.cc:162 src/tools/dcpomatic.cc:190
+msgid "Film changed"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:190
+msgid "Finding disks"
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:357
+#, c-format
+msgid "Folder %s already exists. Do you want to overwrite it?"
+msgstr ""
+
+#: src/tools/dcpomatic_server.cc:169
+msgid "Frames per second"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:692
+msgid "Full screen\tF11"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1438
+msgid "Hints..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1447
+msgid "Import preferences..."
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:105
+msgid "Input DCP"
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:100
+msgid "Intrinsic duration"
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
+msgid "Issuer"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:504
+#, c-format
+msgid ""
+"It looks like you are trying to open a DCP. File -> Open is for loading %s "
+"projects, not DCPs. To import a DCP, create a new project with File -> New "
+"and then click the \"Add DCP...\" button."
+msgstr ""
+
+#. TRANSLATORS: translate the word "Timing" here; do not include the "KDM|" prefix
+#: src/tools/dcpomatic_kdm.cc:169
+msgid "KDM|Timing"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:698
+msgid "Left"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:140
+msgid "Length"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
+msgid "Loading content"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1413
+msgid "Make &DKDMs...\tCtrl-D"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1411
+msgid "Make &KDMs...\tCtrl-K"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1408
+msgid "Make DCP in &batch converter\tCtrl-B"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1414
+#, c-format
+msgid "Make DKDM for %s..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1440
+msgid "Manage templates..."
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
+msgid "Name"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:143
+msgid "New"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:568
+msgid "New Film"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:257
+msgid "New Playlist"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1360
+msgid "New...\tCtrl-N"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:93
+msgid ""
+"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
+"folder."
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:253
+msgid ""
+"No playlist folder is specified in preferences. Please set one and then try "
+"again."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1430
+msgid "Open DCP in &player"
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:347
+msgid "Open a DCP using File -> Open"
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:227
+msgid "Output"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:126
+msgid "Output DCP folder"
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:413
+#, c-format
+msgid "PKL: %s"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1391
+msgid "Paste settings...\tCtrl-V"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:178
+msgid "Pause or resume conversion"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:178
+msgid "Pause/resume"
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:173
+msgid "Picture"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:592
+#, c-format
+msgid ""
+"Please check that you do not have Windows controlled folder access enabled "
+"for %s."
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:429
+msgid "Question|N"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:429
+msgid "Question|Y"
+msgstr ""
+
+#: src/tools/dcpomatic_server.cc:238
+msgid "Quit"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1981
+msgid "Recreate KDM decryption chain"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
+msgid "Recreate signing certificates"
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:224
+msgid "Reels"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:157
+msgid "Refresh"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1774
+msgid "Release notes"
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
+msgid "Remove"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
+msgid "Report a problem..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
+msgid "Restore default preferences"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:699
+msgid "Right"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1425
+msgid "S&how DCP in Explorer"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1427
+msgid "S&how DCP in Files"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1423
+msgid "S&how DCP in Finder"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:328
+msgid "Save"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1367
+msgid "Save as &template..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:159
+#, c-format
+msgid "Save changes to film \"%s\" before closing?"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:187
+#, c-format
+msgid "Save changes to film \"%s\" before duplicating?"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:167
+msgid "Save film and close"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:195
+msgid "Save film and duplicate"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:840
+msgid "Save frame to file"
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:162
+msgid "Screens"
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
+msgid "Select DCP to open"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:771
+msgid "Select DCP to open as OV"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+msgid "Select DCP(s)"
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:821
+msgid "Select DKDM File"
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:607
+msgid "Select DKDM file"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
+msgid "Select KDM"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1394
+msgid "Select all\tShift-Ctrl-A"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
+msgid "Select film to open"
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:485
+msgid "Send KDM emails"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:702
+msgid "Set decode resolution to match display"
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:176
+msgid "Sound"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
+msgid "Specify ZIP file"
+msgstr ""
+
+#: src/tools/dcpomatic_server.cc:237
+msgid "Status..."
+msgstr ""
+
+#: src/tools/dcpomatic_editor.cc:179
+msgid "Subtitle"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
+msgid "System information..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
+#, c-format
+msgid "The %s download server could not be contacted."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:836
+#, c-format
+msgid ""
+"The DCP for this film will take up about %.1f GB, and the disk that you are "
+"using only has %.1f GB available. Do you want to continue anyway?"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:248
+#, c-format
+msgid ""
+"The DCPs for this film and the films already in the queue will take up about "
+"%.1f GB. The disks that you are using only have %.1f GB available. Do you "
+"want to add this film to the queue anyway?"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:378
+msgid "The KDM does not allow playback of this content at this time."
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:504
+#, c-format
+msgid ""
+"The KDM end period is after (or close to) the end of the signing "
+"certificates' validity period. Either use an earlier end time for this KDM "
+"or re-create your signing certificates in the %s preferences window."
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:499
+msgid ""
+"The KDM start period is before (or close to) the start of the signing "
+"certificate's validity period. Use a later start time for this KDM."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1005
+msgid "The certificate chain for signing is invalid"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1983
+#, c-format
+msgid ""
+"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
+"cannot be used. %s cannot start unless you re-create it. Do you want to re-"
+"create\n"
+"the certificate chain for decrypting KDMs? You may want to say \"No\" here "
+"and back up your\n"
+"configuration before continuing."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1934
+#, c-format
+msgid ""
+"The certificate chain that %s uses for signing DCPs and KDMs contains a "
+"small error\n"
+"which will prevent DCPs from being validated correctly on some systems. Do "
+"you want to re-create\n"
+"the certificate chain for signing DCPs and KDMs?"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:2002
+#, c-format
+msgid ""
+"The certificate chain that %s uses for signing DCPs and KDMs contains a "
+"small error\n"
+"which will prevent DCPs from being validated correctly on some systems. "
+"This error was caused\n"
+"by a bug in %s which has now been fixed. Do you want to re-create the "
+"certificate chain\n"
+"for signing DCPs and KDMs?"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1951
+#, c-format
+msgid ""
+"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
+"period\n"
+"that is too long. This will cause problems playing back DCPs on some "
+"systems.\n"
+"Do you want to re-create the certificate chain for signing DCPs and KDMs?"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1965
+#, c-format
+msgid ""
+"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
+"and\n"
+"cannot be used. %s cannot start unless you re-create it. Do you want to re-"
+"create\n"
+"the certificate chain for signing DCPs and KDMs?"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
+msgid ""
+"The directory {} already exists and is not empty. Are you sure you want to "
+"use it?"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:299
+msgid "The disk you selected is no longer available. Please choose another."
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:378
+#, c-format
+msgid ""
+"The drive %s could not be unmounted.\n"
+"Close any application that is using it, then try again. (%s)"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
+msgid ""
+"The existing configuration failed to load. Default values will be used "
+"instead. These may take a short time to create."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
+#, c-format
+msgid "There are no new versions of %s available."
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
+msgid "There are unfinished jobs; are you sure you want to quit?"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:485
+msgid ""
+"This film was created with an old version of DVD-o-matic and may not load "
+"correctly in this version. Please check the film's settings carefully."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:458
+#, c-format
+msgid ""
+"This looks like a %s project folder, which cannot be loaded into the "
+"player. Choose the DCP folder inside the %s project folder if that's what "
+"you want to play."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:712
+msgid "Timing..."
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:119
+msgid "Tools"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:590
+#, c-format
+msgid "Try removing the %s characters from your folder name."
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:340
+msgid "Type"
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
+msgid "Unfinished jobs"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:118
+msgid "Uninstall..."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:860
+#, c-format
+msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:347
+msgid "Up"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+msgid "Verify"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:1041
+msgid "Verify DCP"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:708
+msgid "Verify DCP..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
+msgid "Version File (VF)..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1434
+msgid "Video waveform..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr ""
+
+#: src/tools/dcpomatic_kdm.cc:795
+msgid ""
+"You are about to remove a DKDM. This will make it impossible to decrypt the "
+"DCP that the DKDM was made for, and it cannot be undone. Are you sure?"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:990
+#, c-format
+msgid ""
+"You are making a DKDM which is encrypted by a private key held in\n"
+"\n"
+"<tt>%s</tt>\n"
+"\n"
+"It is <span weight=\"bold\" size=\"larger\">VITALLY IMPORTANT</span> that "
+"you <span weight=\"bold\" size=\"larger\">BACK UP THIS FILE</span> since if "
+"it is lost your DKDMs (and the DCPs they protect) will become useless."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:853
+msgid ""
+"You are making an encrypted DCP. It will not be possible to make KDMs for "
+"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
+"film and the metadata files within the DCP.\n"
+"\n"
+"You should ensure that these files are <span weight=\"bold\" "
+"size=\"larger\">BACKED UP</span> if you want to make KDMs for this film."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1733
+#, c-format
+msgid ""
+"You are running the 32-bit version of %s on a 64-bit version of Windows. "
+"This will limit the memory available to %s and may cause errors. You are "
+"strongly advised to install the 64-bit version of %s."
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:394
+msgid ""
+"You did not correctly confirm that you read the warning that was just "
+"shown. Please try again."
+msgstr ""
+
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
+msgid ""
+"You did not select a folder. Make sure that you select a folder before "
+"clicking Open."
+msgstr ""
diff --git a/src/tools/po/es_ES.po b/src/tools/po/es_ES.po
index ce51eb231..002a05c9e 100644
--- a/src/tools/po/es_ES.po
+++ b/src/tools/po/es_ES.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: DCPOMATIC\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
"PO-Revision-Date: 2021-10-17 22:46-0400\n"
"Last-Translator: Manuel AC <manuel.acevedo@civantos.>\n"
"Language-Team: Manuel AC <manuel.acevedo@civantos.com>\n"
@@ -27,28 +27,28 @@ msgstr "%d KDM guardada en %s"
msgid "%d KDMs written to %s"
msgstr "%d KDMs guardadas en %s"
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, fuzzy, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
-msgstr "%1 ya existe como fichero, no puedes usarlo para una nueva película."
+msgstr "{} ya existe como fichero, no puedes usarlo para una nueva película."
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, fuzzy, c-format
msgid "%s could not start"
msgstr "DCP-o-matic no pudo iniciarse"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, fuzzy, c-format
msgid "%s could not start %s"
msgstr "DCP-o-matic no pudo iniciarse"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, fuzzy, c-format
msgid "%s could not start (%s)"
msgstr "DCP-o-matic no pudo iniciarse"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, fuzzy, c-format
msgid "%s could not start."
msgstr "DCP-o-matic no pudo iniciarse"
@@ -57,127 +57,143 @@ msgstr "DCP-o-matic no pudo iniciarse"
msgid "&Add Film...\tCtrl-A"
msgstr "&Añadir película...\tCtrl-A"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr "&Añadir DCP base (OV)..."
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "&Cerrar"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
msgid "&Close\tCtrl-W"
msgstr "&Cerrar\tCtrl-W"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "&Editar"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&Salir"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&Archivo"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "&Ayuda"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&Tareas"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&Crear DCP\tCtrl-M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&Abrir...\tCtrl-O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
#, fuzzy
msgid "&Preferences...\tCtrl-,"
msgstr "&Preferencias...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&Preferencias...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&Salir"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&Guardar\tCtrl-S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
#, fuzzy
msgid "&Save frame to file...\tCtrl-S"
msgstr "Exportar…\tCtrl-E"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "&Enviar DCP al TMS"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "&Herramientas"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "&Ver"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr "<b>Lista:</b>"
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr "<b>Listas:</b>"
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "Acerca de"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, fuzzy, c-format
msgid "About %s"
msgstr "Acerca de"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
msgid "Add"
msgstr "Añadir"
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
msgid "Add &KDM..."
msgstr "Añadir &KDM..."
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "Añadir &KDM..."
+
+#: src/tools/dcpomatic_playlist.cc:80
msgid "Add content"
msgstr "Añadir contenido"
@@ -198,8 +214,8 @@ msgstr "Añadir carpeta..."
msgid "Add..."
msgstr "Añadir..."
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, fuzzy, c-format
msgid ""
"An exception occurred: %s\n"
@@ -209,10 +225,10 @@ msgstr ""
"Ha ocurrido un error desconocido: %s.\n"
"\n"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -222,7 +238,7 @@ msgstr ""
"Ha ocurrido una excepción: %s (%s).\n"
"\n"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -232,8 +248,8 @@ msgstr ""
"Ha ocurrido una excepción: %s (%s) (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, fuzzy, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -243,30 +259,30 @@ msgstr ""
"Ha ocurrido un error desconocido: %s.\n"
"\n"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, fuzzy, c-format
msgid "An unknown error has occurred with the %s."
msgstr "Un error desconocido ha ocurrido en el servidor de DCP-o-matic."
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "Ha ocurrido un error desconocido."
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, fuzzy, c-format
msgid "An unknown exception occurred. %s"
msgstr "Ha ocurrido un error desconocido."
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr ""
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
@@ -274,34 +290,46 @@ msgstr ""
"¿Estás seguro de que quieres restaurar los valores por defecto? Esta acción "
"no se puede deshacer."
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr "Configuración errónea para %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr "CPL"
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "El contenido del CPL no está encriptado."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "Buscar actualizaciones"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr ""
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, fuzzy, c-format
msgid "Close %s"
msgstr "&Cerrar"
@@ -310,35 +338,35 @@ msgstr "&Cerrar"
msgid "Close without saving film"
msgstr "Cerrar sin guardar la película"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr "Subtítulos cerrados…"
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr ""
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "Copiar configuración\tCtrl-C"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr "No se puedo crear la carpeta para guardar la película."
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
@@ -346,16 +374,16 @@ msgstr ""
"No se pudo descifrar el DKDM. Tal vez no fué creado con el certificado "
"correcto."
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
#, fuzzy
msgid "Could not duplicate project."
msgstr "No se puedo encontrar el convertidor por lotes."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "No se puedo encontrar el convertidor por lotes."
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
#, fuzzy
msgid "Could not find player."
msgstr "No se puedo encontrar el convertidor por lotes."
@@ -367,62 +395,64 @@ msgid ""
"running."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
msgid "Could not load DCP"
msgstr "No se pudo cargar el DCP"
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, fuzzy, c-format
msgid "Could not load DCP %s"
-msgstr "No se pudo cargar el DCP %1."
+msgstr "No se pudo cargar el DCP {}."
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, fuzzy, c-format
msgid "Could not load DCP %s."
-msgstr "No se pudo cargar el DCP %1."
+msgstr "No se pudo cargar el DCP {}."
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, fuzzy, c-format
msgid ""
"Could not load DCP.\n"
"\n"
"%s."
-msgstr "No se pudo cargar el DCP %1."
+msgstr "No se pudo cargar el DCP {}."
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "No se pudo cargar la KDM."
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr ""
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
-msgstr "No se pudo cargar la película %1"
+#, c++-format
+msgid "Could not load film {}"
+msgstr "No se pudo cargar la película {}"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "No se pudo cargar la película %1 (%2)"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "No se pudo cargar la película {} ({})"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, fuzzy, c-format
msgid "Could not load stress test file %s"
-msgstr "No se pudo cargar la película %1"
+msgstr "No se pudo cargar la película {}"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr "No se pudo crear el DCP."
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, c-format
msgid "Could not open film at %s"
msgstr "No se pudo abrir la película en %s"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, fuzzy, c-format
msgid "Could not open this folder as a %s project."
msgstr "No se pudo abrir la película en %s"
@@ -436,7 +466,7 @@ msgstr ""
"No se pudo leer el archivo como una KDM. Tal vez está mal formateado, o no "
"es un KDM en absoluto."
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
@@ -444,37 +474,37 @@ msgstr ""
"No se pudo leer el archivo como una KDM. Tal vez está mal formateado, o no "
"es un KDM en absoluto."
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr ""
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
#, fuzzy
msgid "Could not save project."
msgstr "No se pudo crear el DCP."
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
#, fuzzy
msgid "Could not save template."
msgstr "No se puedo encontrar el convertidor por lotes."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "No se pudo mostrar el DCP."
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
msgstr ""
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
@@ -482,7 +512,7 @@ msgstr ""
"No se pudo escribir en el archivo de configuración %s. Los cambios no se "
"han salvado."
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
#, fuzzy
msgid "Could not write to config file. Your changes have not been saved."
msgstr ""
@@ -493,24 +523,28 @@ msgstr ""
msgid "Create KDMs"
msgstr "Crear KDMs"
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
#, fuzzy
msgid "DCP"
msgstr "CPL"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
msgstr "Servidor de codificación DCP-o-matic"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr ""
@@ -523,46 +557,46 @@ msgstr "DKDM"
msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr ""
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr "Decodificar en resolución completa"
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr "Descodificar en media resolución"
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr "Decodificar a un cuarto de la resolución"
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
"again."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
#, fuzzy
msgid "Disk Writer"
msgstr "Generador de KDM DCP-o-matic"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
msgstr ""
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr "¿Desea sobreescribir el DCP existente %s?"
@@ -575,23 +609,23 @@ msgstr "No cerrar"
msgid "Don't duplicate"
msgstr "No duplicar"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr ""
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr ""
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "Duplicar película"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "Duplicar y abrir..."
@@ -599,41 +633,50 @@ msgstr "Duplicar y abrir..."
msgid "Duplicate without saving film"
msgstr "Duplicar sin guardar la película"
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "Duplicar..."
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+#, fuzzy
+msgid "Edit..."
+msgstr "&Editar"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "Servidores de codificación..."
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr ""
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+msgid "Examining DCPs"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1446
#, fuzzy
msgid "Export preferences..."
msgstr "Restaurar las preferencias por defecto"
-#: src/tools/dcpomatic.cc:1403
+#: src/tools/dcpomatic.cc:1418
#, fuzzy
-msgid "Export subtitles..."
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "Exportar…\tCtrl-E"
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
#, fuzzy
msgid "Export video file...\tCtrl-E"
msgstr "Exportar…\tCtrl-E"
@@ -643,11 +686,11 @@ msgstr "Exportar…\tCtrl-E"
msgid "Export..."
msgstr "Exportar…\tCtrl-E"
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr ""
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "El fichero %s ya existe. ¿Quiere sobreescribirlo?"
@@ -658,7 +701,7 @@ msgstr "El fichero %s ya existe. ¿Quiere sobreescribirlo?"
msgid "Film changed"
msgstr "Película cambiada"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr ""
@@ -667,36 +710,36 @@ msgstr ""
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "El fichero %s ya existe. ¿Quiere sobreescribirlo?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "Imágenes por segundo"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr ""
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "Pistas…"
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
#, fuzzy
msgid "Import preferences..."
msgstr "Restaurar las preferencias por defecto"
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr ""
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -709,79 +752,79 @@ msgstr ""
msgid "KDM|Timing"
msgstr "Tiempo"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr ""
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
#, fuzzy
msgid "Loading content"
msgstr "Cargando DCP"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
#, fuzzy
msgid "Make &DKDMs...\tCtrl-D"
msgstr "Crear &KDMs...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "Crear &KDMs...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "Crear DCP in &batch converter\tCtrl-B"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, fuzzy, c-format
msgid "Make DKDM for %s..."
msgstr "Producir un DKDM para DCP-o-matic..."
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr "Gestionar plantillas…"
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr ""
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "Nueva película"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr ""
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Nuevo...\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
msgstr ""
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr ""
@@ -789,16 +832,16 @@ msgstr ""
msgid "Output"
msgstr "Salida"
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "Pegar configuración…\tCtrl-V"
@@ -810,89 +853,89 @@ msgstr ""
msgid "Pause/resume"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr ""
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
"for %s."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr ""
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
#, fuzzy
msgid "Quit"
msgstr "&Salir"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr ""
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr ""
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "Quitar"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "Comunicar un problema…"
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Restaurar las preferencias por defecto"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr ""
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
#, fuzzy
msgid "S&how DCP in Explorer"
msgstr "&Mostrar DCP"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
#, fuzzy
msgid "S&how DCP in Files"
msgstr "&Mostrar DCP"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
#, fuzzy
msgid "S&how DCP in Finder"
msgstr "&Mostrar DCP"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
#, fuzzy
msgid "Save"
msgstr "&Guardar"
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr "Guardar como &plantilla…"
@@ -914,7 +957,7 @@ msgstr "Guardar la película y cerrar"
msgid "Save film and duplicate"
msgstr "Guardar la película y duplicar"
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr ""
@@ -922,14 +965,19 @@ msgstr ""
msgid "Screens"
msgstr "Pantallas"
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr "Selecciona el DCP a abrir"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr "Selecciona el DCP a abrir como base (OV)"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "Selecciona el KDM"
+
#: src/tools/dcpomatic_kdm.cc:821
#, fuzzy
msgid "Select DKDM File"
@@ -939,15 +987,15 @@ msgstr "Selecciona el fichero DKDM"
msgid "Select DKDM file"
msgstr "Selecciona el fichero DKDM"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr "Selecciona el KDM"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "Selecciona la película a abrir"
@@ -955,36 +1003,36 @@ msgstr "Selecciona la película a abrir"
msgid "Send KDM emails"
msgstr "Enviar los KDM por email"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr "Adaptar la resolución de descodificación a la pantalla"
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr ""
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr ""
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr ""
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr ""
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, fuzzy, c-format
msgid "The %s download server could not be contacted."
msgstr "Imposible conectar con el servidor de descarga de DCP-o-matic."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, fuzzy, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -1005,7 +1053,7 @@ msgstr ""
"seleccionado solo tiene %.1f Gb disponibles. Quieres continuar de todas "
"formas?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr ""
@@ -1023,11 +1071,11 @@ msgid ""
"certificate's validity period. Use a later start time for this KDM."
msgstr ""
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr ""
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1038,7 +1086,7 @@ msgid ""
"configuration before continuing."
msgstr ""
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1048,7 +1096,7 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1060,7 +1108,7 @@ msgid ""
"for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1070,7 +1118,7 @@ msgid ""
"Do you want to re-create the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1080,25 +1128,26 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
msgstr ""
-"El directorio %1 ya existe y no está vacío. ¿Estás seguro de querer usarlo?"
+"El directorio {} ya existe y no está vacío. ¿Estás seguro de querer usarlo?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
"Close any application that is using it, then try again. (%s)"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
@@ -1106,17 +1155,17 @@ msgstr ""
"La configuración existente no pudo cargarse. Los valores por defecto serán "
"utilizados. Debería ser rápido."
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, fuzzy, c-format
msgid "There are no new versions of %s available."
msgstr "No hay disponibles nuevas versiones de DCP-o-matic."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr "Hay trabajos sin finalizar; ¿estás seguro de querer cerrar?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1125,7 +1174,7 @@ msgstr ""
"cargue correctamente en esta versión. Por favor revisa cuidadosamente las "
"opciones."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1133,66 +1182,88 @@ msgid ""
"you want to play."
msgstr ""
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:712
#, fuzzy
msgid "Timing..."
msgstr "Tiempo"
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
#, fuzzy
msgid "Tools"
msgstr "&Herramientas"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Trabajos sin finalizar"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr ""
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr ""
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+msgid "Verify"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:1041
msgid "Verify DCP"
msgstr ""
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
msgid "Verify DCP..."
msgstr ""
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr ""
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Forma de de onda del vídeo…"
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr ""
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
"DCP that the DKDM was made for, and it cannot be undone. Are you sure?"
msgstr ""
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1213,7 +1284,7 @@ msgstr ""
"que desde if se perdió sus DKDMs (y protegen a los DCPs) se convertirá en "
"inútil."
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1229,7 +1300,7 @@ msgstr ""
"Debe asegurarse que existe una <span weight=\"bold\" size=\"larger\">COPIA "
"DE SEGURIDAD</span> si quiere hacer KDMs para esta película."
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1237,15 +1308,15 @@ msgid ""
"strongly advised to install the 64-bit version of %s."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
@@ -1382,5 +1453,5 @@ msgstr ""
#~ msgstr "&Analizar audio"
#, fuzzy
-#~ msgid "The directory %1 already exists."
+#~ msgid "The directory {} already exists."
#~ msgstr "La carpeta %s ya existe."
diff --git a/src/tools/po/fa_IR.po b/src/tools/po/fa_IR.po
index 1cd858b26..c208c1c24 100644
--- a/src/tools/po/fa_IR.po
+++ b/src/tools/po/fa_IR.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
"PO-Revision-Date: 2024-10-05 18:27+0330\n"
"Last-Translator: Soleyman Rahmani Aghdam <Soleyman.rahmani@gmail.com>\n"
"Language-Team: \n"
@@ -28,30 +28,30 @@ msgstr "%d کلید در این مسیر نوشته شد: %s"
msgid "%d KDMs written to %s"
msgstr "%d کلیدها در این مسیر نوشته شدند: %s"
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
msgstr ""
"%s از قبل به عنوان یک فایل وجود دارد، بنابراین نمی توانید از آن برای دی سی "
"پی استفاده کنید."
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, c-format
msgid "%s could not start"
msgstr "%s قابل اجرا نیست"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, c-format
msgid "%s could not start %s"
msgstr "%s قابل اجرا نیست %s"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, c-format
msgid "%s could not start (%s)"
msgstr "%s قابل اجرا نیست(%s)"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, c-format
msgid "%s could not start."
msgstr "%s قابل اجرا نیست."
@@ -60,125 +60,141 @@ msgstr "%s قابل اجرا نیست."
msgid "&Add Film...\tCtrl-A"
msgstr "&افزودن فیلم...\tCtrl-A"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr "&افزودن نسخه اصلی(OV)..."
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "&بستن"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
msgid "&Close\tCtrl-W"
msgstr "&بستن ...\tCtrl-W"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "&ویرایش"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&خروج"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&فایل"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "&راهنما"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&عملیات"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&ساخت دی سی پی ...\tCtrl-M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&باز کردن...\tCtrl-O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
msgid "&Preferences...\tCtrl-,"
msgstr "&اولویتها.…\tCtrl-,"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&اولویتها...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&خروج از برنامه"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&ذخیره کردن ...\tCtrl-S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
msgid "&Save frame to file...\tCtrl-S"
msgstr "& ذخیره سازی فریم در یک فایل...\tCtrl-S"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "& ارسال دی سی پی به نرم افزار سامانه مدیریت نمایش (DCP to TMS)"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "&ابزارها"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "&مشاهده"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr "<b>لیست نمایش:</b>"
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr "<b>لیست نمایش:</b>"
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "در باره ما"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, c-format
msgid "About %s"
msgstr "در باره %s"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
msgid "Add"
msgstr "اضافه کردن"
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
msgid "Add &KDM..."
msgstr "اضافه کردن &کلید..."
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "اضافه کردن &کلید..."
+
+#: src/tools/dcpomatic_playlist.cc:80
msgid "Add content"
msgstr "اضافه کردن محتوا"
@@ -198,8 +214,8 @@ msgstr "اضافه کردن پوشه..."
msgid "Add..."
msgstr "اضافه کردن..."
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, c-format
msgid ""
"An exception occurred: %s\n"
@@ -210,10 +226,10 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -224,7 +240,7 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -235,8 +251,8 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -247,64 +263,76 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, c-format
msgid "An unknown error has occurred with the %s."
msgstr "یک خطای ناشناخته برای %s پیش آمده است."
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "یک استثناء ناشناخته روی داده است."
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, c-format
msgid "An unknown exception occurred. %s"
msgstr "یک استثناء ناشناخته روی داده است. %s"
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr "توضیح تکمیلی"
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
msgstr ""
"آیا از برگرداندن اولویتها به حالت پیش فرض اطمینان دارید؟ قابل بازگشت نیست."
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr "خطای تنظیمات برای %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr "ترکیب لیست نمایش(CPL)"
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "ترکیب لیست نمایش رمزگذاری شده نیست."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "اقدام به روز رسانی"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr "یک پوشه دی سی پی انتخاب کنید"
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, c-format
msgid "Close %s"
msgstr "بستن %s"
@@ -313,35 +341,35 @@ msgstr "بستن %s"
msgid "Close without saving film"
msgstr "بستن، بدون ذخیره کردن فیلم"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr "زیر نویسها..."
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr "ترکیب کردن"
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr "ترکیب کردن دی سی پی ها"
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr "متن عنوان محتوا"
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr "کپی دی سی پی"
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "کپی تنظیمات...\tCtrl-C"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr "نمیتوان پوشه برای ذخیره فیلم ساخت."
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
@@ -349,15 +377,15 @@ msgstr ""
"کلید توزیع قابل بازگشایی نیست. ممکن است این کلید با گواهینامه درست ایجاد "
"نشده باشد."
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
msgid "Could not duplicate project."
msgstr "تولید نسخه مشابه پروژه ممکن نیست."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "مبدل دسته ای( Batch converter) پیدا نشد."
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
msgid "Could not find player."
msgstr "نرم افزار پلیر(Player) پیدا نشد."
@@ -370,21 +398,21 @@ msgstr ""
"امکان انتظار برای عملیات جدید دسته ای وجود ندارد. ممکن است نسخه دیگری از "
"مبدل دسته ای %s در حال کار باشد."
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
msgid "Could not load DCP"
msgstr "دی سی پی قابل فراخوانی نیست"
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, c-format
msgid "Could not load DCP %s"
msgstr "دی سی پی قابل فراخوانی نیست %s"
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, c-format
msgid "Could not load DCP %s."
msgstr "دی سی پی قابل فراخوانی نیست %s."
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, c-format
msgid ""
"Could not load DCP.\n"
@@ -395,40 +423,42 @@ msgstr ""
"\n"
"%s."
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "کلید قابل فراخوانی نیست."
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr "نمیتوان یک دی سی پی از این محل فراخوانی کرد %s"
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
-msgstr "فیلم قابل فراخوانی نیست%1"
+#, c++-format
+msgid "Could not load film {}"
+msgstr "فیلم قابل فراخوانی نیست{}"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "فیلم قابل فراخوانی نیست %1 (%2)"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "فیلم قابل فراخوانی نیست {} ({})"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, c-format
msgid "Could not load stress test file %s"
msgstr "فایل تست استرس قابل فراخوانی نیست %s"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr "دی سی پی قابل ساخت نیست."
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, c-format
msgid "Could not open film at %s"
msgstr "فیلم در این مسیر باز نمیشود %s"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, c-format
msgid "Could not open this folder as a %s project."
msgstr "نمیتوان این پوشه را به عنوان یک پروژه %sباز کرد."
@@ -441,7 +471,7 @@ msgstr ""
"فایل به عنوان کلید. قابل خواندن نیست. حجم فایل خیلی زیاد است. از فراخوانی یک "
"فایل کلید توزیع با پسوند ایکس ام ال مطمئن شوید."
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
@@ -449,23 +479,23 @@ msgstr ""
"خواندن فایل به عنوان کلید میسر نیست. ممکن است قالب آن درست نباشد، یا اصلا یک "
"فایل کلید نباشد."
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr "فایل اولویتها موجود قابل حذف نیست"
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
msgid "Could not save project."
msgstr "پروژه قابل ذخیره شدن نیست."
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
msgid "Could not save template."
msgstr "قالب، قابل ذخیره شدن نیست."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "دی سی پی قابل نمایش نیست."
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
@@ -473,22 +503,22 @@ msgstr ""
"مبدل دسته ای قابل اجرا نیست. ممکن است نیاز باشد تا از سایت dcpomatic.com "
"آنرا دانلود کنید."
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
"پلیر قابل اجرا نیست. ممکن است نیاز باشد تا از سایت dcpomatic.com آنرا دانلود "
"کنید."
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
msgstr ""
"نمیتوان در مسیر %s روی فایل پیکربندی(config) نوشت. تغییرات ذخیره نمیشود."
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
msgid "Could not write to config file. Your changes have not been saved."
msgstr "نمیتوان روی فایل پیکربندی(config) نوشت. تغییرات ذخیره نمیشود."
@@ -496,23 +526,27 @@ msgstr "نمیتوان روی فایل پیکربندی(config) نوشت. تغی
msgid "Create KDMs"
msgstr "ایجاد کلیدها"
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr "سازنده"
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
msgid "DCP"
msgstr "دی سی پی"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
msgstr "سرور رمزگذاری دی سی پی-او-ماتیک"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr "دی سی پی ها"
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr "ترکیب دی سی پی ها با موفقیت انجام شد."
@@ -526,23 +560,23 @@ msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr ""
"کلید توزیع %s در لیست کلیدهای توزیع وجود دارد و دوباره قابل اضافه شدن نیست."
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr "نمایش با رزولوشن کامل"
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr "نمایش با نصف رزولوشن"
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr "نمایش با یک چهارم رزولوشن"
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr "پاک کردن"
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
@@ -551,16 +585,16 @@ msgstr ""
"آیا بسته Disk Writer.pkg متعلق به %s را از dmg. نصب کرده اید؟ لطفا بررسی و "
"دوباره امتحان کنید."
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Disk Writer"
msgstr "دیسک نویس"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr "کاری انجام نده"
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
@@ -568,7 +602,7 @@ msgstr ""
"آیا پیغام \"User Account Control\" در مورد dcpomatic2_disk_writer.exe را "
"مشاهده میکنید؟ اگر اینطور است، با کلیک روی \"Yes\" دوباره امتحان کنید."
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr "آیا میخواهید بر روی دی سی پی موجود نوشته شود%s؟"
@@ -581,23 +615,23 @@ msgstr "نبندید"
msgid "Don't duplicate"
msgstr "نسخه مشابه ایجاد نکن"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr "پایین"
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr "درایو"
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr "نمایش فیلم در صفحه دوم....Shift+F11"
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "تولید نسخه مشابه فیلم"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "تولید نسخه مشابه و باز کردن...."
@@ -605,39 +639,50 @@ msgstr "تولید نسخه مشابه و باز کردن...."
msgid "Duplicate without saving film"
msgstr "تولید نسخه مشابه فیلم بدون ذخیره کردن آن"
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "تولید نسخه مشابه..."
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr "مدت زمان"
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr "تغییرحلقه"
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+#, fuzzy
+msgid "Edit..."
+msgstr "&ویرایش"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "سرورهای رمزگذاری..."
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr "رمزگذاری شده"
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr "نقطه ورودی"
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+#, fuzzy
+msgid "Examining DCPs"
+msgstr "ترکیب کردن دی سی پی ها"
+
+#: src/tools/dcpomatic.cc:1446
msgid "Export preferences..."
msgstr "اکسپورت اولویتها..."
-#: src/tools/dcpomatic.cc:1403
-msgid "Export subtitles..."
+#: src/tools/dcpomatic.cc:1418
+#, fuzzy
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "اکسپورت زیرنویس ها..."
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
msgid "Export video file...\tCtrl-E"
msgstr "اکسپورت فایل ویدیو...\tCtrl-E"
@@ -645,11 +690,11 @@ msgstr "اکسپورت فایل ویدیو...\tCtrl-E"
msgid "Export..."
msgstr "اکسپورت..."
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr ""
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "فایل %s وجود دارد. آیا میخواهید بر روی آن نوشته شود؟"
@@ -660,7 +705,7 @@ msgstr "فایل %s وجود دارد. آیا میخواهید بر روی آن
msgid "Film changed"
msgstr "فیلم تغییر کرد"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr "در حال یافتن دیسکها"
@@ -669,35 +714,35 @@ msgstr "در حال یافتن دیسکها"
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "پوشه %s وجود دارد. آیا میخواهید بر روی آن نوشته شود؟"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "فریم بر ثانیه"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr "نمایش تمام صفحه...F11"
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "نکات..."
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
msgid "Import preferences..."
msgstr "ایمپورت اولویت ها..."
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr "ورود دی سی پی"
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr "مدت زمان اصلی"
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr "صادر کننده"
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -714,61 +759,61 @@ msgstr ""
msgid "KDM|Timing"
msgstr "کلید|زمان بندی"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr "مدت"
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
msgid "Loading content"
msgstr "بارگذاری محتوا"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
msgid "Make &DKDMs...\tCtrl-D"
msgstr "ساخت &کلیدهای توزیع...\tCtrl-D"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "ساخت &کلیدها...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "ساخت دی سی پی در &مبدل دسته ای...\tCtrl-B"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, c-format
msgid "Make DKDM for %s..."
msgstr "ساخت کلید توزیع برای %s..."
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr "مدیریت قالب ها..."
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr "اسم"
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr "جدید"
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "فیلم جدید"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr "لیست نمایش جدید"
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "جدید.....\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
@@ -776,7 +821,7 @@ msgstr ""
"فایل ASSETMAPیا ASSETMAP.xml در این پوشه نیست. لطفا یک پوشه دی سی پی انتخاب "
"کنید."
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
@@ -784,11 +829,11 @@ msgstr ""
"پوشه لیست نمایش دراولویتها مشخص نشده است. لطفا آنرا مشخص و دوباره امتحان "
"کنید."
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr "بازکردن دی سی پی در &پلیر"
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr "بازکردن دی سی پی با استفاده از \"فایل---> بازکردن\""
@@ -796,16 +841,16 @@ msgstr "بازکردن دی سی پی با استفاده از \"فایل---> ب
msgid "Output"
msgstr "خروجی"
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr "پوشه خروجی دی سی پی"
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "چسباندن تنظیمات...\tCtrl-V"
@@ -817,11 +862,11 @@ msgstr "توقف یا ادامه تبدیل"
msgid "Pause/resume"
msgstr "توقف/ادامه"
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr "تصویر"
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
@@ -829,73 +874,73 @@ msgid ""
msgstr ""
"لطفا بررسی کنید که Windows controlled folder access برای %s فعال نباشد."
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr "خیر"
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr "بله"
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
msgid "Quit"
msgstr "خروج"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr "ساخت مجدد زنجیره رمزگشایی کلید"
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr "ساخت مجدد گواهینامه"
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr "حلقه ها"
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr "تازه کردن"
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr "یادداشتهای انتشار"
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "حذف"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "گزارش یک مشکل..."
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "فراخوانی اولویت های پیش فرض"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr ""
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
msgid "S&how DCP in Explorer"
msgstr "S&نمایش دی سی پی در مرورگر فایل"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
msgid "S&how DCP in Files"
msgstr "S&نمایش دی سی پی در فابلها"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
msgid "S&how DCP in Finder"
msgstr "S&نمایش دی سی پی در جستجوگر"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
msgid "Save"
msgstr "ذخیره"
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr "ذخیره به عنوان &قالب..."
@@ -917,7 +962,7 @@ msgstr "ذخیره فیلم و بستن"
msgid "Save film and duplicate"
msgstr "ذخیره فیلم و تولید نسخه مشابه"
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr "ذخیره فریم در یک فایل"
@@ -925,14 +970,19 @@ msgstr "ذخیره فریم در یک فایل"
msgid "Screens"
msgstr "صفحات"
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr "یک دی سی پی جهت باز شدن انتخاب کنید"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr "یک دی سی پی انتخاب کنید تا به عنوان نسخه اصلی باز شود"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "انتخاب کلید"
+
#: src/tools/dcpomatic_kdm.cc:821
msgid "Select DKDM File"
msgstr "فایل کیلد توزیع را انتخاب کنید"
@@ -941,15 +991,15 @@ msgstr "فایل کیلد توزیع را انتخاب کنید"
msgid "Select DKDM file"
msgstr "فایل کیلد توزیع را انتخاب کنید"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr "انتخاب کلید"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr "انتخاب همه....\tShift-Ctrl-A"
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "انتخاب فیلم جهت باز شدن"
@@ -957,36 +1007,36 @@ msgstr "انتخاب فیلم جهت باز شدن"
msgid "Send KDM emails"
msgstr "ارسال پست الکترونیکی کلیدها"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr "تنظیم رزولوشن نمایش فیلم، متناسب با صفحه نمایش"
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr "صدا"
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr "فایل فشرده را مشخص کنید"
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr "وضعیت..."
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr "زیرنویس"
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr "اطلاعات سیستم..."
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, c-format
msgid "The %s download server could not be contacted."
msgstr "ارتباط با سرور دانلود %s برقرار نیست."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -1006,7 +1056,7 @@ msgstr ""
"است، اما فضای خالی دیسک مورد استفاده فقط%.1fگیگابایت است. به هر حال می "
"خواهید این فیلم را به صف اضافه کنید؟"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr "این کلید اجازه نمایش این محتوا را در حال حاضر ندارد."
@@ -1029,11 +1079,11 @@ msgstr ""
"تاریخ شروع اعتبار این کلید قبل از شروع(یا نزدیک به) تاریخ گواهینامه دستگاه "
"میباشد. تاریخی دیرتر برای شروع اعتبار این کلید انتخاب کنید."
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr "زنجیره گواهینامه برای امضاء نادرست است"
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1051,7 +1101,7 @@ msgstr ""
"ممکن است انتخاب شما \"نه\" باشد\n"
"و بخواهید قبل از ادامه از فایل پیکربندی قبلی یک نسخه پشتیبان تهیه کنید."
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1065,7 +1115,7 @@ msgstr ""
"آیا می خواهید مجددا\n"
"زنجیره گواهینامه را بسازید؟"
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1082,7 +1132,7 @@ msgstr ""
" مشکلی در %s بوده که هم اکنون رفع شده است. آیا می خواهید مجددا\n"
"زنجیره گواهینامه را بسازید؟"
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1097,7 +1147,7 @@ msgstr ""
"نشوند. آیا می خواهید مجددا\n"
"زنجیره گواهینامه برای امضاء دی سی پی ها و کلیدها را بسازید؟"
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1112,18 +1162,19 @@ msgstr ""
" قابل اجرا نیست. آیا میخواهید مجددا زنجیره گواهینامه برای امضاء دی سی پی ها "
"و کلیدها را بسازید؟"
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
msgstr ""
-"پوشه %1 وجود دارد و خالی نیست. مطمئن هستید که می خواهید از آن استفاده کنید؟"
+"پوشه {} وجود دارد و خالی نیست. مطمئن هستید که می خواهید از آن استفاده کنید؟"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr "حافظه انتخاب شده در دسترس نیست. لطفاً حافظه دیگری انتخاب کنید."
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
@@ -1133,7 +1184,7 @@ msgstr ""
"تمام برنامه های کاربردی که از آن استفاده میکنند را ببندید، سپس دوباره امتحان "
"کنید.(%s)"
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
@@ -1141,17 +1192,17 @@ msgstr ""
"بارگذاری فایل پیکربندی با خطا مواجه است. مقادیر پیش فرض جایگزین خواهند شد. "
"ساخت آن زمان کوتاهی نیاز دارد."
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, c-format
msgid "There are no new versions of %s available."
msgstr "نسخه تازه ای از %s در دسترس نیست."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr "چند عملیات ناتمام وجود دارد; آیا مطمئن هستید که از برنامه خارج میشوید؟"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1159,7 +1210,7 @@ msgstr ""
"این فیلم توسط نسخه قدیمی نرم افزار دی وی دی-او-ماتیک ساخته شده و ممکن است در "
"این نسخه درست فراخوانی نشود. لطفاً با دقت تنظیمات فیلم را بررسی کنید."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1170,59 +1221,83 @@ msgstr ""
"پوشه پروژه %s یک دی سی پی انتخاب کنید اگر همان چیزی است که می خواهید پلی "
"کنید."
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:712
msgid "Timing..."
msgstr "زمانبندی..."
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
msgid "Tools"
msgstr "ابزارها"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr "لطفا %s را از اسم پوشه حذف کنید."
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr "نوع"
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "عملیات انجام نشده"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr "حذف نصب..."
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr ""
"فرمت فایل غیر قابل تشخیص برای %s (از فرمت jpg, .jpeg یا .png استفاده کنید)"
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr "بالا"
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+#, fuzzy
+msgid "Verify"
+msgstr "صحت سنجی دی سی پی..."
+
+#: src/tools/dcpomatic_player.cc:1041
#, fuzzy
msgid "Verify DCP"
msgstr "صحت سنجی دی سی پی..."
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
msgid "Verify DCP..."
msgstr "صحت سنجی دی سی پی..."
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr "نسخه فایل(VF)..."
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "شکل موج ویدیو..."
+#: src/tools/dcpomatic_verifier.cc:194
+#, fuzzy
+msgid "Write logs to DCP folders"
+msgstr "یک پوشه دی سی پی انتخاب کنید"
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
@@ -1232,7 +1307,7 @@ msgstr ""
"توزیع برای آن ساخته شده غیرممکن خواهد شد، و قابل بازگشت نیست. آیا اطمینان "
"دارید؟"
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1253,7 +1328,7 @@ msgstr ""
"آنرا از دست بدهید کلیدهای توزیع شما(و دی سی پی های حفاظت شده توسط آن) غیر "
"قابل استفاده خواهند شد."
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1269,7 +1344,7 @@ msgstr ""
"مطمئن شوید که از فایلهای نامبرده فوق ر<span weight=\"bold\" size=\"larger\"> "
"پشتیبان تهیه کرده اید </span> اگر میخواهید برای این فیلم کلید بسازید."
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1280,7 +1355,7 @@ msgstr ""
"مقدار حافظه در دسترس %s محدود شده و ممکن است باعث خطا گردد. توصیه اکید میشود "
"که نسخه 64 بیتی %s را نصب کنید."
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
@@ -1288,15 +1363,19 @@ msgstr ""
"شما به درستی تایید نکردید که اخطاری که به تازگی نشان داده شده را خوانده اید. "
"لطفاً دوباره تلاش کنید."
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
msgstr ""
"شما پوشه ای انتخاب نکردید. قبل از اقدام به بازکردن، پوشه ای را انتخاب کنید."
+#, fuzzy
+#~ msgid "Choose a folder"
+#~ msgstr "یک پوشه دی سی پی انتخاب کنید"
+
#~ msgid ""
#~ "The player is dropping a lot of frames, so playback may not be accurate.\n"
#~ "\n"
diff --git a/src/tools/po/fr_FR.po b/src/tools/po/fr_FR.po
index 8f1d07631..6e552f1da 100644
--- a/src/tools/po/fr_FR.po
+++ b/src/tools/po/fr_FR.po
@@ -7,49 +7,49 @@ msgid ""
msgstr ""
"Project-Id-Version: DCP-o-matic FRENCH\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
-"PO-Revision-Date: 2024-12-07 15:17+0100\n"
-"Last-Translator: Grégoire AUSINA <gregoire@gisele-productions.eu>\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
+"PO-Revision-Date: 2025-09-28 14:20+0200\n"
+"Last-Translator: Dan Cohen <thedan.cohen@protonmail.com>\n"
"Language-Team: \n"
"Language: fr_FR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 3.4.2\n"
+"X-Generator: Poedit 3.7\n"
#: src/tools/dcpomatic_kdm.cc:491
#, c-format
msgid "%d KDM written to %s"
-msgstr "%d KDM créée dans %s"
+msgstr "%d KDM créé dans %s"
#: src/tools/dcpomatic_kdm.cc:491
#, c-format
msgid "%d KDMs written to %s"
-msgstr "%d KDMs créées dans %s"
+msgstr "%d KDMs créés dans %s"
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
msgstr ""
"Le nom de fichier %s existe déjà, vous ne pouvez l'utiliser pour un DCP."
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, c-format
msgid "%s could not start"
msgstr "%s n'a pas pu démarrer"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, c-format
msgid "%s could not start %s"
msgstr "%s n'a pas pu démarrer %s"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, c-format
msgid "%s could not start (%s)"
msgstr "%s n'a pas pu démarrer (%s)"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, c-format
msgid "%s could not start."
msgstr "%s n'a pas pu démarrer."
@@ -58,125 +58,141 @@ msgstr "%s n'a pas pu démarrer."
msgid "&Add Film...\tCtrl-A"
msgstr "&Ajouter un film...\tCtrl-A"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr "&Ajouter une OV..."
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "&Fermer"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
msgid "&Close\tCtrl-W"
msgstr "&Fermer\tCtrl-W"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "&Édition"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&Quitter"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&Fichier"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "&Aide"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&Tâches"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&Créer le DCP\tCtrl-M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&Ouvrir...\tCtrl-O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
msgid "&Preferences...\tCtrl-,"
msgstr "&Préférences...\tCtrl-,"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&Préférences...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&Quitter"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&Enregistrer\tCtrl+S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
msgid "&Save frame to file...\tCtrl-S"
msgstr "&Enregistrer l'image...\tCtrl-S"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "&Envoyer le DCP au TMS"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "&Outils"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "&Affichage"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr "<b>Liste de lecture :</b>"
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr "<b>Listes de lecture</b>"
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "À propos"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, c-format
msgid "About %s"
msgstr "À propos %s"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
msgid "Add"
msgstr "Ajouter"
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
msgid "Add &KDM..."
msgstr "Ajouter un &KDM..."
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "Ajouter un &KDM..."
+
+#: src/tools/dcpomatic_playlist.cc:80
msgid "Add content"
msgstr "Ajouter du contenu"
@@ -196,8 +212,8 @@ msgstr "Ajouter un dossier..."
msgid "Add..."
msgstr "Ajouter..."
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, c-format
msgid ""
"An exception occurred: %s\n"
@@ -208,10 +224,10 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -222,7 +238,7 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -233,8 +249,8 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -245,65 +261,77 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, c-format
msgid "An unknown error has occurred with the %s."
msgstr "Une erreur inconnue s'est produite avec le serveur %s."
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "Une exception inconnue s'est produite."
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, c-format
msgid "An unknown exception occurred. %s"
msgstr "Une exception inconnue s'est produite. %s"
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr "Texte d'annotation"
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
msgstr ""
-"Êtes-vous sûr de vouloir restaurer les préférences à leurs valeurs par "
+"Êtes-vous sûr·e de vouloir restaurer les préférences à leurs valeurs par "
"défaut ? Cette opération ne peut être annulée."
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr "Mauvais réglage pour %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr "CPL"
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "Le contenu de la CPL n'est pas crypté."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
-msgstr ""
+msgstr "CPL: %s"
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr "Annuler"
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "Rechercher des mises à jour"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr "Choisir un dossier de DCP"
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, c-format
msgid "Close %s"
msgstr "Fermer %s"
@@ -312,51 +340,51 @@ msgstr "Fermer %s"
msgid "Close without saving film"
msgstr "Fermer sans enregistrer"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr "Sous-titres codés..."
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr "Combiner"
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
-msgstr "En cours de combinaison de DCP"
+msgstr "DCPs en cours de combinaison"
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr "Texte du titre du contenu"
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr "Copier des DCP"
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "Copier les réglages\tCtrl-C"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr "Impossible de créer un dossier pour stocker le DCP."
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
msgstr ""
-"Impossible de décrypter le DKDM. Peut-être n'a-t-il pas été créé avec le "
+"Impossible de décrypter le DKDM. Peut-être n'a-t-il pas été créé pour le "
"bon certificat."
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
msgid "Could not duplicate project."
msgstr "Impossible de dupliquer le projet."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "Impossible de trouver le convertisseur par lots."
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
msgid "Could not find player."
msgstr "Impossible de trouver le lecteur."
@@ -369,21 +397,21 @@ msgstr ""
"Impossible de se mettre en attente de lots à traiter. Une autre instance de "
"%s est peut-être en cours d'exécution."
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
msgid "Could not load DCP"
msgstr "Chargement du DCP impossible"
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, c-format
msgid "Could not load DCP %s"
msgstr "Impossible de charger le DCP %s"
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, c-format
msgid "Could not load DCP %s."
msgstr "Impossible de charger le DCP %s."
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, c-format
msgid ""
"Could not load DCP.\n"
@@ -394,40 +422,42 @@ msgstr ""
"\n"
"%s."
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "Impossible de charger le KDM."
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr "Impossible de charger un DCP depuis %s"
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
-msgstr "Impossible de charger le film %1"
+#, c++-format
+msgid "Could not load film {}"
+msgstr "Impossible de charger le film {}"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "Impossible de charger le film %1 (%2)"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "Impossible de charger le film {} ({})"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, c-format
msgid "Could not load stress test file %s"
msgstr "Impossible de charger le film test %s"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr "Impossible de créer le DCP."
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, c-format
msgid "Could not open film at %s"
msgstr "Impossible d'ouvrir le film à %s"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, c-format
msgid "Could not open this folder as a %s project."
msgstr "Impossible d'ouvrir ce dossier en tant que projet %s."
@@ -440,31 +470,31 @@ msgstr ""
"Impossible de lire le fichier comme un KDM. Il est trop lourd. Assurez-"
"vous que vous chargez un fichier DKDM (XML)."
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
msgstr ""
"Impossible de lire le fichier comme un KDM. Peut-être est-il mal formaté, "
-"ou n'est-il pas du tout un KDM."
+"ou n'est-il pas du tout une KDM."
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr "Impossible de supprimer le fichier de préférences existant"
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
msgid "Could not save project."
msgstr "Impossible de sauvegarder le projet."
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
msgid "Could not save template."
msgstr "Impossible de sauvegarder le modèle."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "Impossible d'afficher le DCP."
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
@@ -472,15 +502,15 @@ msgstr ""
"Impossible de lancer le convertisseur par lots. Vous devrez peut-être le "
"télécharger depuis dcpomatic.com."
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
"Impossible de lancer le lecteur. Vous devrez peut-être le télécharger "
"depuis dcpomatic.com."
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
@@ -488,7 +518,7 @@ msgstr ""
"Impossible d'écrire dans le fichier de configuration à %s. Vos "
"modifications n'ont pas été enregistrées."
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
msgid "Could not write to config file. Your changes have not been saved."
msgstr ""
"Impossible d'écrire dans le fichier de configuration. Vos modifications "
@@ -498,23 +528,27 @@ msgstr ""
msgid "Create KDMs"
msgstr "Créer les KDMs"
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr "Créateur"
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr "Rogner"
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
msgid "DCP"
msgstr "DCP"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
msgstr "Serveur d'encodage DCP-o-matic"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
-msgstr "DCP"
+msgstr "DCPs"
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr "Les DCP ont été combinés avec succès."
@@ -526,25 +560,25 @@ msgstr "DKDM"
#, c-format
msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr ""
-"Le DKDM %s est déjà dans la liste des DKDM et ne sera pas ajouté à nouveau."
+"Le DKDM %s est déjà dans la liste des DKDMs et ne sera pas ajouté à nouveau."
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr "Décoder en pleine résolution"
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr "Décoder en demi résolution"
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr "Décoder en quart de résolution"
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr "Supprimer"
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
@@ -553,24 +587,25 @@ msgstr ""
"Avez-vous installé le %s Disk Writer.pkg depuis le .dmg? Merci de vérifier "
"et réessayer."
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Disk Writer"
msgstr "Graveur de disque"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr "Ne rien faire"
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
msgstr ""
-"Voyez-vous une boîte de dialogue 'User Account Control' vous questionnant "
-"sur dcpomatic2_disk_writer.exe? Dans ce cas, cliquez sur 'Oui' et réessayez."
+"Voyez-vous une boîte de dialogue 'Contrôle de compte d'utilisateur' vous "
+"questionnant sur dcpomatic2_disk_writer.exe? Dans ce cas, cliquez sur 'Oui' "
+"et réessayez."
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr "Voulez-vous écraser le DCP %s existant ?"
@@ -583,23 +618,23 @@ msgstr "Ne pas fermer"
msgid "Don't duplicate"
msgstr "Ne pas dupliquer"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr "Bas"
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr "Disque"
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr "Double écran\tShift+F11"
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "Dupliquer le film"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "Dupliquer et ouvrir..."
@@ -607,51 +642,61 @@ msgstr "Dupliquer et ouvrir..."
msgid "Duplicate without saving film"
msgstr "Dupliquer sans enregistrer le film"
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "Dupliquer..."
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr "Durée"
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr "Éditer la bobine"
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+msgid "Edit..."
+msgstr "Édition…"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "Serveurs d'encodage..."
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr "Encrypté"
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr "Point d'entrée"
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+#, fuzzy
+msgid "Examining DCPs"
+msgstr "DCPs en cours de combinaison"
+
+#: src/tools/dcpomatic.cc:1446
msgid "Export preferences..."
msgstr "Exporter les préférences..."
-#: src/tools/dcpomatic.cc:1403
-msgid "Export subtitles..."
+#: src/tools/dcpomatic.cc:1418
+#, fuzzy
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "Exporter les sous-titres..."
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
msgid "Export video file...\tCtrl-E"
-msgstr "Export le fichier vidéo...\tCtrl-E"
+msgstr "Exporter le fichier vidéo...\tCtrl-E"
#: src/tools/dcpomatic_kdm.cc:220
msgid "Export..."
msgstr "Exporter..."
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
-msgstr ""
+msgstr "Œil"
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "Le fichier %s existe déjà. Voulez-vous le remplacer ?"
@@ -662,7 +707,7 @@ msgstr "Le fichier %s existe déjà. Voulez-vous le remplacer ?"
msgid "Film changed"
msgstr "Film modifié"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr "Recherche des disques"
@@ -671,35 +716,35 @@ msgstr "Recherche des disques"
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "Le dossier %s existe déjà. Voulez-vous le remplacer ?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "Images par seconde"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr "Plein écran\tF11"
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "Conseils..."
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
msgid "Import preferences..."
msgstr "Importer les préférences..."
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr "DCP source"
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr "Durée intrinsèque"
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr "Émetteur"
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -714,63 +759,63 @@ msgstr ""
#. TRANSLATORS: translate the word "Timing" here; do not include the "KDM|" prefix
#: src/tools/dcpomatic_kdm.cc:169
msgid "KDM|Timing"
-msgstr "KDM|Chronologie"
+msgstr "KDM|Validité"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
-msgstr ""
+msgstr "Gauche"
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr "Durée"
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
msgid "Loading content"
msgstr "Chargement du contenu"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
msgid "Make &DKDMs...\tCtrl-D"
msgstr "Générer des &DKDMs...\tCtrl-D"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "Générer des &KDMs...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "Créer un DCP dans le &convertisseur par lots\tCtrl-B"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, c-format
msgid "Make DKDM for %s..."
-msgstr "Créer une DKDM pour %s..."
+msgstr "Créer un DKDM pour %s..."
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr "Gérer les modèles..."
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr "Nom"
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr "Nouveau"
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "Nouveau film"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr "Nouvelle liste de lecture"
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Nouveau...\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
@@ -778,7 +823,7 @@ msgstr ""
"Aucun fichier ASSETMAP ou ASSETMAP.xml trouvé dans ce dossier. Merci de "
"choisir un dossier de DCP."
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
@@ -786,11 +831,11 @@ msgstr ""
"Aucun dossier de liste de lecture n'est spécifié dans les préférences. "
"Veuillez en définir un et réessayer."
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr "Ouvrir le DCP dans le &lecteur"
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr "Ouvrir un DCP via Fichier -> Ouvrir"
@@ -798,16 +843,16 @@ msgstr "Ouvrir un DCP via Fichier -> Ouvrir"
msgid "Output"
msgstr "Sortie"
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr "Dossier du DCP de destination"
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
-msgstr ""
+msgstr "PKL : %s"
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "Coller les paramètres...\tCtrl-P"
@@ -819,86 +864,86 @@ msgstr "Mettre en pause ou redémarrer la conversion"
msgid "Pause/resume"
msgstr "Pause/redémarrer"
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr "Image"
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
"for %s."
msgstr ""
-"Veuillez vérifier que l'accès aux dossiers contrôlés par Windows n'est pas "
-"activé pour %s."
+"Veuillez vérifier dans Sécurité Windows que l'accès contrôlé aux dossiers "
+"n'est pas activé pour %s."
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr "Question|N"
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr "Question|O"
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
msgid "Quit"
msgstr "Quitter"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr "Recréer la chaîne de décryptage KDM"
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr "Recréer les certificats de signature"
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr "Bobines"
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr "Rafraîchir"
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr "Notes de mise à jour"
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "Supprimer"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "Signaler un problème..."
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Rétablir les préférences par défaut"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
-msgstr ""
+msgstr "Droit"
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
msgid "S&how DCP in Explorer"
msgstr "A&fficher le DCP dans l'explorateur"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
msgid "S&how DCP in Files"
msgstr "A&fficher le DCP dans les fichiers"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
msgid "S&how DCP in Finder"
msgstr "A&fficher le DCP dans le Finder"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
msgid "Save"
msgstr "Enregistrer"
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr "Enregistrer comme &modèle..."
@@ -920,7 +965,7 @@ msgstr "Enregistrer le film et fermer"
msgid "Save film and duplicate"
msgstr "Enregistrer le film et dupliquer"
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr "Enregistrer l'image dans un fichier"
@@ -928,14 +973,19 @@ msgstr "Enregistrer l'image dans un fichier"
msgid "Screens"
msgstr "Écrans"
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr "Sélectionner le DCP à ouvrir"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr "Sélectionner le DCP à ouvrir en tant qu'OV"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "Sélectionner le KDM"
+
#: src/tools/dcpomatic_kdm.cc:821
msgid "Select DKDM File"
msgstr "Sélectionner le fichier DKDM"
@@ -944,15 +994,15 @@ msgstr "Sélectionner le fichier DKDM"
msgid "Select DKDM file"
msgstr "Sélectionner le fichier DKDM"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr "Sélectionner le KDM"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr "Sélectionner tout\tShift-Ctrl-A"
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "Sélectionner le film à ouvrir"
@@ -960,36 +1010,36 @@ msgstr "Sélectionner le film à ouvrir"
msgid "Send KDM emails"
msgstr "Envoyer les e-mails de KDM"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr "Régler la résolution de décodage en fonction de l'affichage"
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr "Son"
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr "Spécifier le fichier ZIP"
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr "Statut..."
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr "Sous-titre"
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr "Informations système..."
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, c-format
msgid "The %s download server could not be contacted."
msgstr "Le serveur de téléchargement de %s n'a pas pu être contacté."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -1009,7 +1059,7 @@ msgstr ""
"GB. Les disques que vous utilisez ne disposent que de %.1f GB. Voulez-vous "
"quand même ajouter ce film à la file d'attente ?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr "Le KDM n'autorise pas la lecture de ce contenu pour le moment."
@@ -1020,24 +1070,23 @@ msgid ""
"certificates' validity period. Either use an earlier end time for this KDM "
"or re-create your signing certificates in the %s preferences window."
msgstr ""
-"La période de fin du KDM est après (ou proche de) la fin de validité des "
-"certificats de signature. Définissez une fin de validité du KDM antérieure "
-"ou recréez vos certificats de signature dans la fenêtre de préférences de %s."
+"Le KDM expire après (ou juste avant) les certificats de signature. "
+"Définissez une fin de validité antérieure pour le KDM ou recréez vos "
+"certificats de signature dans la fenêtre de préférences de %s."
#: src/tools/dcpomatic_kdm.cc:499
msgid ""
"The KDM start period is before (or close to) the start of the signing "
"certificate's validity period. Use a later start time for this KDM."
msgstr ""
-"La période de début du KDM est avant le (ou proche du) début de la validité "
-"des certificats de signature. Définissez un début de validité du KDM plus "
-"tardif."
+"La validité du KDM démarre avant (ou juste après) celle des certificats de "
+"signature. Définissez un début de validité plus tardif pour le KDM."
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr "La chaîne de certificat pour la signature n'est pas valide"
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1047,15 +1096,15 @@ msgid ""
"and back up your\n"
"configuration before continuing."
msgstr ""
-"La chaîne de certificats que %s utilise pour décrypter les KDM est "
-"incohérente et\n"
-"ne peut pas être utilisée. %s ne peut pas démarrer si vous ne le recréez "
+"La chaîne de certificats que %s utilise pour décrypter les KDMs est "
+"incohérente\n"
+"et ne peut pas être utilisée. %s ne peut pas démarrer si vous ne la recréez "
"pas.\n"
-"Voulez-vous recréer la chaîne de certificats pour le décryptage des KDM ? "
+"Voulez-vous recréer la chaîne de certificats pour le décryptage des KDMs ? "
"Il est préférable\n"
"de dire \"Non\" ici et de sauvegarder votre configuration avant de continuer."
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1065,12 +1114,12 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
"La chaîne de certificats que %s utilise pour signer les DCPs et les KDMs "
-"contient une\n"
-"petite erreur qui empêche la validation correcte des DCPs sur certains "
-"systèmes. Voulez-vous\n"
-"recréer la chaîne de certificats pour la signature des DCPs et des KDMs ?"
+"contient une petite erreur\n"
+"qui empêche la validation correcte des DCPs sur certains systèmes.\n"
+"Voulez-vous recréer la chaîne de certificats pour la signature des DCPs et "
+"des KDMs ?"
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1082,14 +1131,13 @@ msgid ""
"for signing DCPs and KDMs?"
msgstr ""
"La chaîne de certificats que %s utilise pour signer les DCPs et les KDMs "
-"contient une\n"
-"petite erreur qui empêche la validation correcte des DCPs sur certains "
-"systèmes. \n"
+"contient une petite erreur\n"
+"qui empêche la validation correcte des DCPs sur certains systèmes. \n"
"Cette erreur a été causée par un bug dans %s, qui a depuis été résolu.\n"
"Voulez-vous recréer la chaîne de certificats pour la signature des DCPs et "
"des KDMs ?"
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1098,14 +1146,14 @@ msgid ""
"systems.\n"
"Do you want to re-create the certificate chain for signing DCPs and KDMs?"
msgstr ""
-"La chaîne de certificats que %s utilise pour signer les DCP et les KDM a une "
-"période\n"
+"La chaîne de certificats que %s utilise pour signer les DCP et les KDMs a "
+"une période\n"
"de validité trop longue. trop longue. Cela entraîne des problèmes de "
"lecture des DCP sur certains\n"
"systèmes. Voulez-vous recréer la chaîne de certificats pour signer les DCPs "
"et les KDMs ?"
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1121,20 +1169,21 @@ msgstr ""
"Voulez-vous recréer la chaîne de certificats pour la signature des DCPs et "
"des KDMs ?"
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
msgstr ""
-"Le répertoire %1 existe déjà et n'est pas vide. Êtes-vous sûr de vouloir "
+"Le répertoire {} existe déjà et n'est pas vide. Êtes-vous sûr·e de vouloir "
"l'utiliser ?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr ""
"Le disque sélectionné n'est plus disponible. Veuillez en choisir un autre."
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
@@ -1143,7 +1192,7 @@ msgstr ""
"Le disque %s n'a pas pu être démonté.\n"
"Fermez les applications l'utilisant et réessayez. (%s)"
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
@@ -1151,17 +1200,17 @@ msgstr ""
"La configuration existante n'a pu être chargée. Les valeurs par défaut "
"seront utilisées à la place. Cela peut prendre un peu de temps."
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, c-format
msgid "There are no new versions of %s available."
msgstr "Pas de mise à jour disponible de %s pour l'instant."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
-msgstr "Il y a des tâches inachevées ; êtes-vous sûr de vouloir quitter ?"
+msgstr "Il y a des tâches inachevées ; êtes-vous sûr·e de vouloir quitter ?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1170,7 +1219,7 @@ msgstr ""
"pas se charger correctement dans cette version. Veuillez vérifier "
"attentivement les paramètres du film."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1181,68 +1230,92 @@ msgstr ""
"le lecteur. Choisissez le répertoire DCP à l'intérieur du dossier de projet "
"%s si c'est ce que vous voulez lire."
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+"Cocher pour inspecter les caractéristiques de la ressource vidéo, comme les "
+"tailles d'image et la conformité du flux JPEG2000. Ces contrôles peuvent "
+"prendre du temps."
+
+#: src/tools/dcpomatic_player.cc:712
msgid "Timing..."
msgstr "Chronologie..."
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
msgid "Tools"
msgstr "Outils"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr "Essayez d'enlever les caractères %s du nom de votre répertoire."
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr "Type"
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Tâches inachevées"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr "Désinstaller..."
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr "Extension de fichier non reconnue %s (utilisez .jpg, .jpeg ou .png)"
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr "Haut"
-#: src/tools/dcpomatic_player.cc:999
-#, fuzzy
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+msgid "Verify"
+msgstr "Vérifier"
+
+#: src/tools/dcpomatic_player.cc:1041
msgid "Verify DCP"
-msgstr "Vérifier le DCP..."
+msgstr "Vérifier le DCP"
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
msgid "Verify DCP..."
msgstr "Vérifier le DCP..."
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr "Vérifier les caractéristiques des ressources vidéo"
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
-msgstr "Fichier de version (VF)..."
+msgstr "DCP supplémental (VF)..."
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Forme d'onde vidéo..."
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr "Ecrire les rapports dans les dossiers DCP"
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
"DCP that the DKDM was made for, and it cannot be undone. Are you sure?"
msgstr ""
-"Vous êtes sur le point de supprimer une DKDM. Cela rendra impossible le "
-"décryptage du DCP pour lequel la DKDM a été créée, et cela ne peut être "
-"annulé. Êtes-vous sûr ?"
+"Vous êtes sur le point de supprimer un DKDM. Cela rendra impossible le "
+"décryptage du DCP pour lequel le DKDM a été créé, et cela ne peut être "
+"annulé. Êtes-vous sûr·e ?"
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1253,7 +1326,7 @@ msgid ""
"you <span weight=\"bold\" size=\"larger\">BACK UP THIS FILE</span> since if "
"it is lost your DKDMs (and the DCPs they protect) will become useless."
msgstr ""
-"Vous êtes sur le point de créer une DKDM qui est crypté par une clé privée "
+"Vous êtes sur le point de créer un DKDM qui est crypté par une clé privée "
"contenue dans\n"
"\n"
"<tt>%s</tt>\n"
@@ -1262,7 +1335,7 @@ msgstr ""
"weight=\"bold\" size=\"larger\">SAUVEGARDER CE FICHIER</span> car si vous le "
"perdez, votre DKDM (et les DCPs qu'il protège) seront inutilisables."
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1279,7 +1352,7 @@ msgstr ""
"size=\"larger\">SAUVEGARDÉS</span> si vous souhaitez créer des KDMs pour ce "
"film."
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1290,7 +1363,7 @@ msgstr ""
"Cela limite la mémoire disponible pour %s et peut provoquer des erreurs. Il "
"vous est fortement conseillé d'installer la version 64 bits de %s."
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
@@ -1298,9 +1371,9 @@ msgstr ""
"Vous n'avez pas confirmé avoir lu l'avertissement qui vient d'être affiché. "
"Merci de réessayer."
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
@@ -1308,6 +1381,9 @@ msgstr ""
"Vous n'avez pas sélectionné de dossier. Assurez-vous de sélectionner un "
"dossier avant de cliquer sur Ouvrir."
+#~ msgid "Choose a folder"
+#~ msgstr "Choisir un dossier"
+
#~ msgid ""
#~ "The player is dropping a lot of frames, so playback may not be accurate.\n"
#~ "\n"
@@ -1509,5 +1585,5 @@ msgstr ""
#~ msgstr "&Analyser le son"
#, fuzzy
-#~ msgid "The directory %1 already exists."
+#~ msgid "The directory {} already exists."
#~ msgstr "Le dossier %s existe déjà."
diff --git a/src/tools/po/hu_HU.po b/src/tools/po/hu_HU.po
index d2477c0f6..107a81bd1 100644
--- a/src/tools/po/hu_HU.po
+++ b/src/tools/po/hu_HU.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
"PO-Revision-Date: 2022-09-17 10:54+0200\n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -27,28 +27,28 @@ msgstr "%d KDM írása a(z) %s helyre sikeres"
msgid "%d KDMs written to %s"
msgstr "%d KDMek írása a(z) %s helyre sikeres"
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, fuzzy, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
msgstr "A(z) %s fájl már létezik. Felül kívánod írni?"
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, fuzzy, c-format
msgid "%s could not start"
msgstr "DCP-o-matic indítása sikertelen"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, fuzzy, c-format
msgid "%s could not start %s"
msgstr "DCP-o-matic indítása sikertelen"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, fuzzy, c-format
msgid "%s could not start (%s)"
msgstr "DCP-o-matic indítása sikertelen"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, fuzzy, c-format
msgid "%s could not start."
msgstr "DCP-o-matic indítása sikertelen"
@@ -57,126 +57,142 @@ msgstr "DCP-o-matic indítása sikertelen"
msgid "&Add Film...\tCtrl-A"
msgstr "&DFilm hozzáadása…\tCtrl-A"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr "&OV hozzáadása…"
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "&Bezárás"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
msgid "&Close\tCtrl-W"
msgstr "&Bezárás\tCtrl-W"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "&Szerkesztés"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&Kilépés"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&Fájl"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "&Segítség"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&Műveletek"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&DCP készítése\tCtrl-M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&Megnyitás…\tCtrl-O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
#, fuzzy
msgid "&Preferences...\tCtrl-,"
msgstr "&Beállítások…\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&Beállítások…\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&Kilépés"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&Mentés\tCtrl-S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
msgid "&Save frame to file...\tCtrl-S"
msgstr "&Képkocka mentése fájlba…\tCtrl-S"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "&DCP küldése a TMS-re"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "&Eszközök"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "&Nézet"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr "<b>Lejátszási lista:</b>"
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr "<b>Lejátszási listák</b>"
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "Névjegy"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, fuzzy, c-format
msgid "About %s"
msgstr "Névjegy"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
msgid "Add"
msgstr "Hozzáadás"
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
msgid "Add &KDM..."
msgstr "&KDM hozzáadása…"
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "&KDM hozzáadása…"
+
+#: src/tools/dcpomatic_playlist.cc:80
msgid "Add content"
msgstr "Tartalom hozzáadása"
@@ -197,8 +213,8 @@ msgstr "Mappa hozzáadása…"
msgid "Add..."
msgstr "Hozzáadás…"
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, fuzzy, c-format
msgid ""
"An exception occurred: %s\n"
@@ -208,10 +224,10 @@ msgstr ""
"Hiba történt: %s.\n"
"\n"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -221,7 +237,7 @@ msgstr ""
"Hiba történt: %s (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -231,8 +247,8 @@ msgstr ""
"Hiba történt: %s (%s) (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, fuzzy, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -242,30 +258,30 @@ msgstr ""
"Hiba történt: %s.\n"
"\n"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, fuzzy, c-format
msgid "An unknown error has occurred with the %s."
msgstr "Egy ismeretlen hiba történt a DCP-o-matic szerverrel."
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "Egy ismeretlen hiba történt."
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, fuzzy, c-format
msgid "An unknown exception occurred. %s"
msgstr "Egy ismeretlen hiba történt."
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr ""
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
@@ -273,34 +289,46 @@ msgstr ""
"Biztos vagy benne, hogy vissza szeretnéd állítani a beállításokat "
"alapértelmezettre? A művelet nem vonható vissza."
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr "Hibás beállítás a következőre: %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr "CPL"
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "A CPL tartalma nincs titkosítva."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "Frissítések keresése"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr ""
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, fuzzy, c-format
msgid "Close %s"
msgstr "&Bezárás"
@@ -309,35 +337,35 @@ msgstr "&Bezárás"
msgid "Close without saving film"
msgstr "Kilépés a film mentése nélkül"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr "Hangleíró feliratok..."
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr ""
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "Beállítások másolása\tCtrl-C"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr "Nem sikerült mappát létrehozni a film számára."
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
@@ -345,16 +373,16 @@ msgstr ""
"Nem sikerült a DKDM dekódolása. Előfordulhat, hogy nem megfelelő "
"tanúsítvánnyal lett készítve."
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
#, fuzzy
msgid "Could not duplicate project."
msgstr "Nem található a lejátszó."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "Nem található a batch converter."
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
msgid "Could not find player."
msgstr "Nem található a lejátszó."
@@ -365,22 +393,22 @@ msgid ""
"running."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
#, fuzzy
msgid "Could not load DCP"
-msgstr "Nem sikerült a DCP %1 betöltése."
+msgstr "Nem sikerült a DCP {} betöltése."
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, fuzzy, c-format
msgid "Could not load DCP %s"
-msgstr "Nem sikerült a DCP %1 betöltése."
+msgstr "Nem sikerült a DCP {} betöltése."
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, fuzzy, c-format
msgid "Could not load DCP %s."
-msgstr "Nem sikerült a DCP %1 betöltése."
+msgstr "Nem sikerült a DCP {} betöltése."
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, c-format
msgid ""
"Could not load DCP.\n"
@@ -391,40 +419,42 @@ msgstr ""
"\n"
"%s."
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "Nem sikerült a KDM betöltése."
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr "Nem sikerült a DCP betöltése a(z) %s helyről"
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
-msgstr "Nem sikerült a film %1 betöltése"
+#, c++-format
+msgid "Could not load film {}"
+msgstr "Nem sikerült a film {} betöltése"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "Nem sikerült a film %1 (%s) betöltése."
+#: src/tools/dcpomatic.cc:1751
+#, fuzzy, c++-format
+msgid "Could not load film {} ({})"
+msgstr "Nem sikerült a film {} (%s) betöltése."
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, fuzzy, c-format
msgid "Could not load stress test file %s"
-msgstr "Nem sikerült a film %1 betöltése"
+msgstr "Nem sikerült a film {} betöltése"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr "Nem sikerült a DCP elkészítése."
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, c-format
msgid "Could not open film at %s"
msgstr "Nem sikerült a film megnyitása a(z) %s helyen"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, fuzzy, c-format
msgid "Could not open this folder as a %s project."
msgstr "Nem nyitható meg ez a mappa egy DCP-o-matic projektként."
@@ -437,7 +467,7 @@ msgstr ""
"Nem olvasható ez a fájl KDM-ként. Túl nagy, kérlek győződj meg róla, hogy "
"egy DKDM (XML) fájlt töltesz be."
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
@@ -445,25 +475,25 @@ msgstr ""
"Nem olvasható ez a fájl KDM-ként. Előfordulhat, hogy rosszul formázott, vagy "
"nem egy KDM."
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr ""
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
#, fuzzy
msgid "Could not save project."
msgstr "Nem sikerült a DCP elkészítése."
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
#, fuzzy
msgid "Could not save template."
msgstr "Nem található a lejátszó."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "Nem lehet megjeleníteni ezt a DCP-t."
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
@@ -471,15 +501,15 @@ msgstr ""
"Nem sikerült elindítani a batch convertert. Le kell töltened a dcpomatic.com "
"oldalról."
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
"Nem sikerült elindítani a lejátszót. Le kell töltened a dcpomatic.com "
"oldalról."
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
@@ -487,7 +517,7 @@ msgstr ""
"Nem sikerült a config fájlba írni a(z) %s helyen. A változtatások nem lettek "
"mentve."
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
msgid "Could not write to config file. Your changes have not been saved."
msgstr "Nem sikerült a config fájlba írni. A változtatások nem lettek mentve."
@@ -495,24 +525,28 @@ msgstr "Nem sikerült a config fájlba írni. A változtatások nem lettek mentv
msgid "Create KDMs"
msgstr "KDM-ek készítése"
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
#, fuzzy
msgid "DCP"
msgstr "CPL"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
msgstr "DCP-o-matic Encode Server"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr ""
@@ -525,46 +559,46 @@ msgstr "DKDM"
msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr ""
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr "Dekódolás teljes felbontással"
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr "Dekódolás a felbontás felével"
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr "Dekódolás a felbontás negyedével"
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr "Törlés"
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
"again."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
#, fuzzy
msgid "Disk Writer"
msgstr "DCP-o-matic KDM Creator"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr "Ne történjen semmi"
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
msgstr ""
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr "Szeretnéd felülírni a létező DCP-t a(z) %s helyen?"
@@ -577,23 +611,23 @@ msgstr "Ne záródjon be"
msgid "Don't duplicate"
msgstr "De kettőződjön meg"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr "Le"
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr ""
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr "Két képernyő\tShift+F11"
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "Film megkettőzése"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "Megkettőzés és megnyitás…"
@@ -601,39 +635,49 @@ msgstr "Megkettőzés és megnyitás…"
msgid "Duplicate without saving film"
msgstr "Megkettőzés a film mentése nélkül"
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "Megkettőzés…"
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+#, fuzzy
+msgid "Edit..."
+msgstr "&Szerkesztés"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "Kódolási szerverek…"
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr "Kódolt"
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr ""
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+msgid "Examining DCPs"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1446
msgid "Export preferences..."
msgstr "Beállítások exportálása…"
-#: src/tools/dcpomatic.cc:1403
-msgid "Export subtitles..."
+#: src/tools/dcpomatic.cc:1418
+#, fuzzy
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "Feliratok exportálása…"
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
msgid "Export video file...\tCtrl-E"
msgstr "Videó fájl exportálása…\tCtrl-E"
@@ -641,11 +685,11 @@ msgstr "Videó fájl exportálása…\tCtrl-E"
msgid "Export..."
msgstr "Exportálás…"
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr ""
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "A(z) %s fájl már létezik. Felül kívánod írni?"
@@ -656,7 +700,7 @@ msgstr "A(z) %s fájl már létezik. Felül kívánod írni?"
msgid "Film changed"
msgstr "Film megváltozott"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr ""
@@ -665,36 +709,36 @@ msgstr ""
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "A(z) %s fájl már létezik. Felül kívánod írni?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "Képkocka per másodperc"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr "Teljes képernyő\tF11"
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "Tippek..."
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
#, fuzzy
msgid "Import preferences..."
msgstr "Beállítások exportálása…"
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr ""
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, fuzzy, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -710,67 +754,67 @@ msgstr ""
msgid "KDM|Timing"
msgstr "KDM|Timing"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr "Hossz"
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
msgid "Loading content"
msgstr "Tartalom betöltése"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
msgid "Make &DKDMs...\tCtrl-D"
msgstr "&DKDM-ek készítése…\tCtrl-D"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "&KDM-ek készítése…\tCtrl-K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "DCP készítése a &batch converter-ben\tCtrl-B"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, fuzzy, c-format
msgid "Make DKDM for %s..."
msgstr "DKDM készítése a DCP-o-matic számára…"
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr "Sablonok kezelése…"
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr "Név"
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr "Új"
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "Új film"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr "Új lejátszási lista"
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Új…\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
@@ -778,11 +822,11 @@ msgstr ""
"Egy lejátszási lista mappa sem lett beállítva a beállításokban. Kérlek "
"állíts be egyet és próbáld újra."
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr "DCP megnyitása a &lejátszóban"
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr ""
@@ -790,16 +834,16 @@ msgstr ""
msgid "Output"
msgstr "Kimenet"
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "Beállítások beillesztése…\tCtrl-V"
@@ -811,11 +855,11 @@ msgstr ""
msgid "Pause/resume"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr ""
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, fuzzy, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
@@ -824,74 +868,74 @@ msgstr ""
"Kérlek ellenőrizd, hogy nincs-e beállítva a Windows controlled folder access "
"a DCP-o-matic számára."
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr "Question|N"
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr "Question|Y"
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
#, fuzzy
msgid "Quit"
msgstr "&Kilépés"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr "A KDM dekódolási lánc újragenerálása"
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr "Aláíró tanúsítvány újragenerálása"
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr ""
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr "Kiadási napló"
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "Eltávolítás"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "Hiba bejelentése…"
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Alapértelmezett beállítások visszaállítása"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr ""
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
msgid "S&how DCP in Explorer"
msgstr "DCP mutatása az fájlkezelőben"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
msgid "S&how DCP in Files"
msgstr "DCP mutatása a fájlokban"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
msgid "S&how DCP in Finder"
msgstr "DCP mutatása a Finder-ben"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
msgid "Save"
msgstr ""
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr "Mentés &sablonként…"
@@ -913,7 +957,7 @@ msgstr "Film mentése és bezárás"
msgid "Save film and duplicate"
msgstr "Film mentése és megkettőzés"
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr "Képkocka mentése fájlba"
@@ -921,14 +965,19 @@ msgstr "Képkocka mentése fájlba"
msgid "Screens"
msgstr "Képernyők"
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr "DCP kiválasztása megnyitáshoz"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr "DCP kiválasztása az OV-ként való megnyitáshoz"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "KDM kiválasztása"
+
#: src/tools/dcpomatic_kdm.cc:821
msgid "Select DKDM File"
msgstr "DKDM fájl kiválasztása"
@@ -937,15 +986,15 @@ msgstr "DKDM fájl kiválasztása"
msgid "Select DKDM file"
msgstr "DKDM fájl kiválasztása"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr "KDM kiválasztása"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr "Összes kijelölése\tShift-Ctrl-A"
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "Film kiválasztása megnyitáshoz"
@@ -953,36 +1002,36 @@ msgstr "Film kiválasztása megnyitáshoz"
msgid "Send KDM emails"
msgstr "KDM email küldése"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr "Dekódolási felbontás beállítása a kijelző felbontásához"
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr ""
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr "ZIP fájl megadása"
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr ""
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr "Rendszer információk…"
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, fuzzy, c-format
msgid "The %s download server could not be contacted."
msgstr "A DCP-o-matic letöltő szerver nem érhető el."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -1002,7 +1051,7 @@ msgstr ""
"használnak fel, viszont a meghajtódon csak %.1f GB szabad tárhely van. "
"Biztosan kívánod folytatni és hozzáadni ezt a filmet is a várólistához?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr "A KDM nem engedélyezi a lejátszását ennek a tartalomnak."
@@ -1020,11 +1069,11 @@ msgid ""
"certificate's validity period. Use a later start time for this KDM."
msgstr ""
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr ""
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1041,7 +1090,7 @@ msgstr ""
"választhatsz “Nem”-et és csinálhatsz mentést a létező konfigurációról, "
"mielőtt folytatod."
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1054,7 +1103,7 @@ msgstr ""
"tartalmaz, ami megakadályozhatja a DCP-k validálását néhány rendszeren.\n"
"Szeretnéd újragenerálni a tanúsítvány láncod a KDM-ek aláírásához?"
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1069,7 +1118,7 @@ msgstr ""
"tartalmaz, ami megakadályozhatja a DCP-k validálását néhány rendszeren.\n"
"Szeretnéd újragenerálni a tanúsítvány láncod a KDM-ek aláírásához?"
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1083,7 +1132,7 @@ msgstr ""
"Ez problémát okozhat néhány rendszeren.\n"
"Szeretnéd újragenerálni a tanúsítvány láncod a KDM-ek aláírásához?"
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1098,25 +1147,25 @@ msgstr ""
"újragenerálod.\n"
"Szeretnéd újragenerálni a tanúsítvány láncod a KDM-ek aláírásához?"
-#: src/tools/dcpomatic_combiner.cc:164
-#, fuzzy
+#: src/tools/dcpomatic_combiner.cc:167
+#, fuzzy, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
msgstr "Befejezetlen művelet vannak, biztosan ki akarsz lépni?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
"Close any application that is using it, then try again. (%s)"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
@@ -1124,17 +1173,17 @@ msgstr ""
"A létező konfiguráció nem tölthető be. Az alapértelmezett értékek lesznek "
"használva, ez egy kicsi időt igénybe vehet."
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, fuzzy, c-format
msgid "There are no new versions of %s available."
msgstr "Nincs újabb DCP-o-matic verzió."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr "Befejezetlen művelet vannak, biztosan ki akarsz lépni?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1143,7 +1192,7 @@ msgstr ""
"rendesen be lehet tölteni ebben a verzióban. Kérlek ellenőrizd a film "
"beállításait alaposan."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, fuzzy, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1154,59 +1203,82 @@ msgstr ""
"lejátszóban. Válaszd ki a DCP mappáját a DCP-o-matic projekt mappáján belül, "
"ha azt kívánod lejátszani."
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:712
msgid "Timing..."
msgstr "Időzítés.."
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
#, fuzzy
msgid "Tools"
msgstr "&Eszközök"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr "Próbáld meg a(z) %s karakterek eltávolítását a mappa nevéből."
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr "Típus"
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Befejezetlen műveletek"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr ""
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr "Fel"
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+#, fuzzy
+msgid "Verify"
+msgstr "DCP ellenőrzése…"
+
+#: src/tools/dcpomatic_player.cc:1041
#, fuzzy
msgid "Verify DCP"
msgstr "DCP ellenőrzése…"
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
msgid "Verify DCP..."
msgstr "DCP ellenőrzése…"
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr ""
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Videó hullámforma…"
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr ""
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
@@ -1216,7 +1288,7 @@ msgstr ""
"lehessen azt a DCP-t, amihez készítve lett és ez nem vonható vissza. "
"Biztosan kívánod folytatni?"
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1236,7 +1308,7 @@ msgstr ""
"weight=“bold” size=“larger”>LEGYEN MÁSOLATOD</span> róla, mivel ha "
"elveszíted a DKDM-et és a DCP-t, amit véd, használhatatlan lesz."
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1251,7 +1323,7 @@ msgstr ""
"Ajánljuk, hogy ellenőrizd, hogy a fájlnak van-e <span weight=“bold” "
"size=“larger”>MENTÉSE</span> , ha szeretnél KDM-et készíteni ehhez a DCP-hez."
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, fuzzy, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1262,15 +1334,15 @@ msgstr ""
"limitálja a memóriát a DCP-o-matic számára és hibákat eredményezhet. Erősen "
"ajánljuk a 64 bites DCP-o-matic verzió telepítését."
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
diff --git a/src/tools/po/it_IT.po b/src/tools/po/it_IT.po
index 270db3373..5bcc58319 100644
--- a/src/tools/po/it_IT.po
+++ b/src/tools/po/it_IT.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: IT VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
"PO-Revision-Date: 2018-09-30 16:31+0200\n"
"Last-Translator: William Fanelli <william.f@impronte.com>\n"
"Language-Team: \n"
@@ -27,28 +27,28 @@ msgstr "%d KDM scritto in %s"
msgid "%d KDMs written to %s"
msgstr "%d KDM scritte in %s"
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, fuzzy, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
-msgstr "%1 esiste già il file, non è possibile usarlo per un nuovo film"
+msgstr "{} esiste già il file, non è possibile usarlo per un nuovo film"
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, fuzzy, c-format
msgid "%s could not start"
msgstr "DCP-o-MATIC non può essere avviato"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, fuzzy, c-format
msgid "%s could not start %s"
msgstr "DCP-o-MATIC non può essere avviato"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, fuzzy, c-format
msgid "%s could not start (%s)"
msgstr "DCP-o-MATIC non può essere avviato"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, fuzzy, c-format
msgid "%s could not start."
msgstr "DCP-o-MATIC non può essere avviato"
@@ -57,130 +57,146 @@ msgstr "DCP-o-MATIC non può essere avviato"
msgid "&Add Film...\tCtrl-A"
msgstr "&Aggiungi Film...\tCtrl-A"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr "&Aggiungi OV..."
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "&Chiudi"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
#, fuzzy
msgid "&Close\tCtrl-W"
msgstr "&Salva\tCtrl-S"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "&Modifica"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&Esci"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&File"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "&Aiuto"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&Elaborazioni"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&Crea DCP\tCtrl-M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&Apri...\tCtrl-O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
#, fuzzy
msgid "&Preferences...\tCtrl-,"
msgstr "&Preferenze...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&Preferenze...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&Esci"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&Salva\tCtrl-S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
#, fuzzy
msgid "&Save frame to file...\tCtrl-S"
msgstr "&Esporta...\tCtrl-O"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "&Invia DCP a TMS"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "&Strumenti"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "&Visualizza"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "Informazioni"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, fuzzy, c-format
msgid "About %s"
msgstr "Informazioni"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
#, fuzzy
msgid "Add"
msgstr "Aggiungi..."
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
#, fuzzy
msgid "Add &KDM..."
msgstr "&Aggiungi KDM..."
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "&Aggiungi KDM..."
+
+#: src/tools/dcpomatic_playlist.cc:80
#, fuzzy
msgid "Add content"
msgstr "Caricamento DCP"
@@ -202,8 +218,8 @@ msgstr "Aggiungi cartella..."
msgid "Add..."
msgstr "Aggiungi..."
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, fuzzy, c-format
msgid ""
"An exception occurred: %s\n"
@@ -213,10 +229,10 @@ msgstr ""
"Si è verificata un'eccezione: %s.\n"
"\n"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -226,7 +242,7 @@ msgstr ""
"Si è verificata un'eccezione: %s (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -236,8 +252,8 @@ msgstr ""
"Si è verificata un'eccezione: %s (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, fuzzy, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -247,30 +263,30 @@ msgstr ""
"Si è verificata un'eccezione: %s.\n"
"\n"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, fuzzy, c-format
msgid "An unknown error has occurred with the %s."
msgstr "Errore sconosciuto sul server di DCP-o-MATIC."
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "Si è verificata un'eccezione sconosciuta."
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, fuzzy, c-format
msgid "An unknown exception occurred. %s"
msgstr "Si è verificata un'eccezione sconosciuta."
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr ""
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
@@ -278,34 +294,46 @@ msgstr ""
"Sei sicuro di voler ripristinare le impostazioni ai valori predefiniti? "
"Questa operazione non può essere annullata."
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr "Impostazione errata per %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr "CPL"
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "Il contenuto CPL non è criptato."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "Controlla aggiornamenti"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr ""
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, fuzzy, c-format
msgid "Close %s"
msgstr "&Chiudi"
@@ -314,36 +342,36 @@ msgstr "&Chiudi"
msgid "Close without saving film"
msgstr "Chiudi senza salvare il film"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr ""
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "Copia preferenze\tCtrl-C"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
#, fuzzy
msgid "Could not create folder to store film."
msgstr "Impossibile creare la cartella per archiviare il film"
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
@@ -351,16 +379,16 @@ msgstr ""
"Impossibile decodificare il DKDM. Forse non è stato creato con il "
"certificato corretto."
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
#, fuzzy
msgid "Could not duplicate project."
msgstr "Impossibile trovare il player."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "Impossibile trovare il convertitore batch."
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
msgid "Could not find player."
msgstr "Impossibile trovare il player."
@@ -371,62 +399,64 @@ msgid ""
"running."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
msgid "Could not load DCP"
msgstr "Impossibile caricare DCP"
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, fuzzy, c-format
msgid "Could not load DCP %s"
-msgstr "Impossibile caricare DCP %1."
+msgstr "Impossibile caricare DCP {}."
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, fuzzy, c-format
msgid "Could not load DCP %s."
-msgstr "Impossibile caricare DCP %1."
+msgstr "Impossibile caricare DCP {}."
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, fuzzy, c-format
msgid ""
"Could not load DCP.\n"
"\n"
"%s."
-msgstr "Impossibile caricare DCP %1."
+msgstr "Impossibile caricare DCP {}."
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "Impossibile caricare KDM."
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr ""
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
-msgstr "Impossibile caricare il film %1"
+#, c++-format
+msgid "Could not load film {}"
+msgstr "Impossibile caricare il film {}"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "Impossibile caricare il film %1 (%2)"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "Impossibile caricare il film {} ({})"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, fuzzy, c-format
msgid "Could not load stress test file %s"
-msgstr "Impossibile caricare il film %1"
+msgstr "Impossibile caricare il film {}"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr "Impossibile creare DCP."
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, c-format
msgid "Could not open film at %s"
msgstr "Impossibile aprire il film in %s"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, fuzzy, c-format
msgid "Could not open this folder as a %s project."
msgstr "Impossibile aprire il film in %s"
@@ -440,7 +470,7 @@ msgstr ""
"Impossibile leggere il file come KDM. Forse è formattato male, o non è una "
"KDM."
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
@@ -448,37 +478,37 @@ msgstr ""
"Impossibile leggere il file come KDM. Forse è formattato male, o non è una "
"KDM."
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr ""
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
#, fuzzy
msgid "Could not save project."
msgstr "Impossibile creare DCP."
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
#, fuzzy
msgid "Could not save template."
msgstr "Impossibile trovare il player."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "Impossibile visualizzare il DCP."
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
msgstr ""
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
@@ -486,7 +516,7 @@ msgstr ""
"Impossibile scrivere il file di configurazione in %s. Le modifiche non "
"verranno salvate."
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
#, fuzzy
msgid "Could not write to config file. Your changes have not been saved."
msgstr ""
@@ -497,24 +527,28 @@ msgstr ""
msgid "Create KDMs"
msgstr "Crea le KDM"
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
#, fuzzy
msgid "DCP"
msgstr "CPL"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
msgstr "DCP-o-MATIC Server per la Codifica"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr ""
@@ -527,46 +561,46 @@ msgstr "DKDM"
msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr ""
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr "Decodifica a risoluzione massima"
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr "Decodifica a metá risoluzione"
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr "Decodifica ad un quarto della risoluzione"
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
"again."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
#, fuzzy
msgid "Disk Writer"
msgstr "DCP-o-MATIC KDM Creator"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
msgstr ""
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr "Vuoi sovrascrivere il DCP %s esistente?"
@@ -579,23 +613,23 @@ msgstr "Non chiudere"
msgid "Don't duplicate"
msgstr "Non duplicare"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr ""
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr ""
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "Duplica film"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "Duplica e apri..."
@@ -603,41 +637,50 @@ msgstr "Duplica e apri..."
msgid "Duplicate without saving film"
msgstr "Duplica senza salvare il film"
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "Duplica..."
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+#, fuzzy
+msgid "Edit..."
+msgstr "&Modifica"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "Servers di codifica..."
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr ""
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+msgid "Examining DCPs"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1446
#, fuzzy
msgid "Export preferences..."
msgstr "Ripristinare le impostazioni predefinite"
-#: src/tools/dcpomatic.cc:1403
+#: src/tools/dcpomatic.cc:1418
#, fuzzy
-msgid "Export subtitles..."
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "&Esporta...\tCtrl-O"
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
#, fuzzy
msgid "Export video file...\tCtrl-E"
msgstr "&Esporta...\tCtrl-O"
@@ -647,11 +690,11 @@ msgstr "&Esporta...\tCtrl-O"
msgid "Export..."
msgstr "&Esporta...\tCtrl-O"
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr ""
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "Il file %s esiste già. Sovrascriverlo?"
@@ -662,7 +705,7 @@ msgstr "Il file %s esiste già. Sovrascriverlo?"
msgid "Film changed"
msgstr "Film modificato"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr ""
@@ -671,36 +714,36 @@ msgstr ""
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "Il file %s esiste già. Sovrascriverlo?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "Frame per secondo"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr ""
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "Suggerimenti..."
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
#, fuzzy
msgid "Import preferences..."
msgstr "Ripristinare le impostazioni predefinite"
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr ""
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -713,79 +756,79 @@ msgstr ""
msgid "KDM|Timing"
msgstr "KDM|Timing"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr ""
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
#, fuzzy
msgid "Loading content"
msgstr "Caricamento DCP"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
#, fuzzy
msgid "Make &DKDMs...\tCtrl-D"
msgstr "Crea &KDMs...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "Crea &KDMs...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "Crea DCP in &batch converter\tCtrl-B"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, fuzzy, c-format
msgid "Make DKDM for %s..."
msgstr "Crea DKDM per DCP-o-MATIC..."
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr "Gestione modello..."
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr ""
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "Nuovo Film"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr ""
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Nuovo...\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
msgstr ""
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr "Apri il DCP nel Player"
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr ""
@@ -793,16 +836,16 @@ msgstr ""
msgid "Output"
msgstr "Uscita"
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "Incolla preferenze...\tCtrl-V"
@@ -814,89 +857,89 @@ msgstr ""
msgid "Pause/resume"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr ""
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
"for %s."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr ""
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
#, fuzzy
msgid "Quit"
msgstr "&Esci"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr ""
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr ""
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "Rimuovi"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "Segnala un problema..."
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Ripristinare le impostazioni predefinite"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr ""
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
#, fuzzy
msgid "S&how DCP in Explorer"
msgstr "S&Mostra DCP"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
#, fuzzy
msgid "S&how DCP in Files"
msgstr "S&Mostra DCP"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
#, fuzzy
msgid "S&how DCP in Finder"
msgstr "S&Mostra DCP"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
#, fuzzy
msgid "Save"
msgstr "&Salva"
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr "Salva come &modello..."
@@ -918,7 +961,7 @@ msgstr "Salva il film e chiudi"
msgid "Save film and duplicate"
msgstr "Salva il film e duplica"
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr ""
@@ -926,14 +969,19 @@ msgstr ""
msgid "Screens"
msgstr "Schermi"
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr "Seleziona il DCP da aprire"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr "Seleziona il DCP da aprire come OV"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "Seleziona KDM"
+
#: src/tools/dcpomatic_kdm.cc:821
#, fuzzy
msgid "Select DKDM File"
@@ -943,15 +991,15 @@ msgstr "Seleziona il file DKDM"
msgid "Select DKDM file"
msgstr "Seleziona il file DKDM"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr "Seleziona KDM"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "Seleziona il film da aprire"
@@ -959,36 +1007,36 @@ msgstr "Seleziona il film da aprire"
msgid "Send KDM emails"
msgstr "Invia email KDM"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr "Imposta la risoluzione di decodifica come quella del display"
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr ""
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr ""
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr ""
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr ""
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, fuzzy, c-format
msgid "The %s download server could not be contacted."
msgstr "Non è stato possibile contattare il server di download DCP-o-MATIC."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, fuzzy, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -1007,7 +1055,7 @@ msgstr ""
"Il DCP di questo film occupa %.1f Gb, ma il disco che stai usando dispone di "
"%.1f Gb liberi. Vuoi continuare ugualmente?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr ""
@@ -1025,11 +1073,11 @@ msgid ""
"certificate's validity period. Use a later start time for this KDM."
msgstr ""
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr ""
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1040,7 +1088,7 @@ msgid ""
"configuration before continuing."
msgstr ""
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1050,7 +1098,7 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1062,7 +1110,7 @@ msgid ""
"for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1072,7 +1120,7 @@ msgid ""
"Do you want to re-create the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1082,24 +1130,25 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
-msgstr "La cartella %1 esiste già e non è vuota. Sei sicuro di volerla usare?"
+msgstr "La cartella {} esiste già e non è vuota. Sei sicuro di volerla usare?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
"Close any application that is using it, then try again. (%s)"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
@@ -1108,17 +1157,17 @@ msgstr ""
"i valori predefiniti. Questi potrebbero richiedere poco tempo per essere "
"creati."
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, fuzzy, c-format
msgid "There are no new versions of %s available."
msgstr "Non ci sono nuove versioni di DCP-o-MATIC disponibili."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr "C'è un processo in corso: sei sicuro di voler uscire?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1127,7 +1176,7 @@ msgstr ""
"potrebbe non essere caricato correttamente in questa versione. Per favore "
"controlla attentamente le impostazioni del film."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1135,68 +1184,91 @@ msgid ""
"you want to play."
msgstr ""
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:712
#, fuzzy
msgid "Timing..."
msgstr "KDM|Timing"
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
#, fuzzy
msgid "Tools"
msgstr "&Strumenti"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Lavori incompiuti"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr ""
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr ""
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+#, fuzzy
+msgid "Verify"
+msgstr "Verifica DCP"
+
+#: src/tools/dcpomatic_player.cc:1041
#, fuzzy
msgid "Verify DCP"
msgstr "Verifica DCP"
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
#, fuzzy
msgid "Verify DCP..."
msgstr "Verifica DCP"
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr ""
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Forma d'onda video..."
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr ""
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
"DCP that the DKDM was made for, and it cannot be undone. Are you sure?"
msgstr ""
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1215,7 +1287,7 @@ msgstr ""
"<span weight=\"bold\" size=\"larger\">FAI IL BACKUP DI QUESTO FILE</span> "
"poiché se viene perso, i DKDM (i DCP che proteggono) diventeranno inutili."
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1231,7 +1303,7 @@ msgstr ""
"Assicurati che di questi file ci sia il <span weight=\"bold\" "
"size=\"larger\">BACKUP UP</span> se vuoi creare KDM per questo film."
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1239,15 +1311,15 @@ msgid ""
"strongly advised to install the 64-bit version of %s."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
@@ -1368,5 +1440,5 @@ msgstr ""
#~ msgid "&Analyse audio"
#~ msgstr "&Analizza audio"
-#~ msgid "The directory %1 already exists."
+#~ msgid "The directory {} already exists."
#~ msgstr "La directory %s esiste gia'."
diff --git a/src/tools/po/ja_JP.po b/src/tools/po/ja_JP.po
new file mode 100644
index 000000000..1b4607b7a
--- /dev/null
+++ b/src/tools/po/ja_JP.po
@@ -0,0 +1,1379 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2026-02-15 21:03+0100\n"
+"PO-Revision-Date: 2026-04-07 19:25+0900\n"
+"Last-Translator: \n"
+"Language-Team: \n"
+"Language: ja_JP\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 3.8\n"
+
+#: src/tools/dcpomatic_kdm.cc:491
+#, c-format
+msgid "%d KDM written to %s"
+msgstr "%dつのKDMを %s に書込みしました"
+
+#: src/tools/dcpomatic_kdm.cc:491
+#, c-format
+msgid "%d KDMs written to %s"
+msgstr "%dつのKDMを %s に書込みしました"
+
+#: src/tools/dcpomatic_combiner.cc:177
+#, fuzzy, c-format
+msgid "%s already exists as a file, so you cannot use it for a DCP."
+msgstr ""
+"%s は既にファイルとして存在するため、DCP として使用することはできません。"
+
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
+#, c-format
+msgid "%s could not start"
+msgstr "%s を起動できませんでした"
+
+#: src/tools/dcpomatic_playlist.cc:717
+#, c-format
+msgid "%s could not start %s"
+msgstr "%s は %s を起動できませんでした"
+
+#: src/tools/dcpomatic_combiner.cc:272
+#, c-format
+msgid "%s could not start (%s)"
+msgstr "%s を起動できませんでした (%s)"
+
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
+#, c-format
+msgid "%s could not start."
+msgstr "%s を開始できませんでした。"
+
+#: src/tools/dcpomatic_batch.cc:88
+msgid "&Add Film...\tCtrl-A"
+msgstr "プロジェクトを追加\tCtrl-A"
+
+#: src/tools/dcpomatic_player.cc:660
+msgid "&Add OV..."
+msgstr "&OVを追加"
+
+#: src/tools/dcpomatic_player.cc:668
+msgid "&Close"
+msgstr "&閉じる"
+
+#: src/tools/dcpomatic.cc:1375
+msgid "&Close\tCtrl-W"
+msgstr "&閉じる\tCtrl-W"
+
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
+msgid "&Edit"
+msgstr "&編集"
+
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
+msgid "&Exit"
+msgstr "&終了"
+
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
+msgid "&File"
+msgstr "&ファイル"
+
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
+msgid "&Help"
+msgstr "&ヘルプ"
+
+#: src/tools/dcpomatic.cc:1462
+msgid "&Jobs"
+msgstr "&処理"
+
+#: src/tools/dcpomatic.cc:1406
+msgid "&Make DCP\tCtrl-M"
+msgstr "&DCPを作成\tCtrl-M"
+
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
+msgid "&Open...\tCtrl-O"
+msgstr "&開く\tCtrl-O"
+
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
+msgid "&Preferences...\tCtrl-,"
+msgstr "&設定\tCtrl-,"
+
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
+msgid "&Preferences...\tCtrl-P"
+msgstr "&環境設定\tCtrl-P"
+
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
+msgid "&Quit"
+msgstr "&終了"
+
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
+msgid "&Save\tCtrl-S"
+msgstr "&保存\tCtrl-S"
+
+#: src/tools/dcpomatic_player.cc:663
+msgid "&Save frame to file...\tCtrl-S"
+msgstr "フレームをファイルに保存 \tCtrl-S"
+
+#: src/tools/dcpomatic.cc:1420
+msgid "&Send DCP to TMS"
+msgstr "&DCP を TMS に送信する"
+
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
+msgid "&Tools"
+msgstr "&ツール"
+
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
+msgid "&View"
+msgstr "&表示"
+
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr "(暗号化、KDM あり)"
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr "(暗号化、KDM なし)"
+
+#: src/tools/dcpomatic_playlist.cc:324
+msgid "<b>Playlist:</b>"
+msgstr "<b>プレイリスト:</b>"
+
+#: src/tools/dcpomatic_playlist.cc:132
+msgid "<b>Playlists</b>"
+msgstr "<b>プレイリスト</b>"
+
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
+msgid "About"
+msgstr "このソフトウェアについて"
+
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
+#, c-format
+msgid "About %s"
+msgstr "%s について"
+
+#: src/tools/dcpomatic_playlist.cc:349
+msgid "Add"
+msgstr "追加"
+
+#: src/tools/dcpomatic_player.cc:661
+msgid "Add &KDM..."
+msgstr "KDMを追加"
+
+#: src/tools/dcpomatic_verifier.cc:180
+msgid "Add KDM..."
+msgstr "KDMを追加"
+
+#: src/tools/dcpomatic_playlist.cc:80
+msgid "Add content"
+msgstr "コンテンツを追加"
+
+#: src/tools/dcpomatic_batch.cc:177
+msgid "Add film"
+msgstr "プロジェクトを追加"
+
+#: src/tools/dcpomatic_batch.cc:177
+#, fuzzy
+msgid "Add film for conversion"
+msgstr "変換用のプロジェクトを追加"
+
+#: src/tools/dcpomatic_kdm.cc:216
+msgid "Add folder..."
+msgstr "フォルダを追加"
+
+#: src/tools/dcpomatic_kdm.cc:214
+msgid "Add..."
+msgstr "追加"
+
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
+#, c-format
+msgid ""
+"An exception occurred: %s\n"
+"\n"
+"%s"
+msgstr ""
+"例外が発生しました : %s\n"
+"\n"
+"%s"
+
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
+#, c-format
+msgid ""
+"An exception occurred: %s (%s)\n"
+"\n"
+"%s"
+msgstr ""
+"例外が発生しました : %s (%s)\n"
+"\n"
+"%s"
+
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
+#, c-format
+msgid ""
+"An exception occurred: %s (%s) (%s)\n"
+"\n"
+"%s"
+msgstr ""
+"例外が発生しました : %s (%s) (%s)\n"
+"\n"
+"%s"
+
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
+#, c-format
+msgid ""
+"An exception occurred: %s.\n"
+"\n"
+"%s"
+msgstr ""
+"例外が発生しました : %s.\n"
+"\n"
+"%s"
+
+#: src/tools/dcpomatic_server.cc:362
+#, c-format
+msgid "An unknown error has occurred with the %s."
+msgstr "%s で不明なエラーが発生しました。"
+
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
+msgid "An unknown exception occurred."
+msgstr "不明な例外が発生しました。"
+
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
+#, c-format
+msgid "An unknown exception occurred. %s"
+msgstr "不明な例外が発生しました。%s"
+
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
+msgid "Annotation text"
+msgstr "注釈テキスト"
+
+#: src/tools/dcpomatic.cc:777
+msgid ""
+"Are you sure you want to restore preferences to their defaults? This cannot "
+"be undone."
+msgstr ""
+"環境設定をデフォルトに戻してもよろしいですか? 元に戻すことはできません。"
+
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr "音声グラフ"
+
+#: src/tools/dcpomatic.cc:878
+#, c-format
+msgid "Bad setting for %s."
+msgstr "%s の設定が間違っています。"
+
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
+msgid "CPL"
+msgstr "CPL"
+
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
+msgid "CPL's content is not encrypted."
+msgstr "CPL のコンテンツは暗号化されていません。"
+
+#: src/tools/dcpomatic_editor.cc:410
+#, c-format
+msgid "CPL: %s"
+msgstr "CPL: %s"
+
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr "キャンセル"
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
+msgid "Check for updates"
+msgstr "アップデートを確認する"
+
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr "KDMの確認"
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
+msgid "Choose a DCP folder"
+msgstr "DCPフォルダを選択"
+
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
+#, c-format
+msgid "Close %s"
+msgstr "閉じる %s"
+
+#: src/tools/dcpomatic.cc:167
+msgid "Close without saving film"
+msgstr "プロジェクトを保存せずに閉じる"
+
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
+msgid "Closed captions..."
+msgstr "クローズドキャプション..."
+
+#: src/tools/dcpomatic_combiner.cc:130
+#, fuzzy
+msgid "Combine"
+msgstr "結合"
+
+#: src/tools/dcpomatic_combiner.cc:184
+#, fuzzy
+msgid "Combining DCPs"
+msgstr "DCPを結合"
+
+#: src/tools/dcpomatic_editor.cc:219
+msgid "Content title text"
+msgstr "コンテンツタイトルのテキスト"
+
+#: src/tools/dcpomatic_disk.cc:166
+msgid "Copy DCPs"
+msgstr "DCPをコピー"
+
+#: src/tools/dcpomatic.cc:1389
+msgid "Copy settings\tCtrl-C"
+msgstr "設定をコピー \tCtrl-C"
+
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
+msgid "Could not create folder to store film."
+msgstr "プロジェクトを保存するフォルダを作成できませんでした。"
+
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
+msgid ""
+"Could not decrypt the DKDM. Perhaps it was not created with the correct "
+"certificate."
+msgstr ""
+"DKDMを復号化できませんでした。正しい証明書を使用して作成されていない可能性が"
+"あります。"
+
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
+msgid "Could not duplicate project."
+msgstr "プロジェクトを複製できませんでした。"
+
+#: src/tools/dcpomatic.cc:955
+msgid "Could not find batch converter."
+msgstr "バッチコンバーターが見つかりませんでした。"
+
+#: src/tools/dcpomatic.cc:970
+msgid "Could not find player."
+msgstr "プレーヤーが見つかりませんでした。"
+
+#: src/tools/dcpomatic_batch.cc:478
+#, fuzzy, c-format
+msgid ""
+"Could not listen for new batch jobs. Perhaps another instance of the %s is "
+"running."
+msgstr ""
+"新しいバッチ処理を実行できませんでした。%s の別のインスタンスが実行中である可"
+"能性があります。."
+
+#: src/tools/dcpomatic_editor.cc:404
+msgid "Could not load DCP"
+msgstr "DCPを読み込めませんでした"
+
+#: src/tools/dcpomatic_player.cc:1403
+#, c-format
+msgid "Could not load DCP %s"
+msgstr "%s DCPを読み込めませんでした"
+
+#: src/tools/dcpomatic_player.cc:882
+#, c-format
+msgid "Could not load DCP %s."
+msgstr "%s DCPを読み込めませんでした。"
+
+#: src/tools/dcpomatic_player.cc:649
+#, c-format
+msgid ""
+"Could not load DCP.\n"
+"\n"
+"%s."
+msgstr ""
+"DCPを読み込めませんでした。\n"
+"\n"
+"%s"
+
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
+msgid "Could not load KDM."
+msgstr "KDMを読み込めませんでした。"
+
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
+#, c-format
+msgid "Could not load a DCP from %s"
+msgstr "%s から DCP を読み込めませんでした"
+
+#: src/tools/dcpomatic_batch.cc:495
+msgid "Could not load film {}"
+msgstr "プロジェクトを読み込めませんでした {}"
+
+#: src/tools/dcpomatic.cc:1751
+#, fuzzy
+msgid "Could not load film {} ({})"
+msgstr "プロジェクトを読み込めませんでした {}({})"
+
+#: src/tools/dcpomatic_player.cc:1411
+#, fuzzy, c-format
+msgid "Could not load stress test file %s"
+msgstr "ストレステストファイル %s を読み込めませんでした"
+
+#: src/tools/dcpomatic.cc:880
+msgid "Could not make DCP."
+msgstr "DCP を作成できませんでした。"
+
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
+#, fuzzy, c-format
+msgid "Could not open film at %s"
+msgstr "このプロジェクトを開くことが出来ませんでした。 %s"
+
+#: src/tools/dcpomatic.cc:502
+#, fuzzy, c-format
+msgid "Could not open this folder as a %s project."
+msgstr "このフォルダをプロジェクトとして開けませんでした。 %s."
+
+#: src/tools/dcpomatic_kdm.cc:657
+#, fuzzy
+msgid ""
+"Could not read file as a KDM. It is much too large. Make sure you are "
+"loading a DKDM (XML) file."
+msgstr ""
+"ファイルをKDMとして読み込めませんでした。ファイルが大きすぎます。DKDM(XML)"
+"ファイルを読み込んでいることを確認してください。"
+
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
+#, fuzzy
+msgid ""
+"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
+"at all."
+msgstr ""
+"ファイルをKDMとして読み込めませんでした。フォーマットが間違っているかKDMでは"
+"ない可能性があります。"
+
+#: src/tools/dcpomatic.cc:799
+#, fuzzy
+msgid "Could not remove existing preferences file"
+msgstr "既存の設定ファイルを削除できませんでした"
+
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
+msgid "Could not save project."
+msgstr "プロジェクトを保存できませんでした。"
+
+#: src/tools/dcpomatic.cc:645
+msgid "Could not save template."
+msgstr "テンプレートを保存できませんでした。"
+
+#: src/tools/dcpomatic.cc:1089
+msgid "Could not show DCP."
+msgstr "DCP を表示できませんでした。"
+
+#: src/tools/dcpomatic.cc:953
+msgid ""
+"Could not start the batch converter. You may need to download it from "
+"dcpomatic.com."
+msgstr ""
+"バッチコンバータを起動できませんでした。dcpomatic.com からダウンロードする必"
+"要がある可能性があります。"
+
+#: src/tools/dcpomatic.cc:968
+msgid ""
+"Could not start the player. You may need to download it from dcpomatic.com."
+msgstr ""
+"プレーヤーを起動できませんでした。dcpomatic.com からダウンロードする必要があ"
+"る可能性があります。"
+
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
+#, fuzzy, c-format
+msgid ""
+"Could not write to config file at %s. Your changes have not been saved."
+msgstr "%s の設定ファイルに書き込めませんでした。変更は保存されていません。"
+
+#: src/tools/dcpomatic_player.cc:1136
+#, fuzzy
+msgid "Could not write to config file. Your changes have not been saved."
+msgstr "設定ファイルに書き込めませんでした。変更は保存されていません。"
+
+#: src/tools/dcpomatic_kdm.cc:239
+msgid "Create KDMs"
+msgstr "KDMを作成"
+
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
+msgid "Creator"
+msgstr "作成者"
+
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr "切り抜き"
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
+msgid "DCP"
+msgstr "DCP"
+
+#: src/tools/dcpomatic_server.cc:256
+msgid "DCP-o-matic Encode Server"
+msgstr "DCP-o-matic Encode Server"
+
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
+msgid "DCPs"
+msgstr "DCP一覧"
+
+#: src/tools/dcpomatic_combiner.cc:194
+#, fuzzy
+msgid "DCPs combined successfully."
+msgstr "DCP が正常に結合されました。"
+
+#: src/tools/dcpomatic_kdm.cc:175
+msgid "DKDM"
+msgstr "DKDM"
+
+#: src/tools/dcpomatic_kdm.cc:632
+#, fuzzy, c-format
+msgid "DKDM %s is already in the DKDM list and will not be added again."
+msgstr ""
+"DKDM %s はすでに DKDM リストに存在するため、再度追加されることはありません。"
+
+#: src/tools/dcpomatic_player.cc:703
+msgid "Decode at full resolution"
+msgstr "フル解像度でデコード"
+
+#: src/tools/dcpomatic_player.cc:704
+msgid "Decode at half resolution"
+msgstr "1/2の解像度でデコードする"
+
+#: src/tools/dcpomatic_player.cc:705
+msgid "Decode at quarter resolution"
+msgstr "1/4解像度でデコード"
+
+#: src/tools/dcpomatic_playlist.cc:145
+msgid "Delete"
+msgstr "削除"
+
+#: src/tools/dcpomatic_disk.cc:344
+#, fuzzy, c-format
+msgid ""
+"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
+"again."
+msgstr ""
+"%s Disk Writer.pkg を .dmg からインストールしましたか? 確認してもう一度お試し"
+"ください。"
+
+#: src/tools/dcpomatic_disk.cc:190
+#, fuzzy
+msgid "Disk Writer"
+msgstr "ディスクへ書込み"
+
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
+msgid "Do nothing"
+msgstr "何もしない"
+
+#: src/tools/dcpomatic_disk.cc:336
+msgid ""
+"Do you see a 'User Account Control' dialogue asking about "
+"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
+msgstr ""
+"dcpomatic2_disk_writer.exe に関する「ユーザー アカウント制御」ダイアログが表"
+"示されましたか? その場合は「はい」をクリックしてもう一度お試しください。"
+
+#: src/tools/dcpomatic.cc:863
+#, c-format
+msgid "Do you want to overwrite the existing DCP %s?"
+msgstr "既存のDCPを上書きしますか? %s"
+
+#: src/tools/dcpomatic.cc:167
+msgid "Don't close"
+msgstr "閉じずに戻る"
+
+#: src/tools/dcpomatic.cc:195
+#, fuzzy
+msgid "Don't duplicate"
+msgstr "重複しない"
+
+#: src/tools/dcpomatic_playlist.cc:348
+msgid "Down"
+msgstr "下へ"
+
+#: src/tools/dcpomatic_disk.cc:153
+msgid "Drive"
+msgstr "ドライブ"
+
+#: src/tools/dcpomatic_player.cc:693
+msgid "Dual screen\tShift+F11"
+msgstr "2画面表示\tShift+F11"
+
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
+msgid "Duplicate Film"
+msgstr "プロジェクトを複製"
+
+#: src/tools/dcpomatic.cc:1369
+msgid "Duplicate and open..."
+msgstr "プロジェクトを複製して開く"
+
+#: src/tools/dcpomatic.cc:195
+msgid "Duplicate without saving film"
+msgstr "プロジェクトを保存せずに複製する"
+
+#: src/tools/dcpomatic.cc:1368
+msgid "Duplicate..."
+msgstr "プロジェクトを複製"
+
+#: src/tools/dcpomatic_editor.cc:95
+#, fuzzy
+msgid "Duration"
+msgstr "プロジェクトを複製"
+
+#: src/tools/dcpomatic_editor.cc:155
+msgid "Edit reel"
+msgstr "リールの編集"
+
+#: src/tools/dcpomatic_playlist.cc:351
+msgid "Edit..."
+msgstr "編集"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
+msgid "Encoding servers..."
+msgstr "エンコード サーバー"
+
+#: src/tools/dcpomatic_playlist.cc:341
+msgid "Encrypted"
+msgstr "暗号化"
+
+#: src/tools/dcpomatic_editor.cc:90
+msgid "Entry point"
+msgstr "エントリーポイント"
+
+#: src/tools/dcpomatic_verifier.cc:156
+#, fuzzy
+msgid "Examining DCPs"
+msgstr "DCP一覧の検討"
+
+#: src/tools/dcpomatic.cc:1446
+msgid "Export preferences..."
+msgstr "環境設定をエクスポート"
+
+#: src/tools/dcpomatic.cc:1418
+msgid "Export subtitles...\tShift-Ctrl-E"
+msgstr "字幕をエクスポート \tShift-Ctrl-E"
+
+#: src/tools/dcpomatic.cc:1417
+msgid "Export video file...\tCtrl-E"
+msgstr "動画ファイルをエクスポート\tCtrl-E"
+
+#: src/tools/dcpomatic_kdm.cc:220
+msgid "Export..."
+msgstr "エクスポート"
+
+#: src/tools/dcpomatic_player.cc:700
+msgid "Eye"
+msgstr "3D視点"
+
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
+#, c-format
+msgid "File %s already exists. Do you want to overwrite it?"
+msgstr "ファイル %s は既に存在します。上書きしますか?"
+
+#. TRANSLATORS: this is the heading for a dialog box, which tells the user that the current
+#. project (Film) has been changed since it was last saved.
+#: src/tools/dcpomatic.cc:162 src/tools/dcpomatic.cc:190
+msgid "Film changed"
+msgstr "プロジェクトを変更しました"
+
+#: src/tools/dcpomatic_disk.cc:190
+msgid "Finding disks"
+msgstr "ディスクを探しています"
+
+#: src/tools/dcpomatic_kdm.cc:357
+#, c-format
+msgid "Folder %s already exists. Do you want to overwrite it?"
+msgstr "フォルダ %s は既に存在します。上書きしますか?"
+
+#: src/tools/dcpomatic_server.cc:169
+msgid "Frames per second"
+msgstr "1秒あたりのフレーム数"
+
+#: src/tools/dcpomatic_player.cc:692
+msgid "Full screen\tF11"
+msgstr "フルスクリーン\tF11"
+
+#: src/tools/dcpomatic.cc:1438
+msgid "Hints..."
+msgstr "ヒント"
+
+#: src/tools/dcpomatic.cc:1447
+msgid "Import preferences..."
+msgstr "環境設定をインポート"
+
+#: src/tools/dcpomatic_combiner.cc:105
+msgid "Input DCP"
+msgstr "DCPを入力"
+
+#: src/tools/dcpomatic_editor.cc:100
+#, fuzzy
+msgid "Intrinsic duration"
+msgstr "本質的持続時間"
+
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
+msgid "Issuer"
+msgstr "発行者"
+
+#: src/tools/dcpomatic.cc:504
+#, fuzzy, c-format
+msgid ""
+"It looks like you are trying to open a DCP. File -> Open is for loading %s "
+"projects, not DCPs. To import a DCP, create a new project with File -> New "
+"and then click the \"Add DCP...\" button."
+msgstr ""
+"DCPを開こうとしているようです。「ファイル」→「開く」は%sプロジェクトの読み込"
+"み用であり、DCPの読み込み用ではありません。DCPをインポートするには、「ファイ"
+"ル」→「新規」で新規プロジェクトを作成し、「DCPを追加...」ボタンをクリックして"
+"ください。"
+
+#. TRANSLATORS: translate the word "Timing" here; do not include the "KDM|" prefix
+#: src/tools/dcpomatic_kdm.cc:169
+msgid "KDM|Timing"
+msgstr "KDM|タイミング"
+
+#: src/tools/dcpomatic_player.cc:698
+msgid "Left"
+msgstr "左"
+
+#: src/tools/dcpomatic_playlist.cc:140
+msgid "Length"
+msgstr "長さ"
+
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
+#, fuzzy
+msgid "Loading content"
+msgstr "コンテンツを読み込み"
+
+#: src/tools/dcpomatic.cc:1413
+msgid "Make &DKDMs...\tCtrl-D"
+msgstr "DKDMを作成\tCtrl-D"
+
+#: src/tools/dcpomatic.cc:1411
+msgid "Make &KDMs...\tCtrl-K"
+msgstr "KDMを作成\tCtrl-K"
+
+#: src/tools/dcpomatic.cc:1408
+msgid "Make DCP in &batch converter\tCtrl-B"
+msgstr "バッチコンバータで DCP を作成する\tCtrl-B"
+
+#: src/tools/dcpomatic.cc:1414
+#, c-format
+msgid "Make DKDM for %s..."
+msgstr "%s の DKDM を作成..."
+
+#: src/tools/dcpomatic.cc:1440
+msgid "Manage templates..."
+msgstr "テンプレートを管理"
+
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
+msgid "Name"
+msgstr "名前"
+
+#: src/tools/dcpomatic_playlist.cc:143
+msgid "New"
+msgstr "新規"
+
+#: src/tools/dcpomatic.cc:568
+msgid "New Film"
+msgstr "プロジェクトを新規作成"
+
+#: src/tools/dcpomatic_playlist.cc:257
+msgid "New Playlist"
+msgstr "新しいプレイリスト"
+
+#: src/tools/dcpomatic.cc:1360
+msgid "New...\tCtrl-N"
+msgstr "新規作成\tCtrl-N"
+
+#: src/tools/dcpomatic_disk.cc:93
+msgid ""
+"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
+"folder."
+msgstr ""
+"このフォルダにASSETMAPまたはASSETMAP.xmlが見つかりません。DCPフォルダを選択し"
+"てください。"
+
+#: src/tools/dcpomatic_playlist.cc:253
+msgid ""
+"No playlist folder is specified in preferences. Please set one and then try "
+"again."
+msgstr ""
+"設定でプレイリストフォルダが指定されていません。設定してからもう一度お試しく"
+"ださい。"
+
+#: src/tools/dcpomatic.cc:1430
+msgid "Open DCP in &player"
+msgstr "DCPをプレーヤーで開く"
+
+#: src/tools/dcpomatic_editor.cc:347
+msgid "Open a DCP using File -> Open"
+msgstr "DCPを開く(ファイル->開く)"
+
+#: src/tools/dcpomatic_kdm.cc:227
+msgid "Output"
+msgstr "出力"
+
+#: src/tools/dcpomatic_combiner.cc:126
+msgid "Output DCP folder"
+msgstr "出力先DCPフォルダー"
+
+#: src/tools/dcpomatic_editor.cc:413
+#, c-format
+msgid "PKL: %s"
+msgstr "PKL: %s"
+
+#: src/tools/dcpomatic.cc:1391
+msgid "Paste settings...\tCtrl-V"
+msgstr "設定を貼り付け \tCtrl-V"
+
+#: src/tools/dcpomatic_batch.cc:178
+#, fuzzy
+msgid "Pause or resume conversion"
+msgstr "変換を一時停止 / 再開"
+
+#: src/tools/dcpomatic_batch.cc:178
+msgid "Pause/resume"
+msgstr "一時停止/再開"
+
+#: src/tools/dcpomatic_editor.cc:173
+msgid "Picture"
+msgstr "画像"
+
+#: src/tools/dcpomatic.cc:592
+#, fuzzy, c-format
+msgid ""
+"Please check that you do not have Windows controlled folder access enabled "
+"for %s."
+msgstr ""
+"%s に対して Windows の制御フォルダー アクセスが有効になっていることを確認して"
+"ください。"
+
+#: src/tools/dcpomatic_playlist.cc:429
+msgid "Question|N"
+msgstr "質問|N"
+
+#: src/tools/dcpomatic_playlist.cc:429
+msgid "Question|Y"
+msgstr "質問|Y"
+
+#: src/tools/dcpomatic_server.cc:238
+msgid "Quit"
+msgstr "終了"
+
+#: src/tools/dcpomatic.cc:1981
+msgid "Recreate KDM decryption chain"
+msgstr "KDM復号証明書チェーンを再作成する"
+
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
+msgid "Recreate signing certificates"
+msgstr "署名証明書を再作成する"
+
+#: src/tools/dcpomatic_editor.cc:224
+#, fuzzy
+msgid "Reels"
+msgstr "リール"
+
+#: src/tools/dcpomatic_disk.cc:157
+msgid "Refresh"
+msgstr "更新"
+
+#: src/tools/dcpomatic.cc:1774
+msgid "Release notes"
+msgstr "リリースノート"
+
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
+msgid "Remove"
+msgstr "削除"
+
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
+msgid "Report a problem..."
+msgstr "問題を報告する"
+
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
+msgid "Restore default preferences"
+msgstr "環境設定をデフォルトに戻す"
+
+#: src/tools/dcpomatic_player.cc:699
+msgid "Right"
+msgstr "右"
+
+#: src/tools/dcpomatic.cc:1425
+msgid "S&how DCP in Explorer"
+msgstr "エクスプローラーで DCP を表示"
+
+#: src/tools/dcpomatic.cc:1427
+msgid "S&how DCP in Files"
+msgstr "ファイル内の DCP を表示"
+
+#: src/tools/dcpomatic.cc:1423
+#, fuzzy
+msgid "S&how DCP in Finder"
+msgstr "FinderでDCPを表示"
+
+#: src/tools/dcpomatic_playlist.cc:328
+msgid "Save"
+msgstr "保存"
+
+#: src/tools/dcpomatic.cc:1367
+msgid "Save as &template..."
+msgstr "テンプレートとして保存"
+
+#: src/tools/dcpomatic.cc:159
+#, c-format
+msgid "Save changes to film \"%s\" before closing?"
+msgstr "「%s」への変更を保存しますか?"
+
+#: src/tools/dcpomatic.cc:187
+#, c-format
+msgid "Save changes to film \"%s\" before duplicating?"
+msgstr "複製する前に「%s」への変更を保存しますか?"
+
+#: src/tools/dcpomatic.cc:167
+msgid "Save film and close"
+msgstr "プロジェクトを保存して閉じる"
+
+#: src/tools/dcpomatic.cc:195
+msgid "Save film and duplicate"
+msgstr "プロジェクトを保存して複製する"
+
+#: src/tools/dcpomatic_player.cc:840
+msgid "Save frame to file"
+msgstr "フレームをファイルに保存"
+
+#: src/tools/dcpomatic_kdm.cc:162
+msgid "Screens"
+msgstr "スクリーン"
+
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
+msgid "Select DCP to open"
+msgstr "DCPを選択して開く"
+
+#: src/tools/dcpomatic_player.cc:771
+msgid "Select DCP to open as OV"
+msgstr "DCP(OV)を選択して開く"
+
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+msgid "Select DCP(s)"
+msgstr "DCPを選択"
+
+#: src/tools/dcpomatic_kdm.cc:821
+msgid "Select DKDM File"
+msgstr "DKDMファイルを選択"
+
+#: src/tools/dcpomatic_kdm.cc:607
+msgid "Select DKDM file"
+msgstr "DKDMファイルを選択"
+
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
+msgid "Select KDM"
+msgstr "KDMを選択"
+
+#: src/tools/dcpomatic.cc:1394
+msgid "Select all\tShift-Ctrl-A"
+msgstr "全て選択\tShift-Ctrl-A"
+
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
+msgid "Select film to open"
+msgstr "プロジェクトを選んで開く"
+
+#: src/tools/dcpomatic_kdm.cc:485
+msgid "Send KDM emails"
+msgstr "KDMをメール送信する"
+
+#: src/tools/dcpomatic_player.cc:702
+msgid "Set decode resolution to match display"
+msgstr "ディスプレイに合わせてデコード解像度を設定する"
+
+#: src/tools/dcpomatic_editor.cc:176
+msgid "Sound"
+msgstr "音声"
+
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
+msgid "Specify ZIP file"
+msgstr "ZIPファイルを指定"
+
+#: src/tools/dcpomatic_server.cc:237
+msgid "Status..."
+msgstr "ステータス"
+
+#: src/tools/dcpomatic_editor.cc:179
+msgid "Subtitle"
+msgstr "字幕"
+
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
+msgid "System information..."
+msgstr "システムインフォネメーション"
+
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
+#, c-format
+msgid "The %s download server could not be contacted."
+msgstr "%s のダウンロードサーバーに接続できませんでした。"
+
+#: src/tools/dcpomatic.cc:836
+#, c-format
+msgid ""
+"The DCP for this film will take up about %.1f GB, and the disk that you are "
+"using only has %.1f GB available. Do you want to continue anyway?"
+msgstr ""
+"このプロジェクトのDCPは約%.1f GBを占有しますが現在使用しているディスクの空き"
+"容量は%.1f GBしかありません。続行しますか?"
+
+#: src/tools/dcpomatic_batch.cc:248
+#, c-format
+msgid ""
+"The DCPs for this film and the films already in the queue will take up about "
+"%.1f GB. The disks that you are using only have %.1f GB available. Do you "
+"want to add this film to the queue anyway?"
+msgstr ""
+"このプロジェクトと既にキューに入っているプロジェクトのDCPは約%.1f GBを消費し"
+"ます。現在使用しているディスクの空き容量は%.1f GBしかありません。それでもこの"
+"映画をキューに追加しますか?"
+
+#: src/tools/dcpomatic_player.cc:378
+msgid "The KDM does not allow playback of this content at this time."
+msgstr "このKDMでは現時点でコンテンツの再生が許可されません。"
+
+#: src/tools/dcpomatic_kdm.cc:504
+#, c-format
+msgid ""
+"The KDM end period is after (or close to) the end of the signing "
+"certificates' validity period. Either use an earlier end time for this KDM "
+"or re-create your signing certificates in the %s preferences window."
+msgstr ""
+"KDMの終了期間が、署名証明書の有効期限の終了日以降(または終了日近く)になって"
+"います。このKDMの終了時間を早めるか、%sの環境設定ウィンドウで署名証明書を再作"
+"成してください。"
+
+#: src/tools/dcpomatic_kdm.cc:499
+msgid ""
+"The KDM start period is before (or close to) the start of the signing "
+"certificate's validity period. Use a later start time for this KDM."
+msgstr ""
+"KDMの開始期間が署名証明書の有効期間の開始前(または開始日に近い)になっていま"
+"す。このKDMにはより遅い開始時刻を使用してください。"
+
+#: src/tools/dcpomatic.cc:1005
+msgid "The certificate chain for signing is invalid"
+msgstr "署名用の証明書チェーンが無効です"
+
+#: src/tools/dcpomatic.cc:1983
+#, c-format
+msgid ""
+"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
+"cannot be used. %s cannot start unless you re-create it. Do you want to re-"
+"create\n"
+"the certificate chain for decrypting KDMs? You may want to say \"No\" here "
+"and back up your\n"
+"configuration before continuing."
+msgstr ""
+"%s が KDM の復号化に使用する証明書チェーンに矛盾があるため使用できません。\n"
+"証明書チェーンを再作成しなければ %s を起動できません。\n"
+"KDM の復号化に使用する証明書チェーンを再作成しますか?\n"
+"続行する前にここで「いいえ」を選択し、設定をバックアップしてください。"
+
+#: src/tools/dcpomatic.cc:1934
+#, c-format
+msgid ""
+"The certificate chain that %s uses for signing DCPs and KDMs contains a "
+"small error\n"
+"which will prevent DCPs from being validated correctly on some systems. Do "
+"you want to re-create\n"
+"the certificate chain for signing DCPs and KDMs?"
+msgstr ""
+"%s が DCP および KDM の署名に使用する証明書チェーンに小さなエラーが含まれてい"
+"ます。\n"
+"このエラーにより、一部のシステムでは DCP が正しく検証されません。DCP および "
+"KDM の署名に使用する証明書チェーンを再作成しますか?"
+
+#: src/tools/dcpomatic.cc:2002
+#, c-format
+msgid ""
+"The certificate chain that %s uses for signing DCPs and KDMs contains a "
+"small error\n"
+"which will prevent DCPs from being validated correctly on some systems. "
+"This error was caused\n"
+"by a bug in %s which has now been fixed. Do you want to re-create the "
+"certificate chain\n"
+"for signing DCPs and KDMs?"
+msgstr ""
+"%s が DCP および KDM の署名に使用する証明書チェーンに小さなエラーが含まれてい"
+"ます。\n"
+"このエラーにより、一部のシステムでは DCP が正しく検証されません。このエラー"
+"は\n"
+"%s のバグによって発生しましたが、現在は修正されています。DCP および KDM の署"
+"名に使用する証明書チェーンを再作成しますか?"
+
+#: src/tools/dcpomatic.cc:1951
+#, c-format
+msgid ""
+"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
+"period\n"
+"that is too long. This will cause problems playing back DCPs on some "
+"systems.\n"
+"Do you want to re-create the certificate chain for signing DCPs and KDMs?"
+msgstr ""
+"%s が DCP および KDM の署名に使用する証明書チェーンの有効期間が長すぎます。\n"
+"このため、一部のシステムでは DCP の再生に問題が発生します。\n"
+"DCP および KDM の署名に使用する証明書チェーンを再作成しますか?"
+
+#: src/tools/dcpomatic.cc:1965
+#, c-format
+msgid ""
+"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
+"and\n"
+"cannot be used. %s cannot start unless you re-create it. Do you want to re-"
+"create\n"
+"the certificate chain for signing DCPs and KDMs?"
+msgstr ""
+"%s が DCP および KDM の署名に使用する証明書チェーンに矛盾があるため、使用でき"
+"ません。\n"
+"再作成しない限り、%s は起動できません。\n"
+"DCP および KDM の署名に使用する証明書チェーンを再作成しますか?"
+
+#: src/tools/dcpomatic_combiner.cc:167
+#, fuzzy
+msgid ""
+"The directory {} already exists and is not empty. Are you sure you want to "
+"use it?"
+msgstr ""
+"ディレクトリ {} は既に使用済みで空ではありません。使用してもよろしいですか?"
+
+#: src/tools/dcpomatic_disk.cc:299
+msgid "The disk you selected is no longer available. Please choose another."
+msgstr "選択したディスクは現在利用できません。別のディスクを選択してください。"
+
+#: src/tools/dcpomatic_disk.cc:378
+#, c-format
+msgid ""
+"The drive %s could not be unmounted.\n"
+"Close any application that is using it, then try again. (%s)"
+msgstr ""
+"ドライブ %s をアンマウントできませんでした。\n"
+"ドライブを使用しているアプリケーションをすべて閉じてからもう一度お試しくださ"
+"い。(%s)"
+
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
+msgid ""
+"The existing configuration failed to load. Default values will be used "
+"instead. These may take a short time to create."
+msgstr ""
+"既存の設定を読み込めませんでした。代わりにデフォルト値が使用されます。作成に"
+"は少し時間がかかる場合があります。"
+
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
+#, fuzzy, c-format
+msgid "There are no new versions of %s available."
+msgstr "%s の利用可能な新しいバージョンはありません。"
+
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
+msgid "There are unfinished jobs; are you sure you want to quit?"
+msgstr "未完了の処理があります。本当に終了してもよろしいですか?"
+
+#: src/tools/dcpomatic.cc:485
+msgid ""
+"This film was created with an old version of DVD-o-matic and may not load "
+"correctly in this version. Please check the film's settings carefully."
+msgstr ""
+"このプロジェクトは古いバージョンのDCD-o-maticで作成されたため、現在のバージョ"
+"ンでは正しく読み込まれない可能性があります。プロジェクトの設定をよくご確認く"
+"ださい。"
+
+#: src/tools/dcpomatic_player.cc:458
+#, fuzzy, c-format
+msgid ""
+"This looks like a %s project folder, which cannot be loaded into the "
+"player. Choose the DCP folder inside the %s project folder if that's what "
+"you want to play."
+msgstr ""
+"これは%sプロジェクトフォルダのようですがプレーヤーに読み込めません。再生した"
+"い場合は、%sプロジェクトフォルダ内のDCPフォルダを選択してください。"
+
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+"フレームサイズやJPEG2000ビットストリームの有効性など、画像データの詳細を確認"
+"するにはチェックを入れてください。これらのチェックにはかなり時間がかかりま"
+"す。"
+
+#: src/tools/dcpomatic_player.cc:712
+msgid "Timing..."
+msgstr "タイミング"
+
+#: src/tools/dcpomatic_disk.cc:119
+msgid "Tools"
+msgstr "ツール"
+
+#: src/tools/dcpomatic.cc:590
+#, c-format
+msgid "Try removing the %s characters from your folder name."
+msgstr "フォルダ名から %s の文字を削除してください。"
+
+#: src/tools/dcpomatic_playlist.cc:340
+msgid "Type"
+msgstr "種類"
+
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
+msgid "Unfinished jobs"
+msgstr "処理未完了"
+
+#: src/tools/dcpomatic_disk.cc:118
+msgid "Uninstall..."
+msgstr "アンインストール"
+
+#: src/tools/dcpomatic_player.cc:860
+#, c-format
+msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
+msgstr "ファイル拡張子を認識できません %s (use .jpg, .jpeg or .png)"
+
+#: src/tools/dcpomatic_playlist.cc:347
+msgid "Up"
+msgstr "上へ"
+
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr "ユーザーマニュアル(English)"
+
+#: src/tools/dcpomatic_verifier.cc:201
+#, fuzzy
+msgid "Verify"
+msgstr "確認"
+
+#: src/tools/dcpomatic_player.cc:1041
+msgid "Verify DCP"
+msgstr "DCPを検証"
+
+#: src/tools/dcpomatic_player.cc:708
+msgid "Verify DCP..."
+msgstr "DCPを検証"
+
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr "画像データの詳細を確認する"
+
+#: src/tools/dcpomatic.cc:1437
+msgid "Version File (VF)..."
+msgstr "バージョンファイル (VF)"
+
+#: src/tools/dcpomatic.cc:1434
+msgid "Video waveform..."
+msgstr "動画波形"
+
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr "DCPフォルダへログを書込む"
+
+#: src/tools/dcpomatic_kdm.cc:795
+msgid ""
+"You are about to remove a DKDM. This will make it impossible to decrypt the "
+"DCP that the DKDM was made for, and it cannot be undone. Are you sure?"
+msgstr ""
+"DKDMを削除しようとしています。削除するとこれまでに作成されたDKDMでDCPの復号が"
+"不可能になり元に戻すこともできなくなります。よろしいですか?"
+
+#: src/tools/dcpomatic.cc:990
+#, c-format
+msgid ""
+"You are making a DKDM which is encrypted by a private key held in\n"
+"\n"
+"<tt>%s</tt>\n"
+"\n"
+"It is <span weight=\"bold\" size=\"larger\">VITALLY IMPORTANT</span> that "
+"you <span weight=\"bold\" size=\"larger\">BACK UP THIS FILE</span> since if "
+"it is lost your DKDMs (and the DCPs they protect) will become useless."
+msgstr ""
+"作成中しようとしているDKDMは次の場所に保管されている秘密鍵で暗号化されていま"
+"す。\n"
+"\n"
+"<tt>%s</tt> \n"
+"\n"
+"このファイルを紛失するとDKDM(およびそれによって保護されているDCP)が使用でき"
+"なくなります。\n"
+"<span weight=\"bold\" size=\"larger\">このファイルのバックアップ</span>は"
+"<span weight=\"bold\" size=\"larger\">極めて重要</span>です。"
+
+#: src/tools/dcpomatic.cc:853
+msgid ""
+"You are making an encrypted DCP. It will not be possible to make KDMs for "
+"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
+"film and the metadata files within the DCP.\n"
+"\n"
+"You should ensure that these files are <span weight=\"bold\" "
+"size=\"larger\">BACKED UP</span> if you want to make KDMs for this film."
+msgstr ""
+"暗号化されたDCPを作成しようとしています。プロジェクト内の<tt>metadata.xml</"
+"tt>ファイルとDCP内のメタデータファイルのコピーがなければ、のDCPのKDMを作成す"
+"ることはできません。\n"
+"\n"
+"このプロジェクトのKDMを作成する場合は、これらのファイルを<span "
+"weight=\"bold\" size=\"larger\">バックアップ</span>しておく必要があります。"
+
+#: src/tools/dcpomatic.cc:1733
+#, c-format
+msgid ""
+"You are running the 32-bit version of %s on a 64-bit version of Windows. "
+"This will limit the memory available to %s and may cause errors. You are "
+"strongly advised to install the 64-bit version of %s."
+msgstr ""
+"64ビット版のWindowsで32ビット版%sを実行しています。これにより %sで使用できる"
+"メモリが制限されエラーが発生する可能性があります。64ビット版の%sをインストー"
+"ルすることを強くお勧めします。"
+
+#: src/tools/dcpomatic_disk.cc:394
+#, fuzzy
+msgid ""
+"You did not correctly confirm that you read the warning that was just "
+"shown. Please try again."
+msgstr ""
+"表示された警告を正しく読んだかどうか確認できませんでした。もう一度お試しくだ"
+"さい。"
+
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
+msgid ""
+"You did not select a folder. Make sure that you select a folder before "
+"clicking Open."
+msgstr ""
+"フォルダが選択されていません。「開く」をクリックする前に必ずフォルダを選択し"
+"てください。"
diff --git a/src/tools/po/ko_KR.po b/src/tools/po/ko_KR.po
new file mode 100644
index 000000000..753eea525
--- /dev/null
+++ b/src/tools/po/ko_KR.po
@@ -0,0 +1,1350 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
+"PO-Revision-Date: 2026-03-06 17:25+0900\n"
+"Last-Translator: \n"
+"Language-Team: \n"
+"Language: ko_KR\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 3.8\n"
+
+#: src/tools/dcpomatic_kdm.cc:491
+#, c-format
+msgid "%d KDM written to %s"
+msgstr "%d개의 KDM이 %s에 저장되었습니다"
+
+#: src/tools/dcpomatic_kdm.cc:491
+#, c-format
+msgid "%d KDMs written to %s"
+msgstr "%d개의 KDM들이 %s에 저장되었습니다"
+
+#: src/tools/dcpomatic_combiner.cc:177
+#, c-format
+msgid "%s already exists as a file, so you cannot use it for a DCP."
+msgstr "%s 파일이 이미 존재하므로 DCP용으로 사용할 수 없습니다."
+
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
+#, fuzzy, c-format
+msgid "%s could not start"
+msgstr "%s을(를) 시작할 수 없습니다"
+
+#: src/tools/dcpomatic_playlist.cc:717
+#, fuzzy, c-format
+msgid "%s could not start %s"
+msgstr "%s이(가) %s을(를) 시작할 수 없습니다"
+
+#: src/tools/dcpomatic_combiner.cc:272
+#, c-format
+msgid "%s could not start (%s)"
+msgstr "%s을(를) 시작할 수 없습니다 (%s)."
+
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
+#, c-format
+msgid "%s could not start."
+msgstr "%s을(를) 시작할 수 없습니다."
+
+#: src/tools/dcpomatic_batch.cc:88
+msgid "&Add Film...\tCtrl-A"
+msgstr "&필름 추가...\tCtrl-A"
+
+#: src/tools/dcpomatic_player.cc:660
+msgid "&Add OV..."
+msgstr "&OV 추가..."
+
+#: src/tools/dcpomatic_player.cc:668
+msgid "&Close"
+msgstr "&닫기"
+
+#: src/tools/dcpomatic.cc:1375
+msgid "&Close\tCtrl-W"
+msgstr "&닫기\tCtrl-W"
+
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
+msgid "&Edit"
+msgstr "&편집"
+
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
+msgid "&Exit"
+msgstr "&종료"
+
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
+msgid "&File"
+msgstr "&파일"
+
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
+msgid "&Help"
+msgstr "&도움말"
+
+#: src/tools/dcpomatic.cc:1462
+msgid "&Jobs"
+msgstr "&작업"
+
+#: src/tools/dcpomatic.cc:1406
+msgid "&Make DCP\tCtrl-M"
+msgstr "&DCP 만들기\tCtrl-M"
+
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
+msgid "&Open...\tCtrl-O"
+msgstr "&열기...\tCtrl-O"
+
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
+msgid "&Preferences...\tCtrl-,"
+msgstr "&환경 설정...\tCtrl-,"
+
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
+msgid "&Preferences...\tCtrl-P"
+msgstr "&환경 설정...\tCtrl-P"
+
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
+msgid "&Quit"
+msgstr "&종료"
+
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
+msgid "&Save\tCtrl-S"
+msgstr "&저장\tCtrl-S"
+
+#: src/tools/dcpomatic_player.cc:663
+msgid "&Save frame to file...\tCtrl-S"
+msgstr "&프레임을 파일로 저장...\tCtrl-S"
+
+#: src/tools/dcpomatic.cc:1420
+msgid "&Send DCP to TMS"
+msgstr "&DCP를 TMS로 전송"
+
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
+msgid "&Tools"
+msgstr "&도구"
+
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
+msgid "&View"
+msgstr "&보기"
+
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr "(암호화됨, KDM 있음)"
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr "(암호화됨, KDM 없음)"
+
+#: src/tools/dcpomatic_playlist.cc:324
+msgid "<b>Playlist:</b>"
+msgstr "<b>플레이리스트:</b>"
+
+#: src/tools/dcpomatic_playlist.cc:132
+msgid "<b>Playlists</b>"
+msgstr "<b>플레이리스트</b>"
+
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
+msgid "About"
+msgstr "정보"
+
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
+#, c-format
+msgid "About %s"
+msgstr "%s 정보"
+
+#: src/tools/dcpomatic_playlist.cc:349
+msgid "Add"
+msgstr "추가"
+
+#: src/tools/dcpomatic_player.cc:661
+msgid "Add &KDM..."
+msgstr "&KDM 추가..."
+
+#: src/tools/dcpomatic_verifier.cc:180
+msgid "Add KDM..."
+msgstr "KDM 추가..."
+
+#: src/tools/dcpomatic_playlist.cc:80
+msgid "Add content"
+msgstr "콘텐츠 추가"
+
+#: src/tools/dcpomatic_batch.cc:177
+msgid "Add film"
+msgstr "필름 추가"
+
+#: src/tools/dcpomatic_batch.cc:177
+msgid "Add film for conversion"
+msgstr "변환할 필름 추가"
+
+#: src/tools/dcpomatic_kdm.cc:216
+msgid "Add folder..."
+msgstr "폴더 추가..."
+
+#: src/tools/dcpomatic_kdm.cc:214
+msgid "Add..."
+msgstr "추가..."
+
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
+#, c-format
+msgid ""
+"An exception occurred: %s\n"
+"\n"
+"%s"
+msgstr ""
+"예외가 발생했습니다: %s\n"
+"\n"
+"%s"
+
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
+#, c-format
+msgid ""
+"An exception occurred: %s (%s)\n"
+"\n"
+"%s"
+msgstr ""
+"예외가 발생했습니다: %s (%s)\n"
+"\n"
+"%s"
+
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
+#, c-format
+msgid ""
+"An exception occurred: %s (%s) (%s)\n"
+"\n"
+"%s"
+msgstr ""
+"예외가 발생했습니다: %s (%s) (%s)\n"
+"\n"
+"%s"
+
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
+#, c-format
+msgid ""
+"An exception occurred: %s.\n"
+"\n"
+"%s"
+msgstr ""
+"예외가 발생했습니다: %s.\n"
+"\n"
+"%s"
+
+#: src/tools/dcpomatic_server.cc:362
+#, c-format
+msgid "An unknown error has occurred with the %s."
+msgstr "%s에서 알 수 없는 오류가 발생했습니다."
+
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
+msgid "An unknown exception occurred."
+msgstr "알 수 없는 예외가 발생했습니다."
+
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
+#, c-format
+msgid "An unknown exception occurred. %s"
+msgstr "알 수 없는 예외가 발생했습니다. %s"
+
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
+msgid "Annotation text"
+msgstr "주석 텍스트"
+
+#: src/tools/dcpomatic.cc:777
+msgid ""
+"Are you sure you want to restore preferences to their defaults? This cannot "
+"be undone."
+msgstr ""
+"환경 설정을 초기 상태로 복원하시겠습니까? 이 작업은 되돌릴 수 없습니다."
+
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr "오디오 그래프..."
+
+#: src/tools/dcpomatic.cc:878
+#, c-format
+msgid "Bad setting for %s."
+msgstr "%s의 설정이 잘못되었습니다."
+
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
+msgid "CPL"
+msgstr "CPL"
+
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
+msgid "CPL's content is not encrypted."
+msgstr "CPL의 콘텐츠가 암호화되어 있지 않습니다."
+
+#: src/tools/dcpomatic_editor.cc:410
+#, c-format
+msgid "CPL: %s"
+msgstr "CPL: %s"
+
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr "취소"
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
+msgid "Check for updates"
+msgstr "업데이트 확인"
+
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr "KDM 확인 중"
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
+msgid "Choose a DCP folder"
+msgstr "DCP 폴더를 선택하세요"
+
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
+#, c-format
+msgid "Close %s"
+msgstr "%s 닫기"
+
+#: src/tools/dcpomatic.cc:167
+msgid "Close without saving film"
+msgstr "필름을 저장하지 않고 닫기"
+
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
+msgid "Closed captions..."
+msgstr "클로즈드 캡션..."
+
+#: src/tools/dcpomatic_combiner.cc:130
+msgid "Combine"
+msgstr "결합"
+
+#: src/tools/dcpomatic_combiner.cc:184
+#, fuzzy
+msgid "Combining DCPs"
+msgstr "DCP 결합"
+
+#: src/tools/dcpomatic_editor.cc:219
+msgid "Content title text"
+msgstr "콘텐츠 제목 텍스트"
+
+#: src/tools/dcpomatic_disk.cc:166
+msgid "Copy DCPs"
+msgstr "DCP 복사"
+
+#: src/tools/dcpomatic.cc:1389
+msgid "Copy settings\tCtrl-C"
+msgstr "설정 복사\tCtrl-C"
+
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
+msgid "Could not create folder to store film."
+msgstr "필름을 저장할 폴더를 생성할 수 없습니다."
+
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
+msgid ""
+"Could not decrypt the DKDM. Perhaps it was not created with the correct "
+"certificate."
+msgstr ""
+"DKDM을 해독할 수 없습니다. 올바른 인증서로 생성되지 않았을 수 있습니다."
+
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
+msgid "Could not duplicate project."
+msgstr "프로젝트를 복제할 수 없습니다."
+
+#: src/tools/dcpomatic.cc:955
+msgid "Could not find batch converter."
+msgstr "배치 변환기를 찾을 수 없습니다."
+
+#: src/tools/dcpomatic.cc:970
+msgid "Could not find player."
+msgstr "플레이어를 찾을 수 없습니다."
+
+#: src/tools/dcpomatic_batch.cc:478
+#, c-format
+msgid ""
+"Could not listen for new batch jobs. Perhaps another instance of the %s is "
+"running."
+msgstr ""
+"새 배치 작업을 대기할 수 없습니다. 이미 %s의 다른 인스턴스가 실행 중일 수 있"
+"습니다."
+
+#: src/tools/dcpomatic_editor.cc:404
+msgid "Could not load DCP"
+msgstr "DCP를 불러올 수 없습니다"
+
+#: src/tools/dcpomatic_player.cc:1403
+#, fuzzy, c-format
+msgid "Could not load DCP %s"
+msgstr "DCP %s을(를) 불러올 수 없습니다"
+
+#: src/tools/dcpomatic_player.cc:882
+#, c-format
+msgid "Could not load DCP %s."
+msgstr "DCP %s을(를) 불러올 수 없습니다."
+
+#: src/tools/dcpomatic_player.cc:649
+#, c-format
+msgid ""
+"Could not load DCP.\n"
+"\n"
+"%s."
+msgstr ""
+"DCP를 불러올 수 없습니다.\n"
+"\n"
+"%s."
+
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
+msgid "Could not load KDM."
+msgstr "KDM을 불러올 수 없습니다."
+
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
+#, c-format
+msgid "Could not load a DCP from %s"
+msgstr "%s에서 DCP를 불러올 수 없습니다"
+
+#: src/tools/dcpomatic_batch.cc:495
+#, c++-format
+msgid "Could not load film {}"
+msgstr "필름 {}을(를) 불러올 수 없습니다."
+
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "필름 {}을(를) 불러올 수 없습니다 ({})"
+
+#: src/tools/dcpomatic_player.cc:1411
+#, c-format
+msgid "Could not load stress test file %s"
+msgstr "스트레스 테스트 파일 %s을(를) 불러올 수 없습니다"
+
+#: src/tools/dcpomatic.cc:880
+msgid "Could not make DCP."
+msgstr "DCP를 만들 수 없습니다."
+
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
+#, c-format
+msgid "Could not open film at %s"
+msgstr "%s 위치의 필름을 열 수 없습니다"
+
+#: src/tools/dcpomatic.cc:502
+#, c-format
+msgid "Could not open this folder as a %s project."
+msgstr "이 폴더를 %s 프로젝트로 열 수 없습니다."
+
+#: src/tools/dcpomatic_kdm.cc:657
+msgid ""
+"Could not read file as a KDM. It is much too large. Make sure you are "
+"loading a DKDM (XML) file."
+msgstr ""
+"파일을 KDM으로 읽을 수 없습니다. 파일이 너무 큽니다. DKDM (XML) 파일을 로드하"
+"고 있는지 확인하세요."
+
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
+msgid ""
+"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
+"at all."
+msgstr ""
+"파일을 KDM으로 읽을 수 없습니다. 형식이 잘못되었거나 KDM 파일이 아닐 수 있습"
+"니다."
+
+#: src/tools/dcpomatic.cc:799
+msgid "Could not remove existing preferences file"
+msgstr "기존 환경 설정 파일을 제거할 수 없습니다"
+
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
+msgid "Could not save project."
+msgstr "프로젝트를 저장할 수 없습니다."
+
+#: src/tools/dcpomatic.cc:645
+msgid "Could not save template."
+msgstr "템플릿을 저장할 수 없습니다."
+
+#: src/tools/dcpomatic.cc:1089
+msgid "Could not show DCP."
+msgstr "DCP를 표시할 수 없습니다."
+
+#: src/tools/dcpomatic.cc:953
+msgid ""
+"Could not start the batch converter. You may need to download it from "
+"dcpomatic.com."
+msgstr ""
+"배치 컨버터를 시작할 수 없습니다. dcpomatic.com에서 다운로드해야 할 수도 있습"
+"니다."
+
+#: src/tools/dcpomatic.cc:968
+msgid ""
+"Could not start the player. You may need to download it from dcpomatic.com."
+msgstr ""
+"플레이어를 시작할 수 없습니다. dcpomatic.com에서 다운로드해야 할 수도 있습니"
+"다."
+
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
+#, c-format
+msgid ""
+"Could not write to config file at %s. Your changes have not been saved."
+msgstr "%s 위치의 설정 파일에 쓸 수 없습니다. 변경 사항이 저장되지 않았습니다."
+
+#: src/tools/dcpomatic_player.cc:1136
+msgid "Could not write to config file. Your changes have not been saved."
+msgstr "설정 파일에 쓸 수 없습니다. 변경 사항이 저장되지 않았습니다."
+
+#: src/tools/dcpomatic_kdm.cc:239
+msgid "Create KDMs"
+msgstr "KDM 만들기"
+
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
+#, fuzzy
+msgid "Creator"
+msgstr "작성자"
+
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr "크롭"
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
+msgid "DCP"
+msgstr "DCP"
+
+#: src/tools/dcpomatic_server.cc:256
+msgid "DCP-o-matic Encode Server"
+msgstr "DCP-o-matic 인코드 서버"
+
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
+msgid "DCPs"
+msgstr "DCP들"
+
+#: src/tools/dcpomatic_combiner.cc:194
+msgid "DCPs combined successfully."
+msgstr "DCP들이 성공적으로 결합되었습니다."
+
+#: src/tools/dcpomatic_kdm.cc:175
+msgid "DKDM"
+msgstr "DKDM"
+
+#: src/tools/dcpomatic_kdm.cc:632
+#, c-format
+msgid "DKDM %s is already in the DKDM list and will not be added again."
+msgstr "DKDM %s이(가) 이미 목록에 있으며 다시 추가되지 않습니다."
+
+#: src/tools/dcpomatic_player.cc:703
+msgid "Decode at full resolution"
+msgstr "전체 해상도로 디코드"
+
+#: src/tools/dcpomatic_player.cc:704
+msgid "Decode at half resolution"
+msgstr "1/2 해상도로 디코드"
+
+#: src/tools/dcpomatic_player.cc:705
+msgid "Decode at quarter resolution"
+msgstr "1/4 해상도로 디코드"
+
+#: src/tools/dcpomatic_playlist.cc:145
+msgid "Delete"
+msgstr "삭제"
+
+#: src/tools/dcpomatic_disk.cc:344
+#, c-format
+msgid ""
+"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
+"again."
+msgstr ""
+".dmg 파일에서 %s Disk Writer.pkg를 설치했습니까? 확인 후 다시 시도하세요."
+
+#: src/tools/dcpomatic_disk.cc:190
+msgid "Disk Writer"
+msgstr "디스크 라이터"
+
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
+msgid "Do nothing"
+msgstr "아무것도 하지 않음"
+
+#: src/tools/dcpomatic_disk.cc:336
+msgid ""
+"Do you see a 'User Account Control' dialogue asking about "
+"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
+msgstr ""
+"'사용자 계정 컨트롤' 대화 상자가 나타납니까? 그렇다면 '예'를 누른 후 다시 시"
+"도하세요."
+
+#: src/tools/dcpomatic.cc:863
+#, c-format
+msgid "Do you want to overwrite the existing DCP %s?"
+msgstr "기존 DCP %s을(를) 덮어쓰시겠습니까?"
+
+#: src/tools/dcpomatic.cc:167
+msgid "Don't close"
+msgstr "닫지 않음"
+
+#: src/tools/dcpomatic.cc:195
+msgid "Don't duplicate"
+msgstr "복제하지 않음"
+
+#: src/tools/dcpomatic_playlist.cc:348
+#, fuzzy
+msgid "Down"
+msgstr "아래로"
+
+#: src/tools/dcpomatic_disk.cc:153
+msgid "Drive"
+msgstr "드라이브"
+
+#: src/tools/dcpomatic_player.cc:693
+msgid "Dual screen\tShift+F11"
+msgstr "듀얼 스크린 \tShift+F11"
+
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
+msgid "Duplicate Film"
+msgstr "필름 복제"
+
+#: src/tools/dcpomatic.cc:1369
+msgid "Duplicate and open..."
+msgstr "복제 및 열기..."
+
+#: src/tools/dcpomatic.cc:195
+msgid "Duplicate without saving film"
+msgstr "필름을 저장하지 않고 복제"
+
+#: src/tools/dcpomatic.cc:1368
+msgid "Duplicate..."
+msgstr "복제..."
+
+#: src/tools/dcpomatic_editor.cc:95
+msgid "Duration"
+msgstr "길이"
+
+#: src/tools/dcpomatic_editor.cc:155
+msgid "Edit reel"
+msgstr "릴 편집"
+
+#: src/tools/dcpomatic_playlist.cc:351
+msgid "Edit..."
+msgstr "편집..."
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
+msgid "Encoding servers..."
+msgstr "인코딩 서버..."
+
+#: src/tools/dcpomatic_playlist.cc:341
+msgid "Encrypted"
+msgstr "암호화됨"
+
+#: src/tools/dcpomatic_editor.cc:90
+#, fuzzy
+msgid "Entry point"
+msgstr "시작점"
+
+#: src/tools/dcpomatic_verifier.cc:156
+msgid "Examining DCPs"
+msgstr "DCP 검사 중"
+
+#: src/tools/dcpomatic.cc:1446
+msgid "Export preferences..."
+msgstr "환경 설정 내보내기..."
+
+#: src/tools/dcpomatic.cc:1418
+msgid "Export subtitles...\tShift-Ctrl-E"
+msgstr "자막 내보내기...\tShift-Ctrl-E"
+
+#: src/tools/dcpomatic.cc:1417
+msgid "Export video file...\tCtrl-E"
+msgstr "비디오 파일 내보내기...\tCtrl-E"
+
+#: src/tools/dcpomatic_kdm.cc:220
+msgid "Export..."
+msgstr "내보내기..."
+
+#: src/tools/dcpomatic_player.cc:700
+#, fuzzy
+msgid "Eye"
+msgstr "눈"
+
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
+#, c-format
+msgid "File %s already exists. Do you want to overwrite it?"
+msgstr "%s 파일이 이미 존재합니다. 덮어쓰시겠습니까?"
+
+#. TRANSLATORS: this is the heading for a dialog box, which tells the user that the current
+#. project (Film) has been changed since it was last saved.
+#: src/tools/dcpomatic.cc:162 src/tools/dcpomatic.cc:190
+msgid "Film changed"
+msgstr "필름 변경됨"
+
+#: src/tools/dcpomatic_disk.cc:190
+#, fuzzy
+msgid "Finding disks"
+msgstr "디스크 찾는 중"
+
+#: src/tools/dcpomatic_kdm.cc:357
+#, c-format
+msgid "Folder %s already exists. Do you want to overwrite it?"
+msgstr "%s 폴더가 이미 존재합니다. 덮어쓰시겠습니까?"
+
+#: src/tools/dcpomatic_server.cc:169
+msgid "Frames per second"
+msgstr "초당 프레임 수(FPS)"
+
+#: src/tools/dcpomatic_player.cc:692
+msgid "Full screen\tF11"
+msgstr "전체 화면\tF11"
+
+#: src/tools/dcpomatic.cc:1438
+msgid "Hints..."
+msgstr "힌트..."
+
+#: src/tools/dcpomatic.cc:1447
+msgid "Import preferences..."
+msgstr "환경 설정 가져오기..."
+
+#: src/tools/dcpomatic_combiner.cc:105
+msgid "Input DCP"
+msgstr "입력 DCP"
+
+#: src/tools/dcpomatic_editor.cc:100
+msgid "Intrinsic duration"
+msgstr "고유 길이"
+
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
+msgid "Issuer"
+msgstr "발행자"
+
+#: src/tools/dcpomatic.cc:504
+#, c-format
+msgid ""
+"It looks like you are trying to open a DCP. File -> Open is for loading %s "
+"projects, not DCPs. To import a DCP, create a new project with File -> New "
+"and then click the \"Add DCP...\" button."
+msgstr ""
+"DCP를 열려고 시도 중인 것 같습니다. [파일 -> 열기]는 %s 프로젝트용입니다. DCP"
+"를 가져오려면 [파일 -> 새로 만들기]로 프로젝트를 만든 후 \"DCP 추가...\" 버튼"
+"을 클릭하세요."
+
+#. TRANSLATORS: translate the word "Timing" here; do not include the "KDM|" prefix
+#: src/tools/dcpomatic_kdm.cc:169
+#, fuzzy
+msgid "KDM|Timing"
+msgstr "KDM|타이밍"
+
+#: src/tools/dcpomatic_player.cc:698
+msgid "Left"
+msgstr "왼쪽"
+
+#: src/tools/dcpomatic_playlist.cc:140
+msgid "Length"
+msgstr "길이"
+
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
+msgid "Loading content"
+msgstr "콘텐츠 불러오는 중"
+
+#: src/tools/dcpomatic.cc:1413
+msgid "Make &DKDMs...\tCtrl-D"
+msgstr "&DKDM 만들기...\tCtrl-D"
+
+#: src/tools/dcpomatic.cc:1411
+msgid "Make &KDMs...\tCtrl-K"
+msgstr "&KDM 만들기...\tCtrl-K"
+
+#: src/tools/dcpomatic.cc:1408
+msgid "Make DCP in &batch converter\tCtrl-B"
+msgstr "&배치 변환기에서 DCP 만들기\tCtrl-B"
+
+#: src/tools/dcpomatic.cc:1414
+#, c-format
+msgid "Make DKDM for %s..."
+msgstr "%s용 DKDM 만들기..."
+
+#: src/tools/dcpomatic.cc:1440
+msgid "Manage templates..."
+msgstr "템플릿 관리..."
+
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
+msgid "Name"
+msgstr "이름"
+
+#: src/tools/dcpomatic_playlist.cc:143
+msgid "New"
+msgstr "새로 만들기"
+
+#: src/tools/dcpomatic.cc:568
+msgid "New Film"
+msgstr "새 필름"
+
+#: src/tools/dcpomatic_playlist.cc:257
+msgid "New Playlist"
+msgstr "새 플레이리스트"
+
+#: src/tools/dcpomatic.cc:1360
+msgid "New...\tCtrl-N"
+msgstr "새로 만들기...\tCtrl-N"
+
+#: src/tools/dcpomatic_disk.cc:93
+msgid ""
+"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
+"folder."
+msgstr "이 폴더에서 ASSETMAP을 찾을 수 없습니다. DCP 폴더를 선택하세요."
+
+#: src/tools/dcpomatic_playlist.cc:253
+msgid ""
+"No playlist folder is specified in preferences. Please set one and then try "
+"again."
+msgstr ""
+"환경 설정에 플레이리스트 폴더가 지정되지 않았습니다. 폴더를 설정한 후 다시 시"
+"도하세요."
+
+#: src/tools/dcpomatic.cc:1430
+msgid "Open DCP in &player"
+msgstr "플레이어에서 DCP 열기(&P)"
+
+#: src/tools/dcpomatic_editor.cc:347
+msgid "Open a DCP using File -> Open"
+msgstr "[파일 -> 열기]를 사용하여 DCP 열기"
+
+#: src/tools/dcpomatic_kdm.cc:227
+msgid "Output"
+msgstr "출력"
+
+#: src/tools/dcpomatic_combiner.cc:126
+msgid "Output DCP folder"
+msgstr "출력 DCP 폴더"
+
+#: src/tools/dcpomatic_editor.cc:413
+#, c-format
+msgid "PKL: %s"
+msgstr "PKL: %s"
+
+#: src/tools/dcpomatic.cc:1391
+msgid "Paste settings...\tCtrl-V"
+msgstr "설정 붙여넣기...\tCtrl-V"
+
+#: src/tools/dcpomatic_batch.cc:178
+msgid "Pause or resume conversion"
+msgstr "변환 일시 중지 또는 재개"
+
+#: src/tools/dcpomatic_batch.cc:178
+msgid "Pause/resume"
+msgstr "일시 중지/재개"
+
+#: src/tools/dcpomatic_editor.cc:173
+msgid "Picture"
+msgstr "그림"
+
+#: src/tools/dcpomatic.cc:592
+#, fuzzy, c-format
+msgid ""
+"Please check that you do not have Windows controlled folder access enabled "
+"for %s."
+msgstr ""
+"윈도우의 '제어된 폴더 액세스'가 %s에 대해 활성화되어 있지 않은지 확인하세요."
+
+#: src/tools/dcpomatic_playlist.cc:429
+#, fuzzy
+msgid "Question|N"
+msgstr "Question|아니요"
+
+#: src/tools/dcpomatic_playlist.cc:429
+#, fuzzy
+msgid "Question|Y"
+msgstr "Question|예"
+
+#: src/tools/dcpomatic_server.cc:238
+msgid "Quit"
+msgstr "종료"
+
+#: src/tools/dcpomatic.cc:1981
+msgid "Recreate KDM decryption chain"
+msgstr "KDM 해독 체인 재생성"
+
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
+msgid "Recreate signing certificates"
+msgstr "서명 인증서 재생성"
+
+#: src/tools/dcpomatic_editor.cc:224
+msgid "Reels"
+msgstr "릴"
+
+#: src/tools/dcpomatic_disk.cc:157
+msgid "Refresh"
+msgstr "새로고침"
+
+#: src/tools/dcpomatic.cc:1774
+msgid "Release notes"
+msgstr "릴리스 노트"
+
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
+msgid "Remove"
+msgstr "제거"
+
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
+msgid "Report a problem..."
+msgstr "문제 보고..."
+
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
+msgid "Restore default preferences"
+msgstr "기본 환경 설정으로 복원"
+
+#: src/tools/dcpomatic_player.cc:699
+msgid "Right"
+msgstr "오른쪽"
+
+#: src/tools/dcpomatic.cc:1425
+msgid "S&how DCP in Explorer"
+msgstr "탐색기에서 DCP 표시(&H)"
+
+#: src/tools/dcpomatic.cc:1427
+msgid "S&how DCP in Files"
+msgstr "파일 앱에서 DCP 표시(&H)"
+
+#: src/tools/dcpomatic.cc:1423
+msgid "S&how DCP in Finder"
+msgstr "Finder에서 DCP 표시(&H)"
+
+#: src/tools/dcpomatic_playlist.cc:328
+msgid "Save"
+msgstr "저장"
+
+#: src/tools/dcpomatic.cc:1367
+msgid "Save as &template..."
+msgstr "&템플릿으로 저장..."
+
+#: src/tools/dcpomatic.cc:159
+#, c-format
+msgid "Save changes to film \"%s\" before closing?"
+msgstr "닫기 전에 필름 \"%s\"의 변경 사항을 저장하시겠습니까?"
+
+#: src/tools/dcpomatic.cc:187
+#, c-format
+msgid "Save changes to film \"%s\" before duplicating?"
+msgstr "복제하기 전에 필름 \"%s\"의 변경 사항을 저장하시겠습니까?"
+
+#: src/tools/dcpomatic.cc:167
+msgid "Save film and close"
+msgstr "필름 저장 및 닫기"
+
+#: src/tools/dcpomatic.cc:195
+msgid "Save film and duplicate"
+msgstr "필름 저장 및 복제"
+
+#: src/tools/dcpomatic_player.cc:840
+msgid "Save frame to file"
+msgstr "프레임을 파일로 저장"
+
+#: src/tools/dcpomatic_kdm.cc:162
+msgid "Screens"
+msgstr "스크린"
+
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
+msgid "Select DCP to open"
+msgstr "열려는 DCP 선택"
+
+#: src/tools/dcpomatic_player.cc:771
+msgid "Select DCP to open as OV"
+msgstr "OV로 열려는 DCP 선택"
+
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "KDM 선택"
+
+#: src/tools/dcpomatic_kdm.cc:821
+msgid "Select DKDM File"
+msgstr "DKDM 파일 선택"
+
+#: src/tools/dcpomatic_kdm.cc:607
+msgid "Select DKDM file"
+msgstr "DKDM 파일 선택"
+
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
+msgid "Select KDM"
+msgstr "KDM 선택"
+
+#: src/tools/dcpomatic.cc:1394
+msgid "Select all\tShift-Ctrl-A"
+msgstr "전체 선택\tShift-Ctrl-A"
+
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
+msgid "Select film to open"
+msgstr "열려는 필름 선택"
+
+#: src/tools/dcpomatic_kdm.cc:485
+msgid "Send KDM emails"
+msgstr "KDM 이메일 전송"
+
+#: src/tools/dcpomatic_player.cc:702
+msgid "Set decode resolution to match display"
+msgstr "디스플레이에 맞춰 디코드 해상도 설정"
+
+#: src/tools/dcpomatic_editor.cc:176
+msgid "Sound"
+msgstr "사운드"
+
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
+msgid "Specify ZIP file"
+msgstr "ZIP 파일 지정"
+
+#: src/tools/dcpomatic_server.cc:237
+msgid "Status..."
+msgstr "상태..."
+
+#: src/tools/dcpomatic_editor.cc:179
+msgid "Subtitle"
+msgstr "자막"
+
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
+msgid "System information..."
+msgstr "시스템 정보..."
+
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
+#, c-format
+msgid "The %s download server could not be contacted."
+msgstr "%s 다운로드 서버에 연결할 수 없습니다."
+
+#: src/tools/dcpomatic.cc:836
+#, c-format
+msgid ""
+"The DCP for this film will take up about %.1f GB, and the disk that you are "
+"using only has %.1f GB available. Do you want to continue anyway?"
+msgstr ""
+"이 필름의 DCP는 약 %.1f GB를 사용하며, 현재 디스크의 여유 공간은 %.1f GB뿐입"
+"니다. 계속하시겠습니까?"
+
+#: src/tools/dcpomatic_batch.cc:248
+#, c-format
+msgid ""
+"The DCPs for this film and the films already in the queue will take up about "
+"%.1f GB. The disks that you are using only have %.1f GB available. Do you "
+"want to add this film to the queue anyway?"
+msgstr ""
+"이 필름과 대기열에 있는 필름들의 DCP는 약 %.1f GB를 사용합니다. 현재 디스크"
+"의 여유 공간은 %.1f GB뿐입니다. 대기열에 추가하시겠습니까?"
+
+#: src/tools/dcpomatic_player.cc:378
+msgid "The KDM does not allow playback of this content at this time."
+msgstr "이 KDM으로는 현재 이 콘텐츠를 재생할 수 없습니다."
+
+#: src/tools/dcpomatic_kdm.cc:504
+#, c-format
+msgid ""
+"The KDM end period is after (or close to) the end of the signing "
+"certificates' validity period. Either use an earlier end time for this KDM "
+"or re-create your signing certificates in the %s preferences window."
+msgstr ""
+"KDM 만료일이 서명 인증서의 유효 기간을 초과하거나 가깝습니다. KDM 종료 시간"
+"을 앞당기거나 %s 환경 설정에서 서명 인증서를 다시 생성하세요."
+
+#: src/tools/dcpomatic_kdm.cc:499
+msgid ""
+"The KDM start period is before (or close to) the start of the signing "
+"certificate's validity period. Use a later start time for this KDM."
+msgstr ""
+"KDM 시작일이 서명 인증서의 유효 기간 시작일보다 빠르거나 가깝습니다. KDM 시"
+"작 시간을 늦춰 설정하세요."
+
+#: src/tools/dcpomatic.cc:1005
+msgid "The certificate chain for signing is invalid"
+msgstr "서명용 인증서 체인이 잘못되었습니다"
+
+#: src/tools/dcpomatic.cc:1983
+#, c-format
+msgid ""
+"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
+"cannot be used. %s cannot start unless you re-create it. Do you want to re-"
+"create\n"
+"the certificate chain for decrypting KDMs? You may want to say \"No\" here "
+"and back up your\n"
+"configuration before continuing."
+msgstr ""
+"%s이(가) KDM 해독에 사용하는 인증서 체인이 일관적이지 않아 사용할 수 없습니"
+"다. \n"
+"다시 생성하지 않으면 %s을(를) 시작할 수 없습니다. \n"
+"KDM 해독용 인증서 체인을 다시 생성하시겠습니까? \n"
+"진행하기 전에 '아니요'를 누르고 설정을 백업하는 것을 권장합니다."
+
+#: src/tools/dcpomatic.cc:1934
+#, c-format
+msgid ""
+"The certificate chain that %s uses for signing DCPs and KDMs contains a "
+"small error\n"
+"which will prevent DCPs from being validated correctly on some systems. Do "
+"you want to re-create\n"
+"the certificate chain for signing DCPs and KDMs?"
+msgstr ""
+"%s이(가) DCP 및 KDM 서명에 사용하는 인증서 체인에 작은 오류가 있어 일부 시스"
+"템에서 DCP 검증에 실패할 수 있습니다. \n"
+"서명용 인증서 체인을 다시 생성하시겠습니까?"
+
+#: src/tools/dcpomatic.cc:2002
+#, c-format
+msgid ""
+"The certificate chain that %s uses for signing DCPs and KDMs contains a "
+"small error\n"
+"which will prevent DCPs from being validated correctly on some systems. "
+"This error was caused\n"
+"by a bug in %s which has now been fixed. Do you want to re-create the "
+"certificate chain\n"
+"for signing DCPs and KDMs?"
+msgstr ""
+"%s이(가) 서명에 사용하는 인증서 체인에 작은 오류가 있습니다. \n"
+"이는 이전 버전 %s의 버그 때문이었으며 현재는 수정되었습니다. \n"
+"서명용 인증서 체인을 다시 생성하시겠습니까?"
+
+#: src/tools/dcpomatic.cc:1951
+#, c-format
+msgid ""
+"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
+"period\n"
+"that is too long. This will cause problems playing back DCPs on some "
+"systems.\n"
+"Do you want to re-create the certificate chain for signing DCPs and KDMs?"
+msgstr ""
+"%s이(가) 서명에 사용하는 인증서 체인의 유효 기간이 너무 깁니다. \n"
+"일부 시스템에서 재생 문제가 발생할 수 있습니다. \n"
+"인증서 체인을 다시 생성하시겠습니까?"
+
+#: src/tools/dcpomatic.cc:1965
+#, c-format
+msgid ""
+"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
+"and\n"
+"cannot be used. %s cannot start unless you re-create it. Do you want to re-"
+"create\n"
+"the certificate chain for signing DCPs and KDMs?"
+msgstr ""
+"%s가 서명할 때 사용하는 인증서 체인이 일관적이지 않아 사용할 수 없습니다. \n"
+"%s는 다시 생성하지 않으면 프로그램을 시작할 수 없습니다. \n"
+"DCP와 KDM 서명용 인증서 체인을 다시 생성하시겠습니까?"
+
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
+msgid ""
+"The directory {} already exists and is not empty. Are you sure you want to "
+"use it?"
+msgstr ""
+"디렉토리 {}는 이미 존재하며 비어 있지 않습니다. 그대로 사용하시겠습니까?"
+
+#: src/tools/dcpomatic_disk.cc:299
+msgid "The disk you selected is no longer available. Please choose another."
+msgstr "선택한 디스크를 더 이상 사용할 수 없습니다. 다른 디스크를 선택하세요."
+
+#: src/tools/dcpomatic_disk.cc:378
+#, c-format
+msgid ""
+"The drive %s could not be unmounted.\n"
+"Close any application that is using it, then try again. (%s)"
+msgstr ""
+"드라이브 %s을(를) 마운트 해제할 수 없습니다. \n"
+"해당 드라이브를 사용 중인 애플리케이션을 종료한 후 다시 시도하세요. (%s)"
+
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
+msgid ""
+"The existing configuration failed to load. Default values will be used "
+"instead. These may take a short time to create."
+msgstr ""
+"기존 설정을 불러오지 못했습니다. 대신 기본값을 사용합니다. 생성하는 데 시간"
+"이 조금 걸릴 수 있습니다."
+
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
+#, c-format
+msgid "There are no new versions of %s available."
+msgstr "사용 가능한 %s의 새 버전이 없습니다."
+
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
+msgid "There are unfinished jobs; are you sure you want to quit?"
+msgstr "완료되지 않은 작업이 있습니다; 정말 종료하시겠습니까?"
+
+#: src/tools/dcpomatic.cc:485
+msgid ""
+"This film was created with an old version of DVD-o-matic and may not load "
+"correctly in this version. Please check the film's settings carefully."
+msgstr ""
+"이 필름은 구버전 DVD-o-matic으로 생성되어 현재 버전에서 제대로 불러오지 못할 "
+"수 있습니다. 필름 설정을 주의 깊게 확인하세요."
+
+#: src/tools/dcpomatic_player.cc:458
+#, c-format
+msgid ""
+"This looks like a %s project folder, which cannot be loaded into the "
+"player. Choose the DCP folder inside the %s project folder if that's what "
+"you want to play."
+msgstr ""
+"이것은 %s 프로젝트 폴더이므로 플레이어에서 직접 열 수 없습니다. 재생하려면 "
+"%s 프로젝트 폴더 내부의 DCP 폴더를 선택하세요."
+
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+"체크하면 프레임 크기 및 JPEG2000 비트스트림 유효성 등 그림 에셋의 세부 사항"
+"을 확인합니다. 이 작업은 시간이 꽤 걸립니다."
+
+#: src/tools/dcpomatic_player.cc:712
+msgid "Timing..."
+msgstr "타이밍..."
+
+#: src/tools/dcpomatic_disk.cc:119
+msgid "Tools"
+msgstr "도구"
+
+#: src/tools/dcpomatic.cc:590
+#, c-format
+msgid "Try removing the %s characters from your folder name."
+msgstr "폴더 이름에서 %s 문자를 제거해 보세요."
+
+#: src/tools/dcpomatic_playlist.cc:340
+msgid "Type"
+msgstr "유형"
+
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
+msgid "Unfinished jobs"
+msgstr "완료되지 않은 작업"
+
+#: src/tools/dcpomatic_disk.cc:118
+msgid "Uninstall..."
+msgstr "제거..."
+
+#: src/tools/dcpomatic_player.cc:860
+#, c-format
+msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
+msgstr "인식할 수 없는 파일 확장자 %s (.jpg, .jpeg 또는 .png를 사용하세요)"
+
+#: src/tools/dcpomatic_playlist.cc:347
+#, fuzzy
+msgid "Up"
+msgstr "위로"
+
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+msgid "Verify"
+msgstr "검증"
+
+#: src/tools/dcpomatic_player.cc:1041
+msgid "Verify DCP"
+msgstr "DCP 검증"
+
+#: src/tools/dcpomatic_player.cc:708
+msgid "Verify DCP..."
+msgstr "DCP 검증..."
+
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr "그림 에셋 세부 사항 검증"
+
+#: src/tools/dcpomatic.cc:1437
+msgid "Version File (VF)..."
+msgstr "버전 파일 (VF)..."
+
+#: src/tools/dcpomatic.cc:1434
+msgid "Video waveform..."
+msgstr "비디오 웨이브폼..."
+
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr "DCP 폴더에 로그 쓰기"
+
+#: src/tools/dcpomatic_kdm.cc:795
+msgid ""
+"You are about to remove a DKDM. This will make it impossible to decrypt the "
+"DCP that the DKDM was made for, and it cannot be undone. Are you sure?"
+msgstr ""
+"DKDM을 제거하려고 합니다. 그러면 해당 DKDM으로 만든 DCP를 해독할 수 없게 되"
+"며, 이 작업은 되돌릴 수 없습니다. 정말 제거하시겠습니까?"
+
+#: src/tools/dcpomatic.cc:990
+#, c-format
+msgid ""
+"You are making a DKDM which is encrypted by a private key held in\n"
+"\n"
+"<tt>%s</tt>\n"
+"\n"
+"It is <span weight=\"bold\" size=\"larger\">VITALLY IMPORTANT</span> that "
+"you <span weight=\"bold\" size=\"larger\">BACK UP THIS FILE</span> since if "
+"it is lost your DKDMs (and the DCPs they protect) will become useless."
+msgstr ""
+"귀하는 <tt>%s</tt>에 보관된 개인 키로 암호화된 DKDM을 생성 중입니다.\n"
+"\n"
+"이 파일을 분실하면 생성한 DKDM(및 보호되는 DCP)을 사용할 수 없게 되므로, 이 "
+"파일을 <span weight=\"bold\" size=\"larger\">반드시 백업</span>하는 것이 매"
+"우 중요합니다."
+
+#: src/tools/dcpomatic.cc:853
+msgid ""
+"You are making an encrypted DCP. It will not be possible to make KDMs for "
+"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
+"film and the metadata files within the DCP.\n"
+"\n"
+"You should ensure that these files are <span weight=\"bold\" "
+"size=\"larger\">BACKED UP</span> if you want to make KDMs for this film."
+msgstr ""
+"암호화된 DCP를 생성 중입니다. 필름 내의 <tt>metadata.xml</tt> 파일과 DCP 내"
+"의 메타데이터 파일 사본이 없으면 이 DCP용 KDM을 만들 수 없습니다.\n"
+"\n"
+"이 필름에 대한 KDM을 만들려면 해당 파일들을 <span weight=\"bold\" "
+"size=\"larger\">반드시 백업</span>해 두어야 합니다."
+
+#: src/tools/dcpomatic.cc:1733
+#, c-format
+msgid ""
+"You are running the 32-bit version of %s on a 64-bit version of Windows. "
+"This will limit the memory available to %s and may cause errors. You are "
+"strongly advised to install the 64-bit version of %s."
+msgstr ""
+"64비트 윈도우에서 32비트 버전 %s을(를) 실행 중입니다. 이는 가용한 메모리를 %s"
+"로 제한하여 오류를 일으킬 수 있습니다. 64비트 버전 %s을(를) 설치할 것을 강력"
+"히 권장합니다."
+
+#: src/tools/dcpomatic_disk.cc:394
+msgid ""
+"You did not correctly confirm that you read the warning that was just "
+"shown. Please try again."
+msgstr ""
+"방금 표시된 경고 내용을 읽었음을 올바르게 확인하지 않았습니다. 다시 시도하세"
+"요."
+
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
+msgid ""
+"You did not select a folder. Make sure that you select a folder before "
+"clicking Open."
+msgstr ""
+"폴더를 선택하지 않았습니다. [열기]를 누르기 전에 폴더를 선택했는지 확인하세"
+"요."
diff --git a/src/tools/po/nl_NL.po b/src/tools/po/nl_NL.po
index 030b7bcf1..560f246e6 100644
--- a/src/tools/po/nl_NL.po
+++ b/src/tools/po/nl_NL.po
@@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: DCP-o-matic\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
-"PO-Revision-Date: 2025-05-09 01:30+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
+"PO-Revision-Date: 2026-03-23 13:10+0100\n"
"Last-Translator: Rob van Nieuwkerk <dcpomatic-translations@berrymount.nl>\n"
"Language-Team: Rob van Nieuwkerk <dcpomatic-translations@berrymount.nl>\n"
"Language: nl_NL\n"
@@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Poedit 3.6\n"
+"X-Generator: Poedit 3.8\n"
#: src/tools/dcpomatic_kdm.cc:491
#, c-format
@@ -28,29 +28,29 @@ msgstr "%d KDM weggeschreven naar %s"
msgid "%d KDMs written to %s"
msgstr "%d KDM's weggeschreven naar %s"
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
msgstr ""
"%s bestaat al als bestand, daarom kunt u het niet gebruiken voor een DCP."
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, c-format
msgid "%s could not start"
msgstr "%s kan niet starten"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, c-format
msgid "%s could not start %s"
msgstr "%s kan %s niet starten"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, c-format
msgid "%s could not start (%s)"
msgstr "%s kan niet starten (%s)"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, c-format
msgid "%s could not start."
msgstr "%s kan niet starten."
@@ -59,125 +59,140 @@ msgstr "%s kan niet starten."
msgid "&Add Film...\tCtrl-A"
msgstr "&Voeg film toe...\tCtrl-A"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr "&Voeg OV toe..."
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "&Sluit"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
msgid "&Close\tCtrl-W"
msgstr "&Sluit\tCtrl-W"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "&Wijzig"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&Stop"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&Bestand"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "&Help"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&Taken"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&Maak DCP\tCtrl-M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&Open...\tCtrl-O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
msgid "&Preferences...\tCtrl-,"
msgstr "&Voorkeuren...\tCtrl-,"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&Voorkeuren...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&Stop"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&Bewaar\tCtrl-S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
msgid "&Save frame to file...\tCtrl-S"
msgstr "&Bewaar frame in bestand...\tCtrl-S"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "&Verzend DCP naar TMS"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "&Tools"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "&Toon"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr "(versleuteld, met KDM)"
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr "(versleuteld, zonder KDM)"
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr "<b>Afspeellijst:</b>"
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr "<b>Afspeellijsten</b>"
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "Over"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, c-format
msgid "About %s"
msgstr "Over %s"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
msgid "Add"
msgstr "Voeg toe"
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
msgid "Add &KDM..."
msgstr "Voeg &KDM toe..."
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+msgid "Add KDM..."
+msgstr "Voeg KDM toe..."
+
+#: src/tools/dcpomatic_playlist.cc:80
msgid "Add content"
msgstr "Voeg content toe"
@@ -197,8 +212,8 @@ msgstr "Voeg map toe..."
msgid "Add..."
msgstr "Voeg toe..."
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, c-format
msgid ""
"An exception occurred: %s\n"
@@ -209,10 +224,10 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -223,7 +238,7 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -234,8 +249,8 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -246,30 +261,30 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, c-format
msgid "An unknown error has occurred with the %s."
msgstr "Er is een onbekende fout opgetreden bij de %s."
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "Er is een onbekende uitzondering opgetreden."
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, c-format
msgid "An unknown exception occurred. %s"
msgstr "Er is een onbekende uitzondering opgetreden. %s"
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr "Annotation text"
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
@@ -277,34 +292,46 @@ msgstr ""
"Weet u zeker dat u de voorkeuren naar hun standaardwaarden wilt herstellen? "
"Dit kan niet ongedaan worden gemaakt."
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr "Audio-grafiek..."
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr "Verkeerde instelling voor %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr "CPL"
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "De inhoud van de CPL is niet versleuteld."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr "CPL: %s"
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr "Annuleer"
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "Controleer op updates"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr "Controleren KDM"
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr "Kies een DCP-map"
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, c-format
msgid "Close %s"
msgstr "Sluit %s"
@@ -313,35 +340,35 @@ msgstr "Sluit %s"
msgid "Close without saving film"
msgstr "Sluit zonder film te bewaren"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr "Closed captions..."
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr "Combineer"
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr "Combineren DCP's"
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr "Content title text"
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr "Kopieer DCP's"
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "Kopieer instellingen\tCtrl-C"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr "Kan map voor bewaren film niet aanmaken."
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
@@ -349,15 +376,15 @@ msgstr ""
"Kan de DKDM niet ontsleutelen. Misschien is deze niet met het juiste "
"certificaat aangemaakt."
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
msgid "Could not duplicate project."
msgstr "Kan project niet dupliceren."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "Kan Batch Converter niet vinden."
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
msgid "Could not find player."
msgstr "Kan Player niet vinden."
@@ -370,21 +397,21 @@ msgstr ""
"Kan niet luisteren naar nieuwe batch-taken. Misschien draait er al een "
"andere instantie van de %s."
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
msgid "Could not load DCP"
msgstr "Kan DCP niet laden"
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, c-format
msgid "Could not load DCP %s"
msgstr "Kan DCP %s niet laden"
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, c-format
msgid "Could not load DCP %s."
msgstr "Kan DCP %s niet laden."
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, c-format
msgid ""
"Could not load DCP.\n"
@@ -395,40 +422,42 @@ msgstr ""
"\n"
"%s."
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "Kan KDM niet laden."
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr "Kan DCP niet laden van %s"
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
-msgstr "Kan film %1 niet laden"
+#, c++-format
+msgid "Could not load film {}"
+msgstr "Kan film {} niet laden"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "Kan film %1 niet laden (%2)"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "Kan film {} niet laden ({})"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, c-format
msgid "Could not load stress test file %s"
msgstr "Kan stresstest-bestand %s niet laden"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr "Kan DCP niet maken."
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, c-format
msgid "Could not open film at %s"
msgstr "Kan film niet openen op %s"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, c-format
msgid "Could not open this folder as a %s project."
msgstr "Kan deze map niet als %s project openen."
@@ -441,7 +470,7 @@ msgstr ""
"Kan het bestand niet als een KDM lezen. Het is veel te groot. Zorg ervoor "
"dat u een DKDM (XML) bestand laadt."
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
@@ -449,23 +478,23 @@ msgstr ""
"Kan het bestand niet als een KDM lezen. Misschien is het slecht "
"geformatteerd, of helemaal geen KDM."
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr "Kan bestaand voorkeurenbestand niet verwijderen"
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
msgid "Could not save project."
msgstr "Kan project niet bewaren."
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
msgid "Could not save template."
msgstr "Kan template niet bewaren."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "Kan DCP niet tonen."
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
@@ -473,15 +502,15 @@ msgstr ""
"Kan de Batch Converter niet starten. Mogelijk moet u hem downloaden van "
"dcpomatic.com."
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
"Kan de Player niet starten. Mogelijk moet u hem downloaden van dcpomatic."
"com."
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
@@ -489,7 +518,7 @@ msgstr ""
"Kan niet naar config-bestand schrijven op %s. Uw wijzigingen zijn niet "
"bewaard."
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
msgid "Could not write to config file. Your changes have not been saved."
msgstr ""
"Kan niet naar config-bestand schrijven. Uw wijzigingen zijn niet bewaard."
@@ -498,23 +527,27 @@ msgstr ""
msgid "Create KDMs"
msgstr "Maak KDM's"
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr "Creator"
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr "Bijsnijding"
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
msgid "DCP"
msgstr "DCP"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
msgstr "DCP-o-matic Encode Server"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr "DCP's"
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr "DCP's met succes gecombineerd."
@@ -528,23 +561,23 @@ msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr ""
"DKDM %s staat al in de DKDM-lijst en zal niet opnieuw worden toegevoegd."
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr "Decodeer op volledige resolutie"
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr "Decodeer op halve resolutie"
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr "Decodeer op kwart resolutie"
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr "Verwijder"
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
@@ -553,16 +586,16 @@ msgstr ""
"Heeft u de %s Disk Writer.pkg geïnstalleerd vanuit de .dmg? Controleer a.u."
"b. en probeer het opnieuw."
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Disk Writer"
msgstr "Disk Writer"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr "Doe niets"
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
@@ -570,7 +603,7 @@ msgstr ""
"Ziet u een dialoogvenster 'Gebruikersaccountbeheer' waarin wordt gevraagd "
"naar dcpomatic2_disk_writer.exe? Klik dan op 'Ja' en probeer het opnieuw."
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr "Wilt u de bestaande DCP %s overschrijven?"
@@ -583,23 +616,23 @@ msgstr "Sluit niet"
msgid "Don't duplicate"
msgstr "Dupliceer niet"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr "Omlaag"
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr "Schijf"
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr "Dubbel scherm\tShift+F11"
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "Dupliceer Film"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "Dupliceer en open..."
@@ -607,39 +640,47 @@ msgstr "Dupliceer en open..."
msgid "Duplicate without saving film"
msgstr "Dupliceer zonder film te bewaren"
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "Dupliceer..."
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr "Duration"
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr "Wijzig reel"
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+msgid "Edit..."
+msgstr "Wijzig..."
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "Encodeer-servers..."
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr "Versleuteld"
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr "Entry point"
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+msgid "Examining DCPs"
+msgstr "Onderzoeken DCP's"
+
+#: src/tools/dcpomatic.cc:1446
msgid "Export preferences..."
msgstr "Exporteer voorkeuren..."
-#: src/tools/dcpomatic.cc:1403
-msgid "Export subtitles..."
-msgstr "Exporteer ondertitels..."
+#: src/tools/dcpomatic.cc:1418
+msgid "Export subtitles...\tShift-Ctrl-E"
+msgstr "Exporteer ondertitels...\tShift-Ctrl-E"
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
msgid "Export video file...\tCtrl-E"
msgstr "Exporteer video-bestand...\tCtrl-E"
@@ -647,11 +688,11 @@ msgstr "Exporteer video-bestand...\tCtrl-E"
msgid "Export..."
msgstr "Exporteer..."
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr "Oog"
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "Bestand %s bestaat al. Wilt u het overschrijven?"
@@ -662,7 +703,7 @@ msgstr "Bestand %s bestaat al. Wilt u het overschrijven?"
msgid "Film changed"
msgstr "Film is gewijzigd"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr "Zoeken naar schijven"
@@ -671,35 +712,35 @@ msgstr "Zoeken naar schijven"
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "Map %s bestaat al. Wilt u deze overschrijven?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "Frames per seconde"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr "Volledig scherm\tF11"
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "Hints..."
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
msgid "Import preferences..."
msgstr "Importeer voorkeuren..."
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr "Input-DCP"
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr "Intrinsic duration"
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr "Issuer"
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -716,68 +757,68 @@ msgstr ""
msgid "KDM|Timing"
msgstr "Tijdvenster"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr "Links"
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr "Lengte"
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
msgid "Loading content"
msgstr "Laden content"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
msgid "Make &DKDMs...\tCtrl-D"
msgstr "Maak &DKDM's...\tCtrl-D"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "Maak &KDM's...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "Maak DCP in Batch Converter\tCtrl-B"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, c-format
msgid "Make DKDM for %s..."
msgstr "Maak DKDM voor %s..."
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr "Beheer templates..."
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr "Naam"
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr "Nieuw"
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "Nieuwe Film"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr "Nieuwe Afspeellijst"
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Nieuw...\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
msgstr ""
"Geen ASSETMAP of ASSETMAP.xml gevonden in deze map. Kies a.u.b. een DCP-map."
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
@@ -785,11 +826,11 @@ msgstr ""
"Er is geen afspeellijst-map gespecificeerd bij Voorkeuren. Stel a.u.b. in "
"en probeer het opnieuw."
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr "Open DCP in &Player"
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr "Open een DCP met \"Bestand -> Open\""
@@ -797,16 +838,16 @@ msgstr "Open een DCP met \"Bestand -> Open\""
msgid "Output"
msgstr "Output"
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr "Output DCP-map"
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr "PKL: %s"
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "Plak instellingen...\tCtrl-V"
@@ -818,11 +859,11 @@ msgstr "Pauzeer of hervat de conversie"
msgid "Pause/resume"
msgstr "Pauzeer/hervat"
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
-msgstr "Beeld"
+msgstr "Video"
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
@@ -831,73 +872,73 @@ msgstr ""
"Controleer a.u.b. of u geen door Windows gecontroleerde maptoegang heeft "
"ingeschakeld voor %s."
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr "N"
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr "J"
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
msgid "Quit"
msgstr "Stop"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr "Maak KDM-ontsleutelings-keten opnieuw"
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr "Maak ondertekenings-certificaten opnieuw"
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr "Reels"
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr "Vernieuwen"
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr "Release notes"
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "Verwijder"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "Meld een probleem..."
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Herstel standaardvoorkeuren"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr "Rechts"
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
msgid "S&how DCP in Explorer"
msgstr "Toon DCP in Verkenner"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
msgid "S&how DCP in Files"
msgstr "Toon DCP in Bestanden"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
msgid "S&how DCP in Finder"
msgstr "Toon DCP in Finder"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
msgid "Save"
msgstr "Bewaar"
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr "Bewaar als &template..."
@@ -919,7 +960,7 @@ msgstr "Bewaar film en sluit"
msgid "Save film and duplicate"
msgstr "Bewaar film en dupliceer"
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr "Bewaar frame in bestand"
@@ -927,14 +968,18 @@ msgstr "Bewaar frame in bestand"
msgid "Screens"
msgstr "Schermen"
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr "Selecteer DCP om te openen"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr "Selecteer DCP om te openen als OV"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+msgid "Select DCP(s)"
+msgstr "Selecteer DCP('s)"
+
#: src/tools/dcpomatic_kdm.cc:821
msgid "Select DKDM File"
msgstr "Selecteer DKDM-bestand"
@@ -943,15 +988,15 @@ msgstr "Selecteer DKDM-bestand"
msgid "Select DKDM file"
msgstr "Selecteer DKDM-bestand"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr "Selecteer KDM"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr "Selecteer alles\tShift-Ctrl-A"
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "Kies film om te openen"
@@ -959,36 +1004,36 @@ msgstr "Kies film om te openen"
msgid "Send KDM emails"
msgstr "Verzend KDM e-mails"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr "Pas decodeer-resolutie aan aan weergave"
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
-msgstr "Geluid"
+msgstr "Audio"
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr "Specificeer ZIP-bestand"
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr "Status..."
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr "Ondertitel"
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr "Systeeminformatie..."
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, c-format
msgid "The %s download server could not be contacted."
msgstr "Kan geen verbinding maken met de %s download-server."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -1008,7 +1053,7 @@ msgstr ""
"ongeveer %.1f GB in beslag nemen. De opslag die u gebruikt, heeft maar %.1f "
"GB beschikbaar. Wilt u deze film toch aan de wachtrij toevoegen?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr "De KDM staat afspelen niet toe op dit moment."
@@ -1031,11 +1076,11 @@ msgstr ""
"De KDM-starttijd is voor (of nabij) het begin van de geldigheidsduur van het "
"ondertekenings-certificaat. Gebruik een latere starttijd voor deze KDM."
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr "De certificaat-keten voor ondertekening is ongeldig"
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1054,7 +1099,7 @@ msgstr ""
"hier \"Nee\" kiezen en eerst een back-up van uw configuratie maken voordat u "
"doorgaat."
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1070,7 +1115,7 @@ msgstr ""
"Wilt u de certificaat-keten voor het ondertekenen van DCP's en KDM's opnieuw "
"aanmaken?"
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1089,7 +1134,7 @@ msgstr ""
"Wilt u de certificaat-keten voor het ondertekenen van DCP's en KDM's opnieuw "
"aanmaken?"
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1105,7 +1150,7 @@ msgstr ""
"Wilt u de certificaat-keten voor het ondertekenen van DCP's en KDM's opnieuw "
"aanmaken?"
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1121,18 +1166,19 @@ msgstr ""
"Wilt u de certificaat-keten voor het ondertekenen van DCP's en KDM's opnieuw "
"aanmaken?"
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
-msgstr "De map %1 bestaat al en is niet leeg. Wilt u deze toch gebruiken?"
+msgstr "De map {} bestaat al en is niet leeg. Wilt u deze toch gebruiken?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr ""
"De geselecteerde schijf is niet meer beschikbaar. Kies a.u.b. een andere."
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
@@ -1141,7 +1187,7 @@ msgstr ""
"De schijf %s kon niet worden ontkoppeld.\n"
"Sluit alle toepassingen die er gebruik van maken en probeer het opnieuw. (%s)"
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
@@ -1149,17 +1195,17 @@ msgstr ""
"De bestaande configuratie kan niet geladen worden. In plaats daarvan zullen "
"standaardwaarden gebruikt worden. Het aanmaken hiervan kan even duren."
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, c-format
msgid "There are no new versions of %s available."
msgstr "Er zijn geen nieuwere versies van %s beschikbaar."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr "Er zijn nog onvoltooide taken; weet u zeker dat u wilt stoppen?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1168,7 +1214,7 @@ msgstr ""
"mogelijk niet goed in deze versie. Controleer a.u.b. de instellingen van de "
"film zorgvuldig."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1178,57 +1224,82 @@ msgstr ""
"Dit ziet eruit als een %s projectmap, die niet in de player kan worden "
"geladen. Kies de DCP-map in de %s projectmap als u die wilt afspelen."
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+"Vink dit aan om de details van de picture asset te controleren, zoals frame-"
+"groottes en de geldigheid van de JPEG2000-bitstream. Deze controles zijn "
+"vrij tijdrovend."
+
+#: src/tools/dcpomatic_player.cc:712
msgid "Timing..."
msgstr "Timing..."
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
msgid "Tools"
msgstr "Tools"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr "Probeer de %s tekens uit uw mapnaam te verwijderen."
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr "Type"
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Onvoltooide taken"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr "Verwijderen..."
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr "Niet-herkende bestands-extensie %s (gebruik .jpg, .jpeg of .png)"
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr "Omhoog"
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr "Gebruikershandleiding..."
+
+#: src/tools/dcpomatic_verifier.cc:201
+msgid "Verify"
+msgstr "Controleer"
+
+#: src/tools/dcpomatic_player.cc:1041
msgid "Verify DCP"
msgstr "Controleer DCP"
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
msgid "Verify DCP..."
msgstr "Controleer DCP..."
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr "Controleer picture asset details"
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr "Version File (VF)..."
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Video-golfvorm..."
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr "Schrijf logs naar DCP-mappen"
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
@@ -1238,7 +1309,7 @@ msgstr ""
"DCP waarvoor de DKDM is gemaakt te ontsleutelen en het kan niet ongedaan "
"worden gemaakt. Weet u het zeker?"
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1258,7 +1329,7 @@ msgstr ""
"span> omdat verlies ervan uw DKDM's (en de DCP's die ze beschermen) "
"nutteloos maakt."
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1275,7 +1346,7 @@ msgstr ""
"size=\"larger\">BACK-UPS GEMAAKT ZIJN</span> als u KDM's voor deze film wilt "
"maken."
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1286,7 +1357,7 @@ msgstr ""
"beperkt het beschikbare geheugen voor %s en kan fouten veroorzaken. U wordt "
"sterk aangeraden om de 64-bits versie van %s te installeren."
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
@@ -1294,9 +1365,9 @@ msgstr ""
"U heeft niet correct bevestigd dat u de waarschuwing heeft gelezen die "
"zojuist is weergegeven. Probeer het a.u.b. opnieuw."
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
@@ -1304,6 +1375,9 @@ msgstr ""
"U heeft geen map geselecteerd. Zorg ervoor dat er een map geselecteerd is "
"voordat u op Open klikt."
+#~ msgid "Choose a folder"
+#~ msgstr "Kies een map"
+
#~ msgid ""
#~ "The player is dropping a lot of frames, so playback may not be accurate.\n"
#~ "\n"
diff --git a/src/tools/po/pl_PL.po b/src/tools/po/pl_PL.po
index 5574f58ba..9da0adb99 100644
--- a/src/tools/po/pl_PL.po
+++ b/src/tools/po/pl_PL.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
"PO-Revision-Date: 2022-05-10 15:42+0200\n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -29,28 +29,28 @@ msgstr "%d KDM zapisany do %s"
msgid "%d KDMs written to %s"
msgstr "%d KDMy zapisane do %s"
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, fuzzy, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
-msgstr "%1 już istnieje jako plik, więc nie możesz go użyć w Nowy Film."
+msgstr "{} już istnieje jako plik, więc nie możesz go użyć w Nowy Film."
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, fuzzy, c-format
msgid "%s could not start"
msgstr "DCP-o-matic nie mógł się uruchomić"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, fuzzy, c-format
msgid "%s could not start %s"
msgstr "DCP-o-matic nie mógł się uruchomić"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, fuzzy, c-format
msgid "%s could not start (%s)"
msgstr "DCP-o-matic nie mógł się uruchomić"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, fuzzy, c-format
msgid "%s could not start."
msgstr "DCP-o-matic nie mógł się uruchomić"
@@ -59,127 +59,143 @@ msgstr "DCP-o-matic nie mógł się uruchomić"
msgid "&Add Film...\tCtrl-A"
msgstr "&Dodaj Film...\tCtrl-A"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr "&Dodaj OV..."
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "&Zamknij"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
msgid "&Close\tCtrl-W"
msgstr "&Zamknij\tCtrl-W"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "&Edycja"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&Wyjdź"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&Plik"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "&Pomoc"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&Zadania"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&Stwórz DCP\tCtrl-M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&Otwórz...\tCtrl-O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
#, fuzzy
msgid "&Preferences...\tCtrl-,"
msgstr "&Preferencje...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&Preferencje...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&Zakończ"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&Zapisz\tCtrl-S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
#, fuzzy
msgid "&Save frame to file...\tCtrl-S"
msgstr "Eksportuj plik wideo...\tCtrl-E"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "&Wyślij DCP do TMS"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "&Narzędzia"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "&Zbadaj"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr "<b>Lista odtwarzania:<b>"
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr "<b>Listy odtwarzania</b>"
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "Informacje"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, fuzzy, c-format
msgid "About %s"
msgstr "Informacje"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
msgid "Add"
msgstr "Dodaj"
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
msgid "Add &KDM..."
msgstr "Dodaj &KDM..."
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "Dodaj &KDM..."
+
+#: src/tools/dcpomatic_playlist.cc:80
msgid "Add content"
msgstr "Dodaj materiał"
@@ -200,8 +216,8 @@ msgstr "Dodaj folder..."
msgid "Add..."
msgstr "Dodaj..."
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, fuzzy, c-format
msgid ""
"An exception occurred: %s\n"
@@ -211,10 +227,10 @@ msgstr ""
"Wystąpił błąd: %s.\n"
"\n"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -224,7 +240,7 @@ msgstr ""
"Wystąpił błąd: %s (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -234,8 +250,8 @@ msgstr ""
"Wystąpił błąd: %s (%s) (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, fuzzy, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -245,64 +261,76 @@ msgstr ""
"Wystąpił błąd: %s.\n"
"\n"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, fuzzy, c-format
msgid "An unknown error has occurred with the %s."
msgstr "Wystąpił nieznany błąd serwera DCP-o-matic."
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "Wystąpił nieznany wyjątek."
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, fuzzy, c-format
msgid "An unknown exception occurred. %s"
msgstr "Wystąpił nieznany wyjątek."
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr ""
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
msgstr ""
"Czy na pewno chcesz przywrócić domyślne ustawienia? Nie da się tego cofnąć."
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr "Nieprawidłowe ustawienia dla %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr "CPL"
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "Zawartość CPL nie jest zaszyfrowana."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "Uaktualnij program"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr ""
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, fuzzy, c-format
msgid "Close %s"
msgstr "&Zamknij"
@@ -311,35 +339,35 @@ msgstr "&Zamknij"
msgid "Close without saving film"
msgstr "Zamknij bez zapisywania"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr "Napisy kodowane..."
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr ""
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "Skopiuj ustawienia\tCtrl-C"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr "Błąd przy tworzeniu folderu dla Projektu."
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
@@ -347,16 +375,16 @@ msgstr ""
"Nie udało się odszyfrować klucza DKDM. Może nie został utworzony z poprawnym "
"certyfikatem."
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
#, fuzzy
msgid "Could not duplicate project."
msgstr "Nie odnaleziono odtwarzacza."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "Nie odnaleziono narzędzia wielokrotnej konwersji."
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
msgid "Could not find player."
msgstr "Nie odnaleziono odtwarzacza."
@@ -367,22 +395,22 @@ msgid ""
"running."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
#, fuzzy
msgid "Could not load DCP"
msgstr "Nie udało się stworzyć DCP: %s."
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, fuzzy, c-format
msgid "Could not load DCP %s"
-msgstr "Nie można załadować DCP %1."
+msgstr "Nie można załadować DCP {}."
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, fuzzy, c-format
msgid "Could not load DCP %s."
-msgstr "Nie można załadować DCP %1."
+msgstr "Nie można załadować DCP {}."
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, c-format
msgid ""
"Could not load DCP.\n"
@@ -393,40 +421,42 @@ msgstr ""
"\n"
"%s."
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "Nie udało się wczytać KDM."
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr "Nie można załadować DCP z %s"
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
-msgstr "Nie można załadować Projektu %1"
+#, c++-format
+msgid "Could not load film {}"
+msgstr "Nie można załadować Projektu {}"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "Nie można załadować Projektu %1 (%2)"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "Nie można załadować Projektu {} ({})"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, fuzzy, c-format
msgid "Could not load stress test file %s"
-msgstr "Nie można załadować Projektu %1"
+msgstr "Nie można załadować Projektu {}"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr "Nie udało się stworzyć DCP."
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, c-format
msgid "Could not open film at %s"
msgstr "Nie można otworzyć filmu w %s"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, fuzzy, c-format
msgid "Could not open this folder as a %s project."
msgstr "Nie można otworzyć tego folderu jako Projekt DCP-o-matic."
@@ -439,7 +469,7 @@ msgstr ""
"Nie udało się załadować pliku jako KDM. Ma zbyt duży rozmiar. Upewnij się, "
"że wczytujesz plik DKDM (XML)."
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
@@ -447,25 +477,25 @@ msgstr ""
"Nie udało się załadować pliku jako KDM. Być może jest źle sformatowany lub w "
"ogóle nie jest to KDM."
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr ""
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
#, fuzzy
msgid "Could not save project."
msgstr "Nie udało się stworzyć DCP."
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
#, fuzzy
msgid "Could not save template."
msgstr "Nie odnaleziono odtwarzacza."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "Nie można wyświetlić DCP."
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
@@ -473,21 +503,21 @@ msgstr ""
"Nie można uruchomić narzędzia wielokrotnej konwersji. Może musisz je pobrać "
"ze strony dcpomatic.com."
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
"Nie można uruchomić odtwarzacza. Może musisz go pobrać ze strony "
"dcpomatic.com."
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
msgstr "Nie udało się zapisać pliku konfiguracyjnego w %s. Nie zapisano zmian."
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
msgid "Could not write to config file. Your changes have not been saved."
msgstr "Nie udało się zapisać pliku konfiguracyjnego. Nie zapisano zmian."
@@ -495,24 +525,28 @@ msgstr "Nie udało się zapisać pliku konfiguracyjnego. Nie zapisano zmian."
msgid "Create KDMs"
msgstr "Stwórz KDMy"
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
#, fuzzy
msgid "DCP"
msgstr "CPL"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
msgstr "Serwer kodujący DCP-o-matic"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr ""
@@ -525,46 +559,46 @@ msgstr "DKDM"
msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr ""
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr "Dekoduj obraz w pełnej rozdzielczości"
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr "Dekoduj obraz w 1/2 bazowej rozdzielczości"
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr "Dekoduj obraz w 1/4 bazowej rozdzielczości"
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr "Usuń"
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
"again."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
#, fuzzy
msgid "Disk Writer"
msgstr "Kreator KDM DCP-o-matic"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr "Nic nie rób"
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
msgstr ""
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr "Czy chcesz nadpisać istniejące DCP %s?"
@@ -577,23 +611,23 @@ msgstr "Nie zamykaj"
msgid "Don't duplicate"
msgstr "Nie powielaj"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr "Dół"
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr ""
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr "Dwa ekrany\tShift+F11"
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "Powiel Projekt"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "Powiel i otwórz..."
@@ -601,40 +635,50 @@ msgstr "Powiel i otwórz..."
msgid "Duplicate without saving film"
msgstr "Powiel bez zapisywania Projektu"
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "Powiel..."
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+#, fuzzy
+msgid "Edit..."
+msgstr "&Edycja"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "Serwery kodujące..."
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr "Zaszyfrowany"
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr ""
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+msgid "Examining DCPs"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1446
#, fuzzy
msgid "Export preferences..."
msgstr "Przywróć ustawienia domyślne"
-#: src/tools/dcpomatic.cc:1403
-msgid "Export subtitles..."
+#: src/tools/dcpomatic.cc:1418
+#, fuzzy
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "Eksportuj napisy..."
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
msgid "Export video file...\tCtrl-E"
msgstr "Eksportuj plik wideo...\tCtrl-E"
@@ -642,11 +686,11 @@ msgstr "Eksportuj plik wideo...\tCtrl-E"
msgid "Export..."
msgstr "Eksportuj..."
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr ""
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "Plik %s już istnieje. Czy jesteś pewien, że chcesz go nadpisać?"
@@ -657,7 +701,7 @@ msgstr "Plik %s już istnieje. Czy jesteś pewien, że chcesz go nadpisać?"
msgid "Film changed"
msgstr "Projekt został zmodyfikowany"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr ""
@@ -666,36 +710,36 @@ msgstr ""
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "Plik %s już istnieje. Czy jesteś pewien, że chcesz go nadpisać?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "Klatki na sekundę"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr "Pełen ekran\tF11"
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "Wskazówki...."
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
#, fuzzy
msgid "Import preferences..."
msgstr "Przywróć ustawienia domyślne"
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr ""
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, fuzzy, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -712,67 +756,67 @@ msgstr ""
msgid "KDM|Timing"
msgstr "KDM|Ustawienia czasu"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr "Długość"
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
msgid "Loading content"
msgstr "Wczytuję materiał"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
msgid "Make &DKDMs...\tCtrl-D"
msgstr "Stwórz &DKDMy...\tCtrl-D"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "Stwórz &KDMy...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "Stwórz DCP w &narzędziu wielokrotnej konwersji\tCtrl-B"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, fuzzy, c-format
msgid "Make DKDM for %s..."
msgstr "Stwórz DKDM dla DCP-o-matic..."
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr "Zarządzaj szablonami..."
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr "Nazwa"
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr "Nowy"
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "Nowy Projekt"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr "Nowa lista odtwarzania"
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Nowy...\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
@@ -780,11 +824,11 @@ msgstr ""
"W Preferencjach nie wybrano folderu z listą odtwarzania. Ustaw go i spróbuj "
"ponownie."
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr "Otwórz DCP w &Odtwarzaczu"
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr ""
@@ -792,16 +836,16 @@ msgstr ""
msgid "Output"
msgstr "Wyjście"
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "Wklej ustawienia...\tCtrl-V"
@@ -813,11 +857,11 @@ msgstr ""
msgid "Pause/resume"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr ""
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, fuzzy, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
@@ -826,74 +870,74 @@ msgstr ""
"Sprawdź, czy DCP-o-matic ma dostęp do folderów kontrolowanych w ustawieniach "
"Windows. Powinien być odznaczony."
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr "Pytanie|N"
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr "Pytanie|T"
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
#, fuzzy
msgid "Quit"
msgstr "&Zakończ"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr "Odtwórz łańcuch odszyfrowujący KDM"
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr "Odtwórz certyfikaty"
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr ""
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "Usuń"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "Zgłoś błąd..."
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Przywróć ustawienia domyślne"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr ""
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
msgid "S&how DCP in Explorer"
msgstr "P&okaż DCP w Eksploratorze plików"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
msgid "S&how DCP in Files"
msgstr "P&okaż DCP w menadżerze plików"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
msgid "S&how DCP in Finder"
msgstr "P%okaż DCP w Finderze"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
msgid "Save"
msgstr ""
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr "Zapisz jako &szablon..."
@@ -915,7 +959,7 @@ msgstr "Zapisz i zamknij Projekt"
msgid "Save film and duplicate"
msgstr "Zapisz i powiel Projekt"
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr ""
@@ -923,14 +967,19 @@ msgstr ""
msgid "Screens"
msgstr "Obrazy"
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr "Wybierz folder DCP"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr "Wybierz folder DCP jako OV"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "Wybierz KDM"
+
#: src/tools/dcpomatic_kdm.cc:821
msgid "Select DKDM File"
msgstr "Wybierz DKDM"
@@ -939,15 +988,15 @@ msgstr "Wybierz DKDM"
msgid "Select DKDM file"
msgstr "Wybierz DKDM"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr "Wybierz KDM"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr "Zaznacz wszystko\tShift-Ctrl-A"
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "Wybierz Projekt"
@@ -955,43 +1004,43 @@ msgstr "Wybierz Projekt"
msgid "Send KDM emails"
msgstr "Wyślij emaile z KDM"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr "Dopasuj rozdzielczość obrazu do rozdzielczości ekranu"
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr ""
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr ""
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr ""
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr "Informacje o systemie..."
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, fuzzy, c-format
msgid "The %s download server could not be contacted."
msgstr "Połączenie z serwerem DCP-o-matic nieudane."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
"using only has %.1f GB available. Do you want to continue anyway?"
msgstr ""
-"DCP dla tego Projektu zajmie około %1f GB, a na twoim dysku zostało już "
-"tylko %1f GB. Czy chcesz kontynuować?"
+"DCP dla tego Projektu zajmie około %.1f GB, a na twoim dysku zostało już "
+"tylko %.1f GB. Czy chcesz kontynuować?"
#: src/tools/dcpomatic_batch.cc:248
#, c-format
@@ -1000,11 +1049,11 @@ msgid ""
"%.1f GB. The disks that you are using only have %.1f GB available. Do you "
"want to add this film to the queue anyway?"
msgstr ""
-"Paczki DCP dla tego Projektu i innych Projektów w kolejce zajmą około %1f "
-"GB. Twoje dyski mają dostępne jedynie %1f GB wolnego miejsca. Czy chcesz "
+"Paczki DCP dla tego Projektu i innych Projektów w kolejce zajmą około %.1f "
+"GB. Twoje dyski mają dostępne jedynie %.1f GB wolnego miejsca. Czy chcesz "
"dodać ten Projekt do kolejki?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr "Klucz KDM nie pozwala na odtworzenie materiału w tym czasie."
@@ -1022,11 +1071,11 @@ msgid ""
"certificate's validity period. Use a later start time for this KDM."
msgstr ""
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr ""
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1044,7 +1093,7 @@ msgstr ""
"zapisać\n"
"swoje ustawienia przed kontynuacją."
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1059,7 +1108,7 @@ msgstr ""
"serwerach. Czy chcesz odtworzyć\n"
"łańcuch certyfikatu do podpisywania paczek DCP i kluczy KDM?"
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1076,7 +1125,7 @@ msgstr ""
"serwerach. Czy chcesz odtworzyć\n"
"łańcuch certyfikatu do podpisywania paczek DCP i kluczy KDM?"
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1091,7 +1140,7 @@ msgstr ""
"serwerach. Czy chcesz odtworzyć\n"
"łańcuch certyfikatu do podpisywania paczek DCP i kluczy KDM?"
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1106,26 +1155,27 @@ msgstr ""
"odtworzysz łańcuch. Czy chcesz odtworzyć\n"
"łańcuch certyfikatu do podpisywania paczek DCP i kluczy KDM?"
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
msgstr ""
-"Katalog %1 już istnieje i nie jest pusty. Czy jesteś pewien, że chcesz go "
+"Katalog {} już istnieje i nie jest pusty. Czy jesteś pewien, że chcesz go "
"użyć?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
"Close any application that is using it, then try again. (%s)"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
@@ -1133,19 +1183,19 @@ msgstr ""
"Nie udało się załadować pliku konfiguracji. Użyte zostaną wartości domyślne. "
"Aktualizacja ustawień może zająć chwilę."
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, fuzzy, c-format
msgid "There are no new versions of %s available."
msgstr "Używasz najnowszej wersji DCP-o-matic."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr ""
"Niektóre zadania jeszcze się nie ukończyły. Czy na pewno chcesz zamknąć "
"program?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1153,7 +1203,7 @@ msgstr ""
"Ten Projekt został stworzony przy użyciu starej wersji DVD-o-matic i może "
"nie zaimportować się poprawnie. Sprawdź dokładnie ustawienia Projektu."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, fuzzy, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1164,59 +1214,82 @@ msgstr ""
"do odtwarzacza. Wybierz folder DCP wewnątrz folderu Projektu, który chcesz "
"odtworzyć."
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:712
msgid "Timing..."
msgstr "Timing..."
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
#, fuzzy
msgid "Tools"
msgstr "&Narzędzia"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr "Spróbuj usunąć %s znaki z nazwy folderu."
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr "Typ"
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Nieukończone zadania"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr ""
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr "Góra"
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+#, fuzzy
+msgid "Verify"
+msgstr "Zweryfikuj DCP..."
+
+#: src/tools/dcpomatic_player.cc:1041
#, fuzzy
msgid "Verify DCP"
msgstr "Zweryfikuj DCP..."
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
msgid "Verify DCP..."
msgstr "Zweryfikuj DCP..."
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr ""
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Analiza pliku video..."
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr ""
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
@@ -1226,7 +1299,7 @@ msgstr ""
"zawierającej tej klucz i tej operacji nie można odwrócić. Czy chcesz "
"kontynuować?"
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1246,7 +1319,7 @@ msgstr ""
"span> bo jeśli go stracisz, twoje klucze DKDM (i paczki DCP nimi "
"zaszyfrowane) staną się bezużyteczne."
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1261,7 +1334,7 @@ msgstr ""
"Upewnij się, że posiadasz <span weight=\"bold\" size=\"larger\">KOPIĘ "
"ZAPASOWĄ</span> tych plików, jeśli chcesz tworzyć KDMy dla tego filmu."
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, fuzzy, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1273,15 +1346,15 @@ msgstr ""
"błędy. Zaleca się, żebyś zainstalował i korzystał z wersji 64-bitowej DCP-o-"
"matic."
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
diff --git a/src/tools/po/pt_BR.po b/src/tools/po/pt_BR.po
index 2b9f76223..58c7506fc 100644
--- a/src/tools/po/pt_BR.po
+++ b/src/tools/po/pt_BR.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
"PO-Revision-Date: 2018-01-15 16:42-0200\n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -27,28 +27,28 @@ msgstr "%d KDM salvo em %s"
msgid "%d KDMs written to %s"
msgstr "%d KDMs salvos em %s"
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, fuzzy, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
-msgstr "%1 é um arquivo já existente, você não pode usá-lo para um novo filme."
+msgstr "{} é um arquivo já existente, você não pode usá-lo para um novo filme."
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, fuzzy, c-format
msgid "%s could not start"
msgstr "DCP-o-matic não pôde iniciar"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, fuzzy, c-format
msgid "%s could not start %s"
msgstr "DCP-o-matic não pôde iniciar"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, fuzzy, c-format
msgid "%s could not start (%s)"
msgstr "DCP-o-matic não pôde iniciar"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, fuzzy, c-format
msgid "%s could not start."
msgstr "DCP-o-matic não pôde iniciar"
@@ -57,130 +57,146 @@ msgstr "DCP-o-matic não pôde iniciar"
msgid "&Add Film...\tCtrl-A"
msgstr "&Adicionar Filme...\tCtrl-A"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr "Adicionar OV..."
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "&Fechar"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
#, fuzzy
msgid "&Close\tCtrl-W"
msgstr "&Salvar\tCtrl-S"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "&Editar"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&Sair"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&Arquivo"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "&Ajuda"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&Tarefas"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&Fazer DCP\tCtrl-M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&Abrir...\tCtrl+O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
#, fuzzy
msgid "&Preferences...\tCtrl-,"
msgstr "&Preferências...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&Preferências...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&Sair"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&Salvar\tCtrl-S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
#, fuzzy
msgid "&Save frame to file...\tCtrl-S"
msgstr "Exportar...\tCtrl-E"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "&Enviar DCP para TMS"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "&Ferramentas"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "&Visualizar"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "Sobre"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, fuzzy, c-format
msgid "About %s"
msgstr "Sobre"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
#, fuzzy
msgid "Add"
msgstr "Adicionar..."
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
#, fuzzy
msgid "Add &KDM..."
msgstr "Adicionar KDM..."
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "Adicionar KDM..."
+
+#: src/tools/dcpomatic_playlist.cc:80
#, fuzzy
msgid "Add content"
msgstr "Carregando DCP"
@@ -202,8 +218,8 @@ msgstr "Adicionar Pasta..."
msgid "Add..."
msgstr "Adicionar..."
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, fuzzy, c-format
msgid ""
"An exception occurred: %s\n"
@@ -213,10 +229,10 @@ msgstr ""
"Ocorreu um erro: %s.\n"
"\n"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -226,7 +242,7 @@ msgstr ""
"Ocorreu um erro: %s (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -236,8 +252,8 @@ msgstr ""
"Ocorreu um erro: %s (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, fuzzy, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -247,30 +263,30 @@ msgstr ""
"Ocorreu um erro: %s.\n"
"\n"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, fuzzy, c-format
msgid "An unknown error has occurred with the %s."
msgstr "Um erro deconhecido ocorreu com o servidor DCP-o-matic."
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "Ocorreu um erro desconhecido."
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, fuzzy, c-format
msgid "An unknown exception occurred. %s"
msgstr "Ocorreu um erro desconhecido."
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr ""
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
@@ -278,34 +294,46 @@ msgstr ""
"Tem certeza que deseja retornar as configurações aos seus valores originais? "
"Esta ação não poderá ser desfeita."
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr "Configuração errada para %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr "CPL"
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "Contéudo da CPL não encriptado."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "Verificar atualizações"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr ""
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, fuzzy, c-format
msgid "Close %s"
msgstr "&Fechar"
@@ -314,35 +342,35 @@ msgstr "&Fechar"
msgid "Close without saving film"
msgstr "Fechar sem salvar o filme"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr ""
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "Copiar configurações\tCtrl-C"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
@@ -350,16 +378,16 @@ msgstr ""
"Falha na decriptação do DKDM. Talvez ele não tenha sido criado com o "
"certificado correto."
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
#, fuzzy
msgid "Could not duplicate project."
msgstr "Conversor em série não encontrado."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "Conversor em série não encontrado."
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
#, fuzzy
msgid "Could not find player."
msgstr "Conversor em série não encontrado."
@@ -371,63 +399,65 @@ msgid ""
"running."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
#, fuzzy
msgid "Could not load DCP"
-msgstr "Não foi possível carregar o DCP %1."
+msgstr "Não foi possível carregar o DCP {}."
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, fuzzy, c-format
msgid "Could not load DCP %s"
-msgstr "Não foi possível carregar o DCP %1."
+msgstr "Não foi possível carregar o DCP {}."
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, fuzzy, c-format
msgid "Could not load DCP %s."
-msgstr "Não foi possível carregar o DCP %1."
+msgstr "Não foi possível carregar o DCP {}."
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, fuzzy, c-format
msgid ""
"Could not load DCP.\n"
"\n"
"%s."
-msgstr "Não foi possível carregar o DCP %1."
+msgstr "Não foi possível carregar o DCP {}."
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "Não foi possível carregar o KDM."
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr ""
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
-msgstr "Não foi possível carregar o filme %1"
+#, c++-format
+msgid "Could not load film {}"
+msgstr "Não foi possível carregar o filme {}"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "Não conseguiu carregar o filme %1 (%2)"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "Não conseguiu carregar o filme {} ({})"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, fuzzy, c-format
msgid "Could not load stress test file %s"
-msgstr "Não foi possível carregar o filme %1"
+msgstr "Não foi possível carregar o filme {}"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr "Não foi possível criar o DCP."
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, c-format
msgid "Could not open film at %s"
msgstr "Não foi possível abrir o filme em %s"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, fuzzy, c-format
msgid "Could not open this folder as a %s project."
msgstr "Não foi possível abrir o filme em %s"
@@ -441,7 +471,7 @@ msgstr ""
"Falha na leitura do arquivo como um KDM. Talvez a formatação esteja "
"incorreta, ou não seja um arquivo KDM."
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
@@ -449,37 +479,37 @@ msgstr ""
"Falha na leitura do arquivo como um KDM. Talvez a formatação esteja "
"incorreta, ou não seja um arquivo KDM."
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr ""
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
#, fuzzy
msgid "Could not save project."
msgstr "Não foi possível criar o DCP."
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
#, fuzzy
msgid "Could not save template."
msgstr "Conversor em série não encontrado."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "Não foi possível exibir o DCP."
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
msgstr ""
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
@@ -487,7 +517,7 @@ msgstr ""
"Não foi possível gravar para o arquivo de configuração em %s. Suas mudanças "
"não foram salvas."
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
#, fuzzy
msgid "Could not write to config file. Your changes have not been saved."
msgstr ""
@@ -498,24 +528,28 @@ msgstr ""
msgid "Create KDMs"
msgstr "Criar KDMs"
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
#, fuzzy
msgid "DCP"
msgstr "CPL"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
msgstr "Conversor em série DCP-o-matic"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr ""
@@ -528,46 +562,46 @@ msgstr "DKDM"
msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr ""
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr "Decodificar na resolução máxima"
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr "Decodificar em meia resolução"
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr "Decodificar na resolução um quarto"
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
"again."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
#, fuzzy
msgid "Disk Writer"
msgstr "Criador de KDMs DCP-o-matic"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
msgstr ""
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr "Você quer sobrescrever o DCP existente %s?"
@@ -580,23 +614,23 @@ msgstr "Não feche"
msgid "Don't duplicate"
msgstr "Não duplicar"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr ""
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr ""
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "Duplicar Filme"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "Duplicar e abrir..."
@@ -604,41 +638,50 @@ msgstr "Duplicar e abrir..."
msgid "Duplicate without saving film"
msgstr "Duplicar sem salvar o filme"
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "Duplicar..."
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+#, fuzzy
+msgid "Edit..."
+msgstr "&Editar"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "Servidores de codificação..."
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr ""
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+msgid "Examining DCPs"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1446
#, fuzzy
msgid "Export preferences..."
msgstr "Restaurar preferências ao padrão"
-#: src/tools/dcpomatic.cc:1403
+#: src/tools/dcpomatic.cc:1418
#, fuzzy
-msgid "Export subtitles..."
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "Exportar...\tCtrl-E"
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
#, fuzzy
msgid "Export video file...\tCtrl-E"
msgstr "Exportar...\tCtrl-E"
@@ -648,11 +691,11 @@ msgstr "Exportar...\tCtrl-E"
msgid "Export..."
msgstr "Exportar...\tCtrl-E"
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr ""
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "O arquivo %s já existe. Tem certeza de que deseja sobrescrevê-lo?"
@@ -663,7 +706,7 @@ msgstr "O arquivo %s já existe. Tem certeza de que deseja sobrescrevê-lo?"
msgid "Film changed"
msgstr "Filme sofreu alterações"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr ""
@@ -672,36 +715,36 @@ msgstr ""
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "O arquivo %s já existe. Tem certeza de que deseja sobrescrevê-lo?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "Quadros por segundo"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr ""
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "Dicas..."
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
#, fuzzy
msgid "Import preferences..."
msgstr "Restaurar preferências ao padrão"
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr ""
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -714,79 +757,79 @@ msgstr ""
msgid "KDM|Timing"
msgstr "KDM|Timing"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr ""
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
#, fuzzy
msgid "Loading content"
msgstr "Carregando DCP"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
#, fuzzy
msgid "Make &DKDMs...\tCtrl-D"
msgstr "Fazer &KDMs...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "Fazer &KDMs...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "Fazer DCP no conversor em &série\tCtrl-B"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, fuzzy, c-format
msgid "Make DKDM for %s..."
msgstr "Fazer DKDM para o DCP-o-matic..."
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr "Organizar modelos..."
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr ""
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "Novo filme"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr ""
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Novo...\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
msgstr ""
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr ""
@@ -794,16 +837,16 @@ msgstr ""
msgid "Output"
msgstr "Saída"
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "Configurações de colar...\tCtrl-V"
@@ -815,88 +858,88 @@ msgstr ""
msgid "Pause/resume"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr ""
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
"for %s."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr ""
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
#, fuzzy
msgid "Quit"
msgstr "&Sair"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr ""
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr ""
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "Remover"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "Avisar de um problema..."
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Restaurar preferências ao padrão"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr ""
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
#, fuzzy
msgid "S&how DCP in Explorer"
msgstr "E&xibir DCP"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
#, fuzzy
msgid "S&how DCP in Files"
msgstr "E&xibir DCP"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
#, fuzzy
msgid "S&how DCP in Finder"
msgstr "E&xibir DCP"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
msgid "Save"
msgstr ""
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr "Salvar como &modelo..."
@@ -918,7 +961,7 @@ msgstr "Salvar filme e fechar"
msgid "Save film and duplicate"
msgstr "Salvar filme e duplicar"
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr ""
@@ -926,14 +969,19 @@ msgstr ""
msgid "Screens"
msgstr "Telas"
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr "Selecione o DCP para abrir"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr "Selecione o DCP para abrir como OV"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "Selecione o KDM"
+
#: src/tools/dcpomatic_kdm.cc:821
#, fuzzy
msgid "Select DKDM File"
@@ -943,15 +991,15 @@ msgstr "Selecione o filme para abrir"
msgid "Select DKDM file"
msgstr "Selecione o filme para abrir"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr "Selecione o KDM"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "Selecione o filme para abrir"
@@ -959,36 +1007,36 @@ msgstr "Selecione o filme para abrir"
msgid "Send KDM emails"
msgstr "Enviar KDMs por email"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr "Ajustar resolução de decodificação para resolução do display"
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr ""
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr ""
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr ""
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr ""
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, fuzzy, c-format
msgid "The %s download server could not be contacted."
msgstr "O servidor do DCP-o-matic não pode ser contactado."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, fuzzy, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -1009,7 +1057,7 @@ msgstr ""
"que você está usando tem apenas %.1f Gb disponíveis. Quer continuar mesmo "
"assim?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr ""
@@ -1027,11 +1075,11 @@ msgid ""
"certificate's validity period. Use a later start time for this KDM."
msgstr ""
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr ""
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1042,7 +1090,7 @@ msgid ""
"configuration before continuing."
msgstr ""
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1052,7 +1100,7 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1064,7 +1112,7 @@ msgid ""
"for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1074,7 +1122,7 @@ msgid ""
"Do you want to re-create the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1084,25 +1132,26 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
msgstr ""
-"O diretório %1 já existe e não está vazio. Tem certeza de que quer usá-lo?"
+"O diretório {} já existe e não está vazio. Tem certeza de que quer usá-lo?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
"Close any application that is using it, then try again. (%s)"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
@@ -1110,17 +1159,17 @@ msgstr ""
"Falha na leitura das configurações existentes. Valores padrão serão "
"usados. Sua criação pode levar alguns instantes."
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, fuzzy, c-format
msgid "There are no new versions of %s available."
msgstr "Não há novas versões do DCP-o-matic disponíveis."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr "Há tarefas não concluídas; quer mesmo sair?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1129,7 +1178,7 @@ msgstr ""
"corretamente nessa versão. Por favor confira as configurações do filme com "
"cuidado."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1137,66 +1186,88 @@ msgid ""
"you want to play."
msgstr ""
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:712
#, fuzzy
msgid "Timing..."
msgstr "KDM|Timing"
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
#, fuzzy
msgid "Tools"
msgstr "&Ferramentas"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Tarefas inacabadas"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr ""
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr ""
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+msgid "Verify"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:1041
msgid "Verify DCP"
msgstr ""
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
msgid "Verify DCP..."
msgstr ""
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr ""
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Waveform de video..."
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr ""
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
"DCP that the DKDM was made for, and it cannot be undone. Are you sure?"
msgstr ""
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1216,7 +1287,7 @@ msgstr ""
"span>, já que sua perda implicará na inutilização de seus DKDMs (e os DCPs "
"que eles protegem)."
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1232,7 +1303,7 @@ msgstr ""
"Você deve garantir <span weight=\"bold\" size=\"larger\">FAZENDO BACK-UP</"
"span> destes arquivos para poder fazer KDMs para este filme."
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1240,15 +1311,15 @@ msgid ""
"strongly advised to install the 64-bit version of %s."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
diff --git a/src/tools/po/pt_PT.po b/src/tools/po/pt_PT.po
index d7892fa50..d23ce2aab 100644
--- a/src/tools/po/pt_PT.po
+++ b/src/tools/po/pt_PT.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: DCP-o-matic PORTUGUESE (Portugal)\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
"PO-Revision-Date: 2016-03-19 13:01+0000\n"
"Last-Translator: Tiago Casal Ribeiro <tiago@casalribeiro.com>\n"
"Language-Team: \n"
@@ -28,28 +28,28 @@ msgstr ""
msgid "%d KDMs written to %s"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, fuzzy, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
-msgstr "O ficheiro %1 já existe, não o pode usar para um novo filme."
+msgstr "O ficheiro {} já existe, não o pode usar para um novo filme."
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, fuzzy, c-format
msgid "%s could not start"
msgstr "DCP-o-matic"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, fuzzy, c-format
msgid "%s could not start %s"
msgstr "DCP-o-matic"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, fuzzy, c-format
msgid "%s could not start (%s)"
msgstr "DCP-o-matic"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, fuzzy, c-format
msgid "%s could not start."
msgstr "DCP-o-matic"
@@ -59,130 +59,146 @@ msgstr "DCP-o-matic"
msgid "&Add Film...\tCtrl-A"
msgstr "&Adicionar Filme..."
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
#, fuzzy
msgid "&Add OV..."
msgstr "Adicionar Filme..."
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr ""
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
#, fuzzy
msgid "&Close\tCtrl-W"
msgstr "&Guardar\tCtrl-S"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "&Editar"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&Sair"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&Ficheiro"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "&Ajuda"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&Trabalhos"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&Criar DCP\tCtrl-M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&Abrir\tCtrl-O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
#, fuzzy
msgid "&Preferences...\tCtrl-,"
msgstr "&Preferências...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&Preferências...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&Sair"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&Guardar\tCtrl-S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
#, fuzzy
msgid "&Save frame to file...\tCtrl-S"
msgstr "&Abrir\tCtrl-O"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "&Enviar DCP para TMS"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "&Ferramentas"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "Sobre"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, fuzzy, c-format
msgid "About %s"
msgstr "Sobre"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
msgid "Add"
msgstr ""
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
#, fuzzy
msgid "Add &KDM..."
msgstr "Adicionar Filme..."
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "Adicionar Filme..."
+
+#: src/tools/dcpomatic_playlist.cc:80
#, fuzzy
msgid "Add content"
msgstr "&Conteúdo"
@@ -205,8 +221,8 @@ msgstr "Adicionar Filme..."
msgid "Add..."
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, fuzzy, c-format
msgid ""
"An exception occurred: %s\n"
@@ -216,10 +232,10 @@ msgstr ""
"Ocorreu uma excepção: %s.\n"
"\n"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -229,7 +245,7 @@ msgstr ""
"Ocorreu uma excepção: %s (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -239,8 +255,8 @@ msgstr ""
"Ocorreu uma excepção: %s (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, fuzzy, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -250,63 +266,75 @@ msgstr ""
"Ocorreu uma excepção: %s.\n"
"\n"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, fuzzy, c-format
msgid "An unknown error has occurred with the %s."
msgstr "Ocorreu uma excepção desconhecida."
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "Ocorreu uma excepção desconhecida."
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, fuzzy, c-format
msgid "An unknown exception occurred. %s"
msgstr "Ocorreu uma excepção desconhecida."
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr ""
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
msgstr ""
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, fuzzy, c-format
msgid "Bad setting for %s."
msgstr "Má configuração de %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr ""
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "O conteúdo do CPL não é encriptado."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "Procurar actualizações"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr ""
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, c-format
msgid "Close %s"
msgstr ""
@@ -315,50 +343,50 @@ msgstr ""
msgid "Close without saving film"
msgstr ""
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr ""
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr ""
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
msgstr ""
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
#, fuzzy
msgid "Could not duplicate project."
msgstr "Não foi possível encontrar o conversor de lote"
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "Não foi possível encontrar o conversor de lote"
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
#, fuzzy
msgid "Could not find player."
msgstr "Não foi possível encontrar o conversor de lote"
@@ -370,22 +398,22 @@ msgid ""
"running."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
#, fuzzy
msgid "Could not load DCP"
msgstr "Não foi possível produzir o DCP: %s"
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, fuzzy, c-format
msgid "Could not load DCP %s"
msgstr "Não foi possível produzir o DCP: %s"
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, fuzzy, c-format
msgid "Could not load DCP %s."
msgstr "Não foi possível produzir o DCP: %s"
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, fuzzy, c-format
msgid ""
"Could not load DCP.\n"
@@ -393,43 +421,44 @@ msgid ""
"%s."
msgstr "Não foi possível produzir o DCP: %s"
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
#, fuzzy
msgid "Could not load KDM."
msgstr "Não foi possível mostrar o DCP"
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, fuzzy, c-format
msgid "Could not load a DCP from %s"
msgstr "Não foi possível produzir o DCP: %s"
#: src/tools/dcpomatic_batch.cc:495
-#, fuzzy
-msgid "Could not load film %1"
-msgstr "Não foi possível carregar o filme %1 (%2)"
+#, fuzzy, c++-format
+msgid "Could not load film {}"
+msgstr "Não foi possível carregar o filme {} ({})"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "Não foi possível carregar o filme %1 (%2)"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "Não foi possível carregar o filme {} ({})"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, fuzzy, c-format
msgid "Could not load stress test file %s"
-msgstr "Não foi possível carregar o filme %1 (%2)"
+msgstr "Não foi possível carregar o filme {} ({})"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
#, fuzzy
msgid "Could not make DCP."
msgstr "Não foi possível produzir o DCP: %s"
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, fuzzy, c-format
msgid "Could not open film at %s"
msgstr "Não foi possível abrir o filme em %s"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, fuzzy, c-format
msgid "Could not open this folder as a %s project."
msgstr "Não foi possível abrir o filme em %s"
@@ -440,50 +469,50 @@ msgid ""
"loading a DKDM (XML) file."
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
msgstr ""
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr ""
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
#, fuzzy
msgid "Could not save project."
msgstr "Não foi possível produzir o DCP: %s"
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
#, fuzzy
msgid "Could not save template."
msgstr "Não foi possível encontrar o conversor de lote"
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
#, fuzzy
msgid "Could not show DCP."
msgstr "Não foi possível mostrar o DCP"
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
msgstr ""
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
msgstr ""
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
msgid "Could not write to config file. Your changes have not been saved."
msgstr ""
@@ -491,24 +520,28 @@ msgstr ""
msgid "Create KDMs"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
msgid "DCP"
msgstr ""
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
#, fuzzy
msgid "DCP-o-matic Encode Server"
msgstr "DCP-o-matic Conversor de Lote"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr ""
@@ -521,46 +554,46 @@ msgstr ""
msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr ""
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr ""
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr ""
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
"again."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
#, fuzzy
msgid "Disk Writer"
msgstr "DCP-o-matic"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
msgstr ""
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr ""
@@ -573,23 +606,23 @@ msgstr ""
msgid "Don't duplicate"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr ""
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr ""
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr ""
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr ""
@@ -597,41 +630,50 @@ msgstr ""
msgid "Duplicate without saving film"
msgstr ""
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+#, fuzzy
+msgid "Edit..."
+msgstr "&Editar"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "Servidores de codificação..."
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr ""
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+msgid "Examining DCPs"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1446
#, fuzzy
msgid "Export preferences..."
msgstr "Restaurar predefinições"
-#: src/tools/dcpomatic.cc:1403
+#: src/tools/dcpomatic.cc:1418
#, fuzzy
-msgid "Export subtitles..."
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "&Abrir\tCtrl-O"
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
#, fuzzy
msgid "Export video file...\tCtrl-E"
msgstr "&Abrir\tCtrl-O"
@@ -641,11 +683,11 @@ msgstr "&Abrir\tCtrl-O"
msgid "Export..."
msgstr "&Abrir\tCtrl-O"
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr ""
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, fuzzy, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr ""
@@ -658,7 +700,7 @@ msgstr ""
msgid "Film changed"
msgstr "Filme modificado"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr ""
@@ -669,36 +711,36 @@ msgstr ""
"O directório %s já existe e não se encontra vazio. Tem a certeza que "
"pretende utilizá-lo?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr ""
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr ""
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "Sugestões..."
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
#, fuzzy
msgid "Import preferences..."
msgstr "Restaurar predefinições"
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr ""
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -711,78 +753,78 @@ msgstr ""
msgid "KDM|Timing"
msgstr ""
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr ""
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
msgid "Loading content"
msgstr ""
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
#, fuzzy
msgid "Make &DKDMs...\tCtrl-D"
msgstr "Gerar &KDM...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "Gerar &KDM...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "Gerar DCP no &Conversor de Lote\tCtrl-B"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, fuzzy, c-format
msgid "Make DKDM for %s..."
msgstr "Gerar DKDM para DCP-o-matic..."
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr ""
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr ""
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Novo...\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
msgstr ""
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr ""
@@ -790,16 +832,16 @@ msgstr ""
msgid "Output"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
#, fuzzy
msgid "Paste settings...\tCtrl-V"
msgstr "&Preferências...\tCtrl-P"
@@ -812,89 +854,89 @@ msgstr ""
msgid "Pause/resume"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr ""
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
"for %s."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr ""
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
#, fuzzy
msgid "Quit"
msgstr "&Sair"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr ""
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr ""
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr ""
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "Comunicar um problema..."
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Restaurar predefinições"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr ""
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
#, fuzzy
msgid "S&how DCP in Explorer"
msgstr "M&ostrar DCP"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
#, fuzzy
msgid "S&how DCP in Files"
msgstr "M&ostrar DCP"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
#, fuzzy
msgid "S&how DCP in Finder"
msgstr "M&ostrar DCP"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
#, fuzzy
msgid "Save"
msgstr "&Enregistrer"
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr ""
@@ -916,7 +958,7 @@ msgstr ""
msgid "Save film and duplicate"
msgstr ""
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr ""
@@ -924,16 +966,21 @@ msgstr ""
msgid "Screens"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
#, fuzzy
msgid "Select DCP to open"
msgstr "Seleccionar filme a abrir"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
#, fuzzy
msgid "Select DCP to open as OV"
msgstr "Seleccionar filme a abrir"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "Seleccionar filme a abrir"
+
#: src/tools/dcpomatic_kdm.cc:821
#, fuzzy
msgid "Select DKDM File"
@@ -944,16 +991,16 @@ msgstr "Seleccionar filme a abrir"
msgid "Select DKDM file"
msgstr "Seleccionar filme a abrir"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
#, fuzzy
msgid "Select KDM"
msgstr "Seleccionar filme a abrir"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "Seleccionar filme a abrir"
@@ -961,36 +1008,36 @@ msgstr "Seleccionar filme a abrir"
msgid "Send KDM emails"
msgstr ""
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr ""
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr ""
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr ""
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr ""
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, fuzzy, c-format
msgid "The %s download server could not be contacted."
msgstr "O servidor de descarga do DCP-o-matic não pode ser contactado."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, fuzzy, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -1009,7 +1056,7 @@ msgstr ""
"O DCP para este filme ocupará cerca de %.1f Gb, e o disco utilizado apenas "
"dispõe de %.1f Gb. Pretende continuar?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr ""
@@ -1027,11 +1074,11 @@ msgid ""
"certificate's validity period. Use a later start time for this KDM."
msgstr ""
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr ""
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1042,7 +1089,7 @@ msgid ""
"configuration before continuing."
msgstr ""
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1052,7 +1099,7 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1064,7 +1111,7 @@ msgid ""
"for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1074,7 +1121,7 @@ msgid ""
"Do you want to re-create the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1084,42 +1131,43 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
msgstr ""
-"O directório %1 já existe e não se encontra vazio. Tem a certeza que "
+"O directório {} já existe e não se encontra vazio. Tem a certeza que "
"pretende utilizá-lo?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
"Close any application that is using it, then try again. (%s)"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
msgstr ""
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, fuzzy, c-format
msgid "There are no new versions of %s available."
msgstr "Não há novas versões do DCP-o-matic disponíveis."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr "Há trabalhos não finalizados; tem a certeza que pretende sair?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1128,7 +1176,7 @@ msgstr ""
"carregar correctamente nesta versão. Por favor verifique as definições do "
"filme cuidadosamente."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1136,65 +1184,87 @@ msgid ""
"you want to play."
msgstr ""
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:712
msgid "Timing..."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
#, fuzzy
msgid "Tools"
msgstr "&Ferramentas"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Trabalhos não finalizados"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr ""
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr ""
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+msgid "Verify"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:1041
msgid "Verify DCP"
msgstr ""
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
msgid "Verify DCP..."
msgstr ""
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr ""
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Forma de onda de vídeo..."
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr ""
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
"DCP that the DKDM was made for, and it cannot be undone. Are you sure?"
msgstr ""
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1206,7 +1276,7 @@ msgid ""
"it is lost your DKDMs (and the DCPs they protect) will become useless."
msgstr ""
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1216,7 +1286,7 @@ msgid ""
"size=\"larger\">BACKED UP</span> if you want to make KDMs for this film."
msgstr ""
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1224,15 +1294,15 @@ msgid ""
"strongly advised to install the 64-bit version of %s."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
@@ -1359,5 +1429,5 @@ msgstr ""
#~ msgstr "&Analyser le son"
#, fuzzy
-#~ msgid "The directory %1 already exists."
+#~ msgid "The directory {} already exists."
#~ msgstr "Le dossier %s existe déjà."
diff --git a/src/tools/po/ru_RU.po b/src/tools/po/ru_RU.po
index ac7933301..40052f0c2 100644
--- a/src/tools/po/ru_RU.po
+++ b/src/tools/po/ru_RU.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
"PO-Revision-Date: 2025-06-08 19:54+0300\n"
"Last-Translator: Mikhail Epshteyn <virus-2006@yandex.ru>\n"
"Language-Team: Russian\n"
@@ -25,30 +25,30 @@ msgstr "%d KDM-ключ записан в %s"
msgid "%d KDMs written to %s"
msgstr "%d KDM-ключи записаны в %s"
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
msgstr ""
"%s файл уже существует, так что вы не можете использовать его для нового "
"проекта."
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, c-format
msgid "%s could not start"
msgstr "%s не удалось запустить"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, c-format
msgid "%s could not start %s"
msgstr "%s не удалось запустить %s"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, c-format
msgid "%s could not start (%s)"
msgstr "%s не удалось запустить (%s)"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, c-format
msgid "%s could not start."
msgstr "Не удалось запустить %s."
@@ -57,125 +57,141 @@ msgstr "Не удалось запустить %s."
msgid "&Add Film...\tCtrl-A"
msgstr "&Добавить проект...\tCtrl-A"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr "&Добавить OV…"
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "&Закрыть"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
msgid "&Close\tCtrl-W"
msgstr "&Закрыть\tCtrl-W"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "&Правка"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&Выход"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&Файл"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "&Помощь"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&Задачи"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&Создать DCP\tCtrl-M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&Открыть...\tCtrl-O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
msgid "&Preferences...\tCtrl-,"
msgstr "&Настройки...\tCtrl-,"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&Настройки...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&Выход"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&Сохранить\tCtrl-S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
msgid "&Save frame to file...\tCtrl-S"
msgstr "&Сохранить кадр фильма в файл…\tCtrl-E"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "&Отправить DCP на TMS (Theatre Management System)"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "&Инструменты"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "&Вид"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr "<b>Плейлист:</b>"
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr "<b>Плейлисты</b>"
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "О программе"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, c-format
msgid "About %s"
msgstr "О программе %s"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
msgid "Add"
msgstr "Добавить"
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
msgid "Add &KDM..."
msgstr "Добавить &KDM…"
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "Добавить &KDM…"
+
+#: src/tools/dcpomatic_playlist.cc:80
msgid "Add content"
msgstr "Добавить контент"
@@ -195,8 +211,8 @@ msgstr "Добавить папку…"
msgid "Add..."
msgstr "Добавить…"
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, c-format
msgid ""
"An exception occurred: %s\n"
@@ -207,10 +223,10 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -221,7 +237,7 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -232,8 +248,8 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -244,64 +260,76 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, c-format
msgid "An unknown error has occurred with the %s."
msgstr "Произошла неизвестная ошибка с %s."
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "Произошла неизвестная ошибка."
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, c-format
msgid "An unknown exception occurred. %s"
msgstr "Произошла неизвестная ошибка. %s"
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr "Текст аннотации"
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
msgstr ""
"Вы точно хотите вернуть настройки по умолчанию? Эту операцию нельзя отменить."
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr "Неправильная настройка для %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr "CPL"
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "Содержимое CPL-файла не зашифровано."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr "CPL: %s"
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "Проверить обновления"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr "Выбрать папку с DCP"
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, c-format
msgid "Close %s"
msgstr "Закрыть %s"
@@ -310,35 +338,35 @@ msgstr "Закрыть %s"
msgid "Close without saving film"
msgstr "Закрыть без сохранения проекта"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr "Скрытые субтитры…"
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr "Объединить"
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr "Объединение DCPs"
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr "Название контента"
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr "Скопировать DCPs"
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "Копировать настройки\tCtrl-C"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr "Не удалось создать папку для хранения проекта."
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
@@ -346,15 +374,15 @@ msgstr ""
"Не удалось расшифровать этот DKDM. Возможно, он был создан некорректным "
"сертификатом."
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
msgid "Could not duplicate project."
msgstr "Не удалось дублировать проект."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "Не удалось найти пакетный конвертер."
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
msgid "Could not find player."
msgstr "Не удалось найти плеер."
@@ -367,21 +395,21 @@ msgstr ""
"Не удалось добавить в очередь. Возможно открыть другой экземпляр или %s "
"запущен."
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
msgid "Could not load DCP"
msgstr "Не удалось загрузить DCP"
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, c-format
msgid "Could not load DCP %s"
msgstr "Не удалось загрузить DCP %s"
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, c-format
msgid "Could not load DCP %s."
msgstr "Не удалось загрузить DCP %s."
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, c-format
msgid ""
"Could not load DCP.\n"
@@ -392,40 +420,42 @@ msgstr ""
"\n"
"%s."
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "Не удалось загрузить KDM."
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr "Не удалось загрузить DCP из %s"
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
-msgstr "Не удалось загрузить проект %1"
+#, c++-format
+msgid "Could not load film {}"
+msgstr "Не удалось загрузить проект {}"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "Не удалось загрузить проект %1 (%2)"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "Не удалось загрузить проект {} ({})"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, c-format
msgid "Could not load stress test file %s"
msgstr "Не удалось загрузить файл стресс-теста %s"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr "Не удалось создать DCP."
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, c-format
msgid "Could not open film at %s"
msgstr "Не удалось открыть проект: %s"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, c-format
msgid "Could not open this folder as a %s project."
msgstr "Не удалось открыть эту папку как проект %s DCP-o-matic."
@@ -438,7 +468,7 @@ msgstr ""
"Не удалось прочитать файл как KDM. Убедитесь, что вы загружаете DKDM (XML) "
"файл."
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
@@ -446,23 +476,23 @@ msgstr ""
"Не удалось прочитать файл как KDM. Возможно, он имеет неправильный формат, "
"или вовсе не является KDM."
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr "Не удалось перенести настройки"
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
msgid "Could not save project."
msgstr "Не удалось сохранить проект."
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
msgid "Could not save template."
msgstr "Не удалось сохранить шаблон."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "Не удалось открыть DCP."
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
@@ -470,15 +500,15 @@ msgstr ""
"Не удалось запустить пакетный конвертер. Возможно, вам придётся загрузить "
"его с сайта dcpomatic.com."
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
"Не удалось запустить плеер. Возможно, вам придётся загрузить его с сайта "
"dcpomatic.com."
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
@@ -486,7 +516,7 @@ msgstr ""
"Не удалось записать в файл конфигурации: %s. Ваши изменения не были "
"сохранены."
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
msgid "Could not write to config file. Your changes have not been saved."
msgstr ""
"Не удалось записать в файл конфигурации. Ваши изменения не были сохранены."
@@ -495,23 +525,27 @@ msgstr ""
msgid "Create KDMs"
msgstr "Создать KDM-ключи"
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr "Создатель"
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
msgid "DCP"
msgstr "DCP"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
msgstr "DCP-o-matic Encode Server"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr "DCPs"
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr "DCPs бъединились успешно."
@@ -524,23 +558,23 @@ msgstr "DKDM (Distribution KDM)"
msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr "DKDM %s уже существует в списке DKDM и не может быть добавлен снова."
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr "Декодировать в полном разрешении"
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr "Декодировать с разрешением в половину"
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr "Декодировать с разрешением в четверть"
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr "Удалить"
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
@@ -549,16 +583,16 @@ msgstr ""
"Вы установили %s Disk Writer.pkg из .dmg? Пожалуйста проверьте и попробуйте "
"снова."
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Disk Writer"
msgstr "Disk Writer"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr "Ничего не делать"
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
@@ -567,7 +601,7 @@ msgstr ""
"спрашивает разрешения для dcpomatic2_disk_writer.exe? Нажмите ’Да’, затем "
"попробуйте снова."
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr "Вы хотите перезаписать существующий DCP %s?"
@@ -580,23 +614,23 @@ msgstr "Не закрывать"
msgid "Don't duplicate"
msgstr "Не дублировать"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr "Вниз"
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr "Диск"
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr "Двойной экран\tShift+F11"
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "Дублировать проект"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "Дублировать и открыть…"
@@ -604,39 +638,50 @@ msgstr "Дублировать и открыть…"
msgid "Duplicate without saving film"
msgstr "Дублировать без сохранения проекта"
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "Дублировать..."
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr "Продолжительность"
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr "Редактировать части"
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+#, fuzzy
+msgid "Edit..."
+msgstr "&Правка"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "Серверы кодирования…"
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr "Зашифрован"
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr "Начальная точка"
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+#, fuzzy
+msgid "Examining DCPs"
+msgstr "Объединение DCPs"
+
+#: src/tools/dcpomatic.cc:1446
msgid "Export preferences..."
msgstr "Экспортировать настройки по умолчанию…"
-#: src/tools/dcpomatic.cc:1403
-msgid "Export subtitles..."
+#: src/tools/dcpomatic.cc:1418
+#, fuzzy
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "Экспортировать субтитры..."
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
msgid "Export video file...\tCtrl-E"
msgstr "Экспортировать видеофайл...\tCtrl-E"
@@ -644,11 +689,11 @@ msgstr "Экспортировать видеофайл...\tCtrl-E"
msgid "Export..."
msgstr "Экспорт..."
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr "Смотреть"
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "Файл %s уже существует. Вы хотите перезаписать его?"
@@ -659,7 +704,7 @@ msgstr "Файл %s уже существует. Вы хотите переза
msgid "Film changed"
msgstr "Проект изменен"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr "Найти диски"
@@ -668,35 +713,35 @@ msgstr "Найти диски"
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "Папка %s уже существует. Вы хотите перезаписать его?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "Кадров в секунду"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr "Полный экран\tF11"
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "Подсказки..."
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
msgid "Import preferences..."
msgstr "Импортировать настройки…"
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr "Входящий DCP"
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr "Длительность"
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr "Издатель"
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -712,61 +757,61 @@ msgstr ""
msgid "KDM|Timing"
msgstr "KDM|Тайминг"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr "Слева"
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr "Длительность"
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
msgid "Loading content"
msgstr "Загрузка контента"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
msgid "Make &DKDMs...\tCtrl-D"
msgstr "Создать &DKDM...\tCtrl-D"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "Создать &KDM...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "Создать DCP в пакетном конвертере"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, c-format
msgid "Make DKDM for %s..."
msgstr "Создать DKDM для %s…"
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr "Управление шаблонами..."
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr "Название"
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr "Новый"
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "Новый проект"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr "Новый плейлист"
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Новый...\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
@@ -774,7 +819,7 @@ msgstr ""
"Ни ASSETMAP или ASSETMAP.xml не найден в папке. Пожалуйста выберите папку с "
"DCP."
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
@@ -782,11 +827,11 @@ msgstr ""
"В настройках не указана папка для плейлистов. Укажите папку и попробуйте "
"снова."
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr "Открыть DCP в &плеере"
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr "Открыть DCP используйте Файл -> Открыть"
@@ -794,16 +839,16 @@ msgstr "Открыть DCP используйте Файл -> Открыть"
msgid "Output"
msgstr "Вывод"
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr "Вывод DCP папки"
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr "PKL: %s"
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "Вставить настройки…\tCtrl-V"
@@ -815,11 +860,11 @@ msgstr "Остановить или возобновить кодировани
msgid "Pause/resume"
msgstr "Остановить/возобновить"
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr "Изображение"
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
@@ -827,73 +872,73 @@ msgid ""
msgstr ""
"Убедитесь, что в Windows не включён контролируемый доступ к файлам для %s."
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr "Question|Н"
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr "Question|Д"
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
msgid "Quit"
msgstr "Выход"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr "Пересоздать ключи расшифровки KDM"
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr "Пересоздать подписывающие сертификаты"
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr "Части"
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr "Обновить"
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr "Заметки"
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "Удалить"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "Сообщить об ошибке..."
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Восстановить настройки по умолчанию"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr "Справа"
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
msgid "S&how DCP in Explorer"
msgstr "П&оказать DCP в Проводнике"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
msgid "S&how DCP in Files"
msgstr "П&оказать DCP в Файлах"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
msgid "S&how DCP in Finder"
msgstr "П&оказать DCP в Finder"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
msgid "Save"
msgstr "Сохранить"
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr "Сохранить как &шаблон..."
@@ -915,7 +960,7 @@ msgstr "Сохранить проект и закрыть"
msgid "Save film and duplicate"
msgstr "Сохранить проект и дублировать"
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr "Сохранить кадр как файл"
@@ -923,14 +968,19 @@ msgstr "Сохранить кадр как файл"
msgid "Screens"
msgstr "Залы"
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr "Выберите DCP для открытия"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr "Выберите DCP для открытия как OV"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "Выберите KDM-файл"
+
#: src/tools/dcpomatic_kdm.cc:821
msgid "Select DKDM File"
msgstr "Выберите DKDM-файл"
@@ -939,15 +989,15 @@ msgstr "Выберите DKDM-файл"
msgid "Select DKDM file"
msgstr "Выберите DKDM-файл"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr "Выберите KDM-файл"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr "Выделить всё\tShift-Ctrl-A"
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "Выберите проект"
@@ -955,36 +1005,36 @@ msgstr "Выберите проект"
msgid "Send KDM emails"
msgstr "Отправить письма с KDM-ключами"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr "Установить разрешение декодирования в соответствии с экраном"
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr "Звук"
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr "Укажите ZIP-файл"
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr "Статус…"
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr "Субтитры"
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr "Системная информация..."
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, c-format
msgid "The %s download server could not be contacted."
msgstr "%s не удалось связаться с сервером загрузки."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -1004,7 +1054,7 @@ msgstr ""
"приблизительно %.1f ГБ, но на вашем диске доступно %.1f ГБ. Продолжить в "
"любом случае?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr "Этот KDM не позволяет воспроизведение контента в данное время."
@@ -1027,11 +1077,11 @@ msgstr ""
"Период начала KDM предшествует (или близок к) началу срока действия "
"сертификата подписи. Используйте более позднее время начала для этого KDM."
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr "Цепочка сертификатов для подписи недействительна"
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1049,7 +1099,7 @@ msgstr ""
"Вы можете сейчас выбрать \"Нет\" и сохранить ваши настройки перед "
"продолжением."
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1063,7 +1113,7 @@ msgstr ""
"системах.\n"
"Вы хотите пересоздать цепочку сертификатов для подписания DCP и KDM?"
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1080,7 +1130,7 @@ msgstr ""
"Эта ошибка была вызвана багом в %s, которая была исправлена.\n"
"Вы хотите пересоздать цепочку сертификатов для подписания DCP и KDM?"
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1094,7 +1144,7 @@ msgstr ""
"системах.\n"
"Вы хотите пересоздать цепочку сертификатов для подписания DCP и KDM?"
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1109,18 +1159,19 @@ msgstr ""
"пересоздадите её.\n"
"Вы хотите пересоздать цепочку сертификатов для подписания DCP и KDM?"
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
-msgstr "Папка %1 уже существует и не пуста. Вы точно хотите использовать её?"
+msgstr "Папка {} уже существует и не пуста. Вы точно хотите использовать её?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr ""
"Диск который вы выбрали больше не поддерживается. Пожалуйста выберите другой."
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
@@ -1129,7 +1180,7 @@ msgstr ""
"Диск %s не может быть отсортирован.\n"
"Закройте другие приложения, которые его используют и попробуйте снова (%s)"
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
@@ -1137,17 +1188,17 @@ msgstr ""
"Ошибка загрузки существующей конфигурации. Будут использованы значения по "
"умолчанию. Создание может занять некоторое много время."
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, c-format
msgid "There are no new versions of %s available."
msgstr "Нет новых версий %s."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr "Есть незавершенные задачи! Вы точно хотите выйти?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1156,7 +1207,7 @@ msgstr ""
"загрузиться в этой версии. Пожалуйста, внимательно проверьте настройки "
"проекта."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1166,58 +1217,82 @@ msgstr ""
"Возможно выбрана папка с проектом %s. Она не может быть загружена в плеер. "
"Выберите DCP в подпапке с проектом %s, если хотите открыть её в плеере."
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:712
msgid "Timing..."
msgstr "Тайминг..."
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
msgid "Tools"
msgstr "Инструменты"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr "Попробуйте удалить символы %s из названия вашей папки."
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr "Тип"
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Незавершенные задачи"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr "Удалить программу…"
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr ""
"Не могу распознать расширение файла %s (используйте .jpg, .jpeg или .png)"
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr "Вверх"
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+#, fuzzy
+msgid "Verify"
+msgstr "Проверить DCP"
+
+#: src/tools/dcpomatic_player.cc:1041
msgid "Verify DCP"
msgstr "Проверить DCP"
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
msgid "Verify DCP..."
msgstr "Проверить DCP..."
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr "Дополнительный пакет (VF)"
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Волновая диаграмма видео…"
+#: src/tools/dcpomatic_verifier.cc:194
+#, fuzzy
+msgid "Write logs to DCP folders"
+msgstr "Выбрать папку с DCP"
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
@@ -1227,7 +1302,7 @@ msgstr ""
"пакета, для которого был создан этот DKDM. Эту операцию нельзя отменить. Вы "
"уверены?"
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1246,7 +1321,7 @@ msgstr ""
"КОПИЮ ЭТОГО ФАЙЛА</span>, т.к. если он будет утерян, ваши DKDM (и DCP, "
"которые ими защищены) станут бесполезными."
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1263,7 +1338,7 @@ msgstr ""
"size=\"larger\">РЕЗЕРВНЫЕ КОПИИ</span> этих файлов, если вы хотите сделать "
"KDM для данного проекта."
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1274,7 +1349,7 @@ msgstr ""
"приведёт к ограничению памяти, доступной для %s, и может вызвать ошибки. "
"Настоятельно рекомендуется установить 64-битную версию %s."
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
@@ -1282,9 +1357,9 @@ msgstr ""
"Вы не подтвердили, что про прочитали предупреждение, которое было показано. "
"Пожалуйста, попробуйте заново."
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
@@ -1292,6 +1367,10 @@ msgstr ""
"Вы не выбрали папку. Убедитесь, что вы выбрали папку перед нажатием "
"\"Открыть\"."
+#, fuzzy
+#~ msgid "Choose a folder"
+#~ msgstr "Выбрать папку с DCP"
+
#~ msgid ""
#~ "The player is dropping a lot of frames, so playback may not be accurate.\n"
#~ "\n"
diff --git a/src/tools/po/sk_SK.po b/src/tools/po/sk_SK.po
index cb091aee9..96c8dae7b 100644
--- a/src/tools/po/sk_SK.po
+++ b/src/tools/po/sk_SK.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
"PO-Revision-Date: 2016-01-06 00:23+0100\n"
"Last-Translator: Tomáš Hlaváč\n"
"Language-Team: \n"
@@ -28,28 +28,28 @@ msgstr ""
msgid "%d KDMs written to %s"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, fuzzy, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
-msgstr "%1 už existuje ako súbor, takže ho nemôžete použiť pre nový film."
+msgstr "{} už existuje ako súbor, takže ho nemôžete použiť pre nový film."
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, fuzzy, c-format
msgid "%s could not start"
msgstr "DCP-o-matic"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, fuzzy, c-format
msgid "%s could not start %s"
msgstr "DCP-o-matic"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, fuzzy, c-format
msgid "%s could not start (%s)"
msgstr "DCP-o-matic"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, fuzzy, c-format
msgid "%s could not start."
msgstr "DCP-o-matic"
@@ -59,130 +59,146 @@ msgstr "DCP-o-matic"
msgid "&Add Film...\tCtrl-A"
msgstr "&Pridať film..."
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
#, fuzzy
msgid "&Add OV..."
msgstr "Pridať film..."
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr ""
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
#, fuzzy
msgid "&Close\tCtrl-W"
msgstr "&Uložiť\tCtrl-S"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "&Upraviť"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&Koniec"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&Súbor"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "&Pomoc"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&Práce"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&Vytvoriť DCP\tCtrl-M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&Otvoriť...\tCtrl-O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
#, fuzzy
msgid "&Preferences...\tCtrl-,"
msgstr "&Nastavenia...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&Nastavenia...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&Ukončiť"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&Uložiť\tCtrl-S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
#, fuzzy
msgid "&Save frame to file...\tCtrl-S"
msgstr "&Otvoriť...\tCtrl-O"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "&Odoslať DCP do TMS"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "&Nástroje"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "O"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, fuzzy, c-format
msgid "About %s"
msgstr "O"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
msgid "Add"
msgstr ""
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
#, fuzzy
msgid "Add &KDM..."
msgstr "Pridať film..."
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "Pridať film..."
+
+#: src/tools/dcpomatic_playlist.cc:80
#, fuzzy
msgid "Add content"
msgstr "&Obsah"
@@ -205,8 +221,8 @@ msgstr "Pridať film..."
msgid "Add..."
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, fuzzy, c-format
msgid ""
"An exception occurred: %s\n"
@@ -216,10 +232,10 @@ msgstr ""
"Vyskytol sa problém: %s.\n"
"\n"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -229,7 +245,7 @@ msgstr ""
"Vyskytol sa problém: %s (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -239,8 +255,8 @@ msgstr ""
"Vyskytol sa problém: %s (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, fuzzy, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -250,63 +266,75 @@ msgstr ""
"Vyskytol sa problém: %s.\n"
"\n"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, fuzzy, c-format
msgid "An unknown error has occurred with the %s."
msgstr "Vyskytol sa neznámy problém"
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "Vyskytol sa neznámy problém"
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, fuzzy, c-format
msgid "An unknown exception occurred. %s"
msgstr "Vyskytol sa neznámy problém"
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr ""
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
msgstr ""
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, fuzzy, c-format
msgid "Bad setting for %s."
msgstr "Zlé nastavenia pre %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr ""
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "CPL obsah nie je enkryptovaný."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "Skontrolovať aktualizácie"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr ""
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, c-format
msgid "Close %s"
msgstr ""
@@ -315,50 +343,50 @@ msgstr ""
msgid "Close without saving film"
msgstr ""
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr ""
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr ""
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
msgstr ""
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
#, fuzzy
msgid "Could not duplicate project."
msgstr "Konvertor nebol nájdený."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "Konvertor nebol nájdený."
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
#, fuzzy
msgid "Could not find player."
msgstr "Konvertor nebol nájdený."
@@ -370,22 +398,22 @@ msgid ""
"running."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
#, fuzzy
msgid "Could not load DCP"
msgstr "Nemôžem vytvoriť DCP: %s"
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, fuzzy, c-format
msgid "Could not load DCP %s"
msgstr "Nemôžem vytvoriť DCP: %s"
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, fuzzy, c-format
msgid "Could not load DCP %s."
msgstr "Nemôžem vytvoriť DCP: %s"
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, fuzzy, c-format
msgid ""
"Could not load DCP.\n"
@@ -393,43 +421,44 @@ msgid ""
"%s."
msgstr "Nemôžem vytvoriť DCP: %s"
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
#, fuzzy
msgid "Could not load KDM."
msgstr "Nemôžem zobraziť DCP"
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, fuzzy, c-format
msgid "Could not load a DCP from %s"
msgstr "Nemôžem vytvoriť DCP: %s"
#: src/tools/dcpomatic_batch.cc:495
-#, fuzzy
-msgid "Could not load film %1"
-msgstr "Nemôžem načítať film %1 (%2)"
+#, fuzzy, c++-format
+msgid "Could not load film {}"
+msgstr "Nemôžem načítať film {} ({})"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "Nemôžem načítať film %1 (%2)"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "Nemôžem načítať film {} ({})"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, fuzzy, c-format
msgid "Could not load stress test file %s"
-msgstr "Nemôžem načítať film %1 (%2)"
+msgstr "Nemôžem načítať film {} ({})"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
#, fuzzy
msgid "Could not make DCP."
msgstr "Nemôžem vytvoriť DCP: %s"
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, fuzzy, c-format
msgid "Could not open film at %s"
msgstr "Nemôžem otvoriť film na %s"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, fuzzy, c-format
msgid "Could not open this folder as a %s project."
msgstr "Nemôžem otvoriť film na %s"
@@ -440,50 +469,50 @@ msgid ""
"loading a DKDM (XML) file."
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
msgstr ""
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr ""
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
#, fuzzy
msgid "Could not save project."
msgstr "Nemôžem vytvoriť DCP: %s"
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
#, fuzzy
msgid "Could not save template."
msgstr "Konvertor nebol nájdený."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
#, fuzzy
msgid "Could not show DCP."
msgstr "Nemôžem zobraziť DCP"
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
msgstr ""
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
msgstr ""
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
msgid "Could not write to config file. Your changes have not been saved."
msgstr ""
@@ -491,24 +520,28 @@ msgstr ""
msgid "Create KDMs"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
msgid "DCP"
msgstr ""
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
#, fuzzy
msgid "DCP-o-matic Encode Server"
msgstr "DCP-o-matic konvertor"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr ""
@@ -521,46 +554,46 @@ msgstr ""
msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr ""
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr ""
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr ""
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
"again."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
#, fuzzy
msgid "Disk Writer"
msgstr "DCP-o-matic"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
msgstr ""
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr ""
@@ -573,23 +606,23 @@ msgstr ""
msgid "Don't duplicate"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr ""
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr ""
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr ""
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr ""
@@ -597,41 +630,50 @@ msgstr ""
msgid "Duplicate without saving film"
msgstr ""
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+#, fuzzy
+msgid "Edit..."
+msgstr "&Upraviť"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "Enkódovacie servre..."
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr ""
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+msgid "Examining DCPs"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1446
#, fuzzy
msgid "Export preferences..."
msgstr "Obnoviť pôvodné nastavenia"
-#: src/tools/dcpomatic.cc:1403
+#: src/tools/dcpomatic.cc:1418
#, fuzzy
-msgid "Export subtitles..."
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "&Otvoriť...\tCtrl-O"
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
#, fuzzy
msgid "Export video file...\tCtrl-E"
msgstr "&Otvoriť...\tCtrl-O"
@@ -641,11 +683,11 @@ msgstr "&Otvoriť...\tCtrl-O"
msgid "Export..."
msgstr "&Otvoriť...\tCtrl-O"
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr ""
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, fuzzy, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "Priečinok %s už existuje a nie je prázdny. Chcete pokračovať ?"
@@ -656,7 +698,7 @@ msgstr "Priečinok %s už existuje a nie je prázdny. Chcete pokračovať ?"
msgid "Film changed"
msgstr "Film bol zmenený"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr ""
@@ -665,36 +707,36 @@ msgstr ""
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "Priečinok %s už existuje a nie je prázdny. Chcete pokračovať ?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr ""
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr ""
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "Nápoveda\tCtrl-H"
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
#, fuzzy
msgid "Import preferences..."
msgstr "Obnoviť pôvodné nastavenia"
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr ""
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -707,78 +749,78 @@ msgstr ""
msgid "KDM|Timing"
msgstr ""
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr ""
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
msgid "Loading content"
msgstr ""
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
#, fuzzy
msgid "Make &DKDMs...\tCtrl-D"
msgstr "Vytvoriť &KDM\tCtrl-K"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "Vytvoriť &KDM\tCtrl-K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "Vytvoriť DCP v &batch konvertéri\tCtrl-B"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, fuzzy, c-format
msgid "Make DKDM for %s..."
msgstr "Vytvoriť DKDM pre DCP-o-matic..."
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr ""
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr ""
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Nový...\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
msgstr ""
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr ""
@@ -786,16 +828,16 @@ msgstr ""
msgid "Output"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
#, fuzzy
msgid "Paste settings...\tCtrl-V"
msgstr "&Nastavenia...\tCtrl-P"
@@ -808,89 +850,89 @@ msgstr ""
msgid "Pause/resume"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr ""
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
"for %s."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr ""
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
#, fuzzy
msgid "Quit"
msgstr "&Ukončiť"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr ""
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr ""
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr ""
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "Nahlásiť problém..."
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Obnoviť pôvodné nastavenia"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr ""
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
#, fuzzy
msgid "S&how DCP in Explorer"
msgstr "Z&obraziť DCP"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
#, fuzzy
msgid "S&how DCP in Files"
msgstr "Z&obraziť DCP"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
#, fuzzy
msgid "S&how DCP in Finder"
msgstr "Z&obraziť DCP"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
#, fuzzy
msgid "Save"
msgstr "&Speichern"
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr ""
@@ -912,7 +954,7 @@ msgstr ""
msgid "Save film and duplicate"
msgstr ""
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr ""
@@ -920,16 +962,21 @@ msgstr ""
msgid "Screens"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
#, fuzzy
msgid "Select DCP to open"
msgstr "Vybrať film na otvorenie"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
#, fuzzy
msgid "Select DCP to open as OV"
msgstr "Vybrať film na otvorenie"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "Vybrať film na otvorenie"
+
#: src/tools/dcpomatic_kdm.cc:821
#, fuzzy
msgid "Select DKDM File"
@@ -940,16 +987,16 @@ msgstr "Vybrať film na otvorenie"
msgid "Select DKDM file"
msgstr "Vybrať film na otvorenie"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
#, fuzzy
msgid "Select KDM"
msgstr "Vybrať film na otvorenie"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "Vybrať film na otvorenie"
@@ -957,36 +1004,36 @@ msgstr "Vybrať film na otvorenie"
msgid "Send KDM emails"
msgstr ""
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr ""
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr ""
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr ""
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr ""
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, fuzzy, c-format
msgid "The %s download server could not be contacted."
msgstr "DCP-o-matic download server je nedostupný."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, fuzzy, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -1005,7 +1052,7 @@ msgstr ""
"DCP pre tento film bude zaberať aspoň %.1f Gb a disk, ktorý momentálne "
"používate má len %.1f Gb dostupých. Chete pokračovať ?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr ""
@@ -1023,11 +1070,11 @@ msgid ""
"certificate's validity period. Use a later start time for this KDM."
msgstr ""
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr ""
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1038,7 +1085,7 @@ msgid ""
"configuration before continuing."
msgstr ""
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1048,7 +1095,7 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1060,7 +1107,7 @@ msgid ""
"for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1070,7 +1117,7 @@ msgid ""
"Do you want to re-create the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1080,40 +1127,41 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
-msgstr "Priečinok %1 už existuje a nie je prázdny. Chcete pokračovať ?"
+msgstr "Priečinok {} už existuje a nie je prázdny. Chcete pokračovať ?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
"Close any application that is using it, then try again. (%s)"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
msgstr ""
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, fuzzy, c-format
msgid "There are no new versions of %s available."
msgstr "Žiadne nové verzie DCP-o-matic nie sú dostupné."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr "Ešte sú nie sú dokončené úlohy; chcete skončiť ?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1121,7 +1169,7 @@ msgstr ""
"Tento film bol vytvorený staršou verziou DVD-o-matic a nemusí v tejto verzií "
"fungovať správne. Prosím, skontrolujte nastavenia filmu."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1129,65 +1177,87 @@ msgid ""
"you want to play."
msgstr ""
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:712
msgid "Timing..."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
#, fuzzy
msgid "Tools"
msgstr "&Nástroje"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Nedokončené úlohy"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr ""
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr ""
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+msgid "Verify"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:1041
msgid "Verify DCP"
msgstr ""
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
msgid "Verify DCP..."
msgstr ""
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr ""
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Analýza videa..."
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr ""
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
"DCP that the DKDM was made for, and it cannot be undone. Are you sure?"
msgstr ""
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1199,7 +1269,7 @@ msgid ""
"it is lost your DKDMs (and the DCPs they protect) will become useless."
msgstr ""
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1209,7 +1279,7 @@ msgid ""
"size=\"larger\">BACKED UP</span> if you want to make KDMs for this film."
msgstr ""
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1217,15 +1287,15 @@ msgid ""
"strongly advised to install the 64-bit version of %s."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
diff --git a/src/tools/po/sl_SI.po b/src/tools/po/sl_SI.po
index 86429cf0c..f7d50a00b 100644
--- a/src/tools/po/sl_SI.po
+++ b/src/tools/po/sl_SI.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
"PO-Revision-Date: 2024-02-10 16:05+0100\n"
"Last-Translator: Martin Srebotnjak <miles@filmsi.net>\n"
"Language-Team: \n"
@@ -27,28 +27,28 @@ msgstr "%d KDM, zapisan v %s"
msgid "%d KDMs written to %s"
msgstr "%d KDM-jev, zapisanih v %s"
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, fuzzy, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
-msgstr "%1 že obstaja kot datoteka, zato je ne morete uporabiti za DCP."
+msgstr "{} že obstaja kot datoteka, zato je ne morete uporabiti za DCP."
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, fuzzy, c-format
msgid "%s could not start"
msgstr "DCP-o-matic se ni mogel zagnati"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, fuzzy, c-format
msgid "%s could not start %s"
msgstr "DCP-o-matic se ni mogel zagnati"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, fuzzy, c-format
msgid "%s could not start (%s)"
msgstr "DCP-o-matic se ni mogel zagnati"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, fuzzy, c-format
msgid "%s could not start."
msgstr "DCP-o-matic se ni mogel zagnati"
@@ -57,126 +57,142 @@ msgstr "DCP-o-matic se ni mogel zagnati"
msgid "&Add Film...\tCtrl-A"
msgstr "&Dodaj film...\tKrmilka+A"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr "Dodaj OV ..."
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "&Zapri"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
msgid "&Close\tCtrl-W"
msgstr "&Zapri\tKrmilka+W"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "Ur&edi"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&Izhod"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&Datoteka"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "Po&moč"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&Opravila"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&Izdelaj DCP\tKrmilka+M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&Odpri ...\tKrmilka+O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
#, fuzzy
msgid "&Preferences...\tCtrl-,"
msgstr "&Nastavitve ...\tKrmilka+P"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&Nastavitve ...\tKrmilka+P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&Izhod"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&Shrani\tKrmilka+S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
msgid "&Save frame to file...\tCtrl-S"
msgstr "&Shrani sličico v datoteko ...\tKrmilka+S"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "&Pošlji DCP V TMS"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "O&rodja"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "Po&gled"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr "<b>Seznam predvajanja:</b>"
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr "<b>Seznami predvajanja</b>"
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "O programu"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, fuzzy, c-format
msgid "About %s"
msgstr "O programu"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
msgid "Add"
msgstr "Dodaj"
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
msgid "Add &KDM..."
msgstr "Dodaj &KDM ..."
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "Dodaj &KDM ..."
+
+#: src/tools/dcpomatic_playlist.cc:80
msgid "Add content"
msgstr "Dodaj vsebino"
@@ -196,8 +212,8 @@ msgstr "Dodaj mapo …"
msgid "Add..."
msgstr "Dodaj ..."
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, fuzzy, c-format
msgid ""
"An exception occurred: %s\n"
@@ -207,10 +223,10 @@ msgstr ""
"Prišlo je do izjeme: %s.\n"
"\n"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -220,7 +236,7 @@ msgstr ""
"Prišlo je do izjeme: %s (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -230,8 +246,8 @@ msgstr ""
"Prišlo je do izjeme: %s (%s) (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, fuzzy, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -241,30 +257,30 @@ msgstr ""
"Prišlo je do izjeme: %s.\n"
"\n"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, fuzzy, c-format
msgid "An unknown error has occurred with the %s."
msgstr "Pri strežniku DCP-o-matic je prišlo do neznane napake."
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "Prišlo je do neznane izjeme."
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, fuzzy, c-format
msgid "An unknown exception occurred. %s"
msgstr "Prišlo je do neznane izjeme."
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr "Besedilo pripombe"
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
@@ -272,34 +288,46 @@ msgstr ""
"Ali ste prepričani, da želite obnoviti nastavitve na privzete nastavitve? "
"Tega ni mogoče razveljaviti."
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr "Slaba nastavitev za %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr "CPL"
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "Vsebina CPL ni šifrirana."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "Preveri obstoj posodobitev"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr "Izberite mapo DCP"
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, fuzzy, c-format
msgid "Close %s"
msgstr "&Zapri"
@@ -308,36 +336,36 @@ msgstr "&Zapri"
msgid "Close without saving film"
msgstr "Zapri brez shranjevanje filma"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr "Zaprti napisi ..."
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr "Združi"
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr "Združevanje DCP-jev"
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr "Besedilo naslova vsebine"
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
#, fuzzy
msgid "Copy DCPs"
msgstr "Kopiraj DCP"
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "Kopiraj nastavitve\tKrmilka+C"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr "Za shranjevanje filma ni bilo mogoče ustvariti mape."
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
@@ -345,15 +373,15 @@ msgstr ""
"DKDM ni bilo mogoče dešifrirati. Morda ni bil ustvarjen s pravilnim "
"potrdilom."
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
msgid "Could not duplicate project."
msgstr "Projekta ni mogoče podvojiti."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "Paketnega pretvornika ni mogoče najti."
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
msgid "Could not find player."
msgstr "Predvajalnika ni mogoče najti."
@@ -366,21 +394,21 @@ msgstr ""
"Novim paketnim obdelavam ni bilo mogoče prisluhniti. Morda se izvaja še en "
"primerek paketnega pretvornika DCP-o-matic."
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
msgid "Could not load DCP"
msgstr "DCP-ja ni mogoče naložiti."
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, fuzzy, c-format
msgid "Could not load DCP %s"
-msgstr "DCP-ja %1 ni bilo mogoče naložiti."
+msgstr "DCP-ja {} ni bilo mogoče naložiti."
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, fuzzy, c-format
msgid "Could not load DCP %s."
-msgstr "DCP-ja %1 ni bilo mogoče naložiti."
+msgstr "DCP-ja {} ni bilo mogoče naložiti."
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, c-format
msgid ""
"Could not load DCP.\n"
@@ -391,40 +419,42 @@ msgstr ""
"\n"
"%s."
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "KDM ni bilo mogoče naložiti."
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr "DCP-ja ni bilo mogoče naložiti iz %s"
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
-msgstr "Filma %1 ni bilo mogoče naložiti"
+#, c++-format
+msgid "Could not load film {}"
+msgstr "Filma {} ni bilo mogoče naložiti"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "Filma %1 (%2) ni bilo mogoče naložiti"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "Filma {} ({}) ni bilo mogoče naložiti"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, fuzzy, c-format
msgid "Could not load stress test file %s"
-msgstr "Filma %1 ni bilo mogoče naložiti"
+msgstr "Filma {} ni bilo mogoče naložiti"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr "DCP-ja ni bilo mogoče izdelati."
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, c-format
msgid "Could not open film at %s"
msgstr "Ni bilo mogoče odpreti filma na %s"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, fuzzy, c-format
msgid "Could not open this folder as a %s project."
msgstr "Te mape ni bilo mogoče odpreti kot projekta DCP-o-matic."
@@ -437,7 +467,7 @@ msgstr ""
"Datoteke ni bilo mogoče prebrati kot KDM. Prevelika je. Preverite, ali "
"nalagate datoteko DKDM (XML)."
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
@@ -445,23 +475,23 @@ msgstr ""
"Datoteke ni bilo mogoče prebrati kot KDM. Morda je slabo oblikovana ali pa "
"sploh ni KDM."
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr "Obstoječe datoteke z nastavitvami ni bilo mogoče odstraniti"
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
msgid "Could not save project."
msgstr "Projekta ni mogoče shraniti."
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
msgid "Could not save template."
msgstr "Predloge ni mogoče shraniti."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "DCP ni mogoče pokazati."
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
@@ -469,15 +499,15 @@ msgstr ""
"Paketnega pretvornika ni bilo mogoče zagnati. Morda ga boste morali "
"prenesti z dcpomatic.com."
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
"Predvajalnika ni bilo mogoče zagnati. Morda ga boste morali prenesti z "
"dcpomatic.com."
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
@@ -485,7 +515,7 @@ msgstr ""
"V prilagoditveno datoteko ni bilo mogoče pisati pri %s. Spremembe niso bile "
"shranjene."
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
msgid "Could not write to config file. Your changes have not been saved."
msgstr ""
"V prilagoditveno datoteko ni bilo mogoče pisati. Spremembe niso bile "
@@ -495,23 +525,27 @@ msgstr ""
msgid "Create KDMs"
msgstr "Ustvari KDM-je"
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr "Ustvarjalec"
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
msgid "DCP"
msgstr "DCP"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
msgstr "Strežnik kodiranja DCP-o-matic"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr "DCP-ji so bili uspešno združeni."
@@ -524,23 +558,23 @@ msgstr "DKDM"
msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr "DKDM %s je že na seznamu DKDM in ne bo ponovno dodan."
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr "Dekodiranje pri polni ločljivosti"
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr "Dekodiranje pri polovični ločljivosti"
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr "Dekodiranje pri četrtinski ločljivosti"
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr "Izbriši"
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, fuzzy, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
@@ -549,17 +583,17 @@ msgstr ""
"Ali ste namestili DCP-o-matic Disk Writer.pkg iz .dmg? Preverite in "
"poskusite znova."
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
#, fuzzy
msgid "Disk Writer"
msgstr "Zapisovalec na disk DCP-o-matic"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr "Ne naredi ničesar"
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
@@ -567,7 +601,7 @@ msgstr ""
"Ali vidite pogovorno okno »Nadzor uporabniških računov« z vprašanjem o "
"dcpomatic2_disk_writer.exe? Če je tako, kliknite »Da« in poskusite znova."
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr "Ali želite prepisati obstoječi DCP %s?"
@@ -580,23 +614,23 @@ msgstr "Ne zapri"
msgid "Don't duplicate"
msgstr "Ne podvoji"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr "Navzdol"
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr "Pogon"
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr "Dvojni zaslon\tDvigalka+F11"
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "Podvoji film"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "Podvoji in odpri ..."
@@ -604,39 +638,50 @@ msgstr "Podvoji in odpri ..."
msgid "Duplicate without saving film"
msgstr "Podvoji brez shranjevanje filma"
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "Podvoji …"
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr "Trajanje"
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr "Uredi kolut"
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+#, fuzzy
+msgid "Edit..."
+msgstr "Ur&edi"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "Strežniki kodiranja ..."
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr "Šifrirano"
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr "Vstopna točka"
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+#, fuzzy
+msgid "Examining DCPs"
+msgstr "Združevanje DCP-jev"
+
+#: src/tools/dcpomatic.cc:1446
msgid "Export preferences..."
msgstr "Nastavitve izvoza ..."
-#: src/tools/dcpomatic.cc:1403
-msgid "Export subtitles..."
+#: src/tools/dcpomatic.cc:1418
+#, fuzzy
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "Izvozi podnaslove ..."
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
msgid "Export video file...\tCtrl-E"
msgstr "Izvozi video datoteko ...\tKrmilka+E"
@@ -644,11 +689,11 @@ msgstr "Izvozi video datoteko ...\tKrmilka+E"
msgid "Export..."
msgstr "Izvozi ..."
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr ""
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "Datoteka %s že obstaja. Ali jo želite prepisati?"
@@ -659,7 +704,7 @@ msgstr "Datoteka %s že obstaja. Ali jo želite prepisati?"
msgid "Film changed"
msgstr "Film je spremenjen"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr ""
@@ -668,36 +713,36 @@ msgstr ""
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "Mapa %s že obstaja. Ali jo želite prepisati?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "Sličic na sekundo"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr "Celozaslonsko\tF11"
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "Namigi ..."
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
#, fuzzy
msgid "Import preferences..."
msgstr "Nastavitve izvoza ..."
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr "Vhodni DCP"
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr "Lastno trajanje"
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr "Izdajatelj"
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, fuzzy, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -713,68 +758,68 @@ msgstr ""
msgid "KDM|Timing"
msgstr "KDM|Časovna usklajenost"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr "Dolžina"
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
msgid "Loading content"
msgstr "Nalaganje vsebine"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
msgid "Make &DKDMs...\tCtrl-D"
msgstr "Naredi &DKDM-je …\tKrmilka+D"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "Naredi &KDM-je ...\tKrmilka+K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "Naredi DCP s &paketnim pretvornikom\tKrmilka+B"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, fuzzy, c-format
msgid "Make DKDM for %s..."
msgstr "Naredi DKDM za DCP-o-matic ..."
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr "Upravljaj predloge …"
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr "Ime"
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr "Nov"
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "Nov film"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr "Nov seznam predvajanja"
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Nov ...\tKrmilka+N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
msgstr ""
"V tej mapi ni mogoče najti ASSETMAP ali ASSETMAP.xml. Izberite mapo DCP."
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
@@ -782,11 +827,11 @@ msgstr ""
"V nastavitvah ni navedena nobena mapa seznama predvajanja. Nastavite eno in "
"poskusite znova."
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr "Odpri DCP v &predvajalniku"
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr "Odprite DCP z uporabo ukaza Datoteka -> Odpri"
@@ -794,16 +839,16 @@ msgstr "Odprite DCP z uporabo ukaza Datoteka -> Odpri"
msgid "Output"
msgstr "Izhod"
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr "Izhodna mapa DCP"
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "Prilepi nastavitve ...\tKrmilka+V"
@@ -815,11 +860,11 @@ msgstr "Začasno ustavite ali nadaljujte s pretvorbo"
msgid "Pause/resume"
msgstr "Premor / nadaljuj"
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr "Slika"
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, fuzzy, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
@@ -828,74 +873,74 @@ msgstr ""
"Preverite, če za DCP-o-matic ni omogočen dostop do mape pod nadzorom sistema "
"Windows."
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr "Vprašanje|N"
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr "Vprašanje|D"
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
#, fuzzy
msgid "Quit"
msgstr "&Izhod"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr "Ponovno izdelaj verigo za dešifriranje KDM"
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr "Ponovno izdelaj potrdila za podpisovanje"
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr "Koluti"
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr "Osveži"
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr "Opombe ob izdaji"
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "Odstrani"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "Prijavi težavo ..."
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Obnovi privzete nastavitve"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr ""
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
msgid "S&how DCP in Explorer"
msgstr "P&okaži DCP v Raziskovalcu"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
msgid "S&how DCP in Files"
msgstr "Po&kaži DCP v Datotekah"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
msgid "S&how DCP in Finder"
msgstr "P&okaži DCP v Finderju"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
msgid "Save"
msgstr "Shrani"
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr "Shrani kot pred&logo ..."
@@ -917,7 +962,7 @@ msgstr "Shrani film in zapri"
msgid "Save film and duplicate"
msgstr "Shrani film in podvoji"
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr "Shrani sličico v datoteko"
@@ -925,14 +970,19 @@ msgstr "Shrani sličico v datoteko"
msgid "Screens"
msgstr "Platna"
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr "Izberite DCP za odpiranje"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr "Izberite DCP, da ga odprete kot OV"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "Izberite KDM"
+
#: src/tools/dcpomatic_kdm.cc:821
msgid "Select DKDM File"
msgstr "Izberite datoteko DKDM"
@@ -941,15 +991,15 @@ msgstr "Izberite datoteko DKDM"
msgid "Select DKDM file"
msgstr "Izberite datoteko DKDM"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr "Izberite KDM"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr "Izberi vse Dvigalka+krmilka+A"
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "Izberite film, ki ga želite odpreti"
@@ -957,36 +1007,36 @@ msgstr "Izberite film, ki ga želite odpreti"
msgid "Send KDM emails"
msgstr "Pošiljanje e-sporočila KDM"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr "Nastavi ločljivost dekodiranja, tako da se ujema s prikazanim"
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr "Zvok"
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr "Navedite datoteko ZIP"
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr "Podnaslov"
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr "Podatki o sistemu …"
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, fuzzy, c-format
msgid "The %s download server could not be contacted."
msgstr "S strežnikom za prenos DCP-o-matic ni bilo mogoče stopiti v stik."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -1006,7 +1056,7 @@ msgstr ""
"%.1f GB prostora. Na diskih, ki jih uporabljate, je na voljo %.1f GB "
"prostora. Ali želite kljub temu dodati ta film v čakalno vrsto?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr "KDM trenutno ne omogoča predvajanja te vsebine."
@@ -1029,11 +1079,11 @@ msgstr ""
"Začetek obdobja KDM je pred (ali blizu) začetkom veljavnosti potrdila o "
"podpisovanju. Uporabite kasnejši začetni čas za ta KDM."
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr "Veriga potrdil za podpisovanje ni veljavna"
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1051,7 +1101,7 @@ msgstr ""
"Morda je smiselno,\n"
"da izberete »Ne« in varnostno kopirate svoje nastavitve, preden nadaljujete."
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1066,7 +1116,7 @@ msgstr ""
"Ali želite ponovno ustvariti\n"
"verigo potrdil za podpisovanje DCP-jev in KDM-jev?"
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1085,7 +1135,7 @@ msgstr ""
"verigo potrdil\n"
"za podpisovanje DCP-jev in KDM-jev?"
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1101,7 +1151,7 @@ msgstr ""
"Ali želite ponovno ustvariti verigo potrdil za podpisovanje DCP-jev in KDM-"
"jev?"
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1117,18 +1167,19 @@ msgstr ""
"Ali želite ponovno ustvariti verigo potrdil za podpisovanje DCP-jev in KDM-"
"jev?"
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
msgstr ""
-"Mapa %1 že obstaja in ni prazna; ali ste prepričani, da jo želite uporabiti?"
+"Mapa {} že obstaja in ni prazna; ali ste prepričani, da jo želite uporabiti?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr "Disk, ki ste ga izbrali, ni več na voljo. Izberite drugega."
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
@@ -1137,7 +1188,7 @@ msgstr ""
"Pogona %s ni možno odklopiti.\n"
"Zaprite vse programe, ki ga uporabljajo, nato poskusite znova (%s)."
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
@@ -1145,19 +1196,19 @@ msgstr ""
"Obstoječe prilagoditve ni bilo mogoče naložiti. Namesto tega bodo "
"uporabljene privzete vrednosti. To lahko terja kratek čas za ustvarjanje."
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, fuzzy, c-format
msgid "There are no new versions of %s available."
msgstr "Na voljo ni novih različic programa DCP-o-matic."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr ""
"Obstajajo nedokončana opravila; ali ste prepričani, da želite zapustiti "
"program?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1166,7 +1217,7 @@ msgstr ""
"tej različici morda ne bo pravilno naložil. Skrbno preverite nastavitve "
"filma."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, fuzzy, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1177,58 +1228,82 @@ msgstr ""
"predvajalnik. Izberite mapo DCP znotraj projektne mape DCP-o-matic, če "
"želite to predvajati."
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:712
msgid "Timing..."
msgstr "Časovna usklajenost …"
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
msgid "Tools"
msgstr "Orodja"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr "Poskusite odstraniti %s znakov iz imena mape."
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr "Vrsta"
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Nedokončana opravila"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr "Odstrani namestitev …"
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr "Navzgor"
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+#, fuzzy
+msgid "Verify"
+msgstr "Preveri DCP ..."
+
+#: src/tools/dcpomatic_player.cc:1041
#, fuzzy
msgid "Verify DCP"
msgstr "Preveri DCP ..."
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
msgid "Verify DCP..."
msgstr "Preveri DCP ..."
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr ""
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Signalna oblika videa …"
+#: src/tools/dcpomatic_verifier.cc:194
+#, fuzzy
+msgid "Write logs to DCP folders"
+msgstr "Izberite mapo DCP"
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
@@ -1237,7 +1312,7 @@ msgstr ""
"Odstranili boste DKDM. Tako bo nemogoče dešifrirati DCP, za kar je bil "
"narejen DKDM, česar ni mogoče razveljaviti. Ali ste prepričani?"
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1256,7 +1331,7 @@ msgstr ""
"weight=\"bold\" size=\"larger\">DA VARNOSTNO KOPIRATE TO DATOTEKO</span>, "
"ker če izgubite DKDM (in DCP-ji, ki jih ščitijo), bodo postali neuporabni."
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1273,7 +1348,7 @@ msgstr ""
"Če želite narediti KDM-je za tafilm, morate zagotoviti, da so te datoteke "
"<span weight=\"bold\" size=\"larger\">VARNOSTNO KOPIRANE</span>."
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, fuzzy, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1285,7 +1360,7 @@ msgstr ""
"lahko povzroči napake. Svetujemo vam, da namestite 64-bitno različico DCP-o-"
"matic."
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
@@ -1293,14 +1368,18 @@ msgstr ""
"Niste pravilno potrdili, da ste prebrali pravkar prikazano opozorilo. "
"Poskusite znova."
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
msgstr "Mape niste izbrali. Preden kliknete Odpri, izberite mapo."
+#, fuzzy
+#~ msgid "Choose a folder"
+#~ msgstr "Izberite mapo DCP"
+
#, fuzzy, c-format
#~ msgid ""
#~ "You did not correctly confirm that you read the warning that was just "
diff --git a/src/tools/po/sv_SE.po b/src/tools/po/sv_SE.po
index 007b5228e..cf4d20c9c 100644
--- a/src/tools/po/sv_SE.po
+++ b/src/tools/po/sv_SE.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: DCP-o-matic\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
"PO-Revision-Date: 2021-05-28 14:44+0200\n"
"Last-Translator: Mattias Mattsson <vitplister@gmail.com>\n"
"Language-Team: \n"
@@ -27,28 +27,28 @@ msgstr "%d KDM skriven till %s"
msgid "%d KDMs written to %s"
msgstr "%d KDM:er skrivna till %s"
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, fuzzy, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
-msgstr "%1 finns redan som fil, så du kan inte använda den för en ny film."
+msgstr "{} finns redan som fil, så du kan inte använda den för en ny film."
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, fuzzy, c-format
msgid "%s could not start"
msgstr "DCP-o-matic kunde inte starta"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, fuzzy, c-format
msgid "%s could not start %s"
msgstr "DCP-o-matic kunde inte starta"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, fuzzy, c-format
msgid "%s could not start (%s)"
msgstr "DCP-o-matic kunde inte starta"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, fuzzy, c-format
msgid "%s could not start."
msgstr "DCP-o-matic kunde inte starta"
@@ -57,127 +57,143 @@ msgstr "DCP-o-matic kunde inte starta"
msgid "&Add Film...\tCtrl-A"
msgstr "&Lägg till film...\tCtrl-A"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr "&Lägg till OV..."
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "&Stäng"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
msgid "&Close\tCtrl-W"
msgstr "&Stäng\tCtrl-W"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "&Redigera"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&Avsluta"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&Arkiv"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "&Hjälp"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&Jobb"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&Gör DCP\tCtrl-M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&Öppna...\tCtrl-O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
#, fuzzy
msgid "&Preferences...\tCtrl-,"
msgstr "&Inställningar...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&Inställningar...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&Avsluta"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&Spara\tCtrl-S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
#, fuzzy
msgid "&Save frame to file...\tCtrl-S"
msgstr "Exportera till videofil…\tCtrl-E"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "&Skicka DCP till TMS"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "&Verktyg"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "&Visa"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr "<b>Spellista:</b>"
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr "<b>Playlistor</b>"
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "Om"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, fuzzy, c-format
msgid "About %s"
msgstr "Om"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
msgid "Add"
msgstr "Lägg till"
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
msgid "Add &KDM..."
msgstr "&Lägg till KDM..."
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "&Lägg till KDM..."
+
+#: src/tools/dcpomatic_playlist.cc:80
msgid "Add content"
msgstr "Lägg till källmaterial"
@@ -198,8 +214,8 @@ msgstr "Lägg till mapp..."
msgid "Add..."
msgstr "Lägg till..."
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, fuzzy, c-format
msgid ""
"An exception occurred: %s\n"
@@ -209,10 +225,10 @@ msgstr ""
"Ett fel inträffade: %s.\n"
"\n"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -222,7 +238,7 @@ msgstr ""
"Ett fel inträffade: %s (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -232,8 +248,8 @@ msgstr ""
"Ett undantag inträffade: %s (%s) (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, fuzzy, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -243,30 +259,30 @@ msgstr ""
"Ett fel inträffade: %s.\n"
"\n"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, fuzzy, c-format
msgid "An unknown error has occurred with the %s."
msgstr "Ett okänt fel har inträffat i DCP-o-matic servern."
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "Ett okänt fel inträffade."
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, fuzzy, c-format
msgid "An unknown exception occurred. %s"
msgstr "Ett okänt fel inträffade."
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr ""
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
@@ -274,34 +290,46 @@ msgstr ""
"Är du säker att du vill återställa inställningarna till sina "
"ursprungsvärden? Detta kan inte ångras."
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr "Felaktig inställning för %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr "CPL"
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "CPL:ens innehåll är inte krypterat."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "Leta efter uppdateringar"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr ""
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, fuzzy, c-format
msgid "Close %s"
msgstr "&Stäng"
@@ -310,51 +338,51 @@ msgstr "&Stäng"
msgid "Close without saving film"
msgstr "Avsluta utan att spara film"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr "Dolda undertexter..."
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr ""
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "Kopiera inställningar\tCtrl-C"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr "Kunde inte skapa mapp för att spara film."
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
msgstr ""
"Kunde inte dekryptera DKDM:en. Den skapades kanske inte med rätt certifikat."
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
#, fuzzy
msgid "Could not duplicate project."
msgstr "Kunde inte hitta DCP-o-matic Player."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "Kunde inte hitta DCP-o-matic batchkonverterare."
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
msgid "Could not find player."
msgstr "Kunde inte hitta DCP-o-matic Player."
@@ -365,21 +393,21 @@ msgid ""
"running."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
msgid "Could not load DCP"
msgstr "Kunde inte ladda DCP"
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, fuzzy, c-format
msgid "Could not load DCP %s"
-msgstr "Kunde inte ladda DCP %1."
+msgstr "Kunde inte ladda DCP {}."
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, fuzzy, c-format
msgid "Could not load DCP %s."
-msgstr "Kunde inte ladda DCP %1."
+msgstr "Kunde inte ladda DCP {}."
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, c-format
msgid ""
"Could not load DCP.\n"
@@ -390,40 +418,42 @@ msgstr ""
"\n"
"%s."
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "Kunde inte ladda KDM."
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr "Kunde inte ladda DCP från %s"
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
-msgstr "Kunde inte ladda film %1"
+#, c++-format
+msgid "Could not load film {}"
+msgstr "Kunde inte ladda film {}"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "Kunde inte ladda film %1 (%2)"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "Kunde inte ladda film {} ({})"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, fuzzy, c-format
msgid "Could not load stress test file %s"
-msgstr "Kunde inte ladda film %1"
+msgstr "Kunde inte ladda film {}"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr "Kunde inte göra DCP."
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, c-format
msgid "Could not open film at %s"
msgstr "Kunde inte öppna filmen vid %s"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, fuzzy, c-format
msgid "Could not open this folder as a %s project."
msgstr "Kunde inte öppna denna mapp som ett DCP-o-matic-projekt."
@@ -436,7 +466,7 @@ msgstr ""
"Kunde inte läsa filen som en KDM. Den är alldeles för stor. Säkerställ att "
"det är en DKDM (XML) fil du försöker öppna."
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
@@ -444,25 +474,25 @@ msgstr ""
"Kunde inte läsa filen som en KDM. Den kanske är dåligt formatterad eller "
"inte alls en KDM."
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr ""
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
#, fuzzy
msgid "Could not save project."
msgstr "Kunde inte göra DCP."
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
#, fuzzy
msgid "Could not save template."
msgstr "Kunde inte hitta DCP-o-matic Player."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "Kunde inte visa DCP."
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
@@ -470,15 +500,15 @@ msgstr ""
"Kunde inte starta DCP-o-matic Batch Converter. Du kan behöva ladda ner den "
"från dcpomatic.com."
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
"Kunde inte starta DCP-o-matic Player. Du kan behöva ladda ner den från "
"dcpomatic.com."
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
@@ -486,7 +516,7 @@ msgstr ""
"Kunde inte skriva till inställningsfilen i %s. Dina ändringar har inte "
"sparats."
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
msgid "Could not write to config file. Your changes have not been saved."
msgstr ""
"Kunde inte skriva till inställningsfilen i %s. Dina ändringar har inte "
@@ -496,24 +526,28 @@ msgstr ""
msgid "Create KDMs"
msgstr "Gör KDM:er"
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
#, fuzzy
msgid "DCP"
msgstr "CPL"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
msgstr "DCP-o-matic Encode Server"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr ""
@@ -526,46 +560,46 @@ msgstr "DKDM"
msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr ""
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr "Avkoda i full upplösning"
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr "Avkoda i halv upplösning"
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr "Avkoda i kvarts upplösning"
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr "Ta bort"
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
"again."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
#, fuzzy
msgid "Disk Writer"
msgstr "DCP-o-matic KDM-skapare"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr "Gör inget"
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
msgstr ""
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr "Vill du skriva över den befintliga DCP:n %s?"
@@ -578,23 +612,23 @@ msgstr "Stäng ej"
msgid "Don't duplicate"
msgstr "Gör ingen kopia"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr "Ner"
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr ""
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr "Delad skärm\tShift+F11"
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "Duplicera film"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "Duplicera och öppna..."
@@ -602,40 +636,50 @@ msgstr "Duplicera och öppna..."
msgid "Duplicate without saving film"
msgstr "Duplicera utan att spara film"
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "Duplicera..."
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+#, fuzzy
+msgid "Edit..."
+msgstr "&Redigera"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "Kodningsservrar..."
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr "Kryptera"
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr ""
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+msgid "Examining DCPs"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1446
#, fuzzy
msgid "Export preferences..."
msgstr "Återställ ursprungliga inställningar"
-#: src/tools/dcpomatic.cc:1403
-msgid "Export subtitles..."
+#: src/tools/dcpomatic.cc:1418
+#, fuzzy
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "Exportera undertexter..."
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
msgid "Export video file...\tCtrl-E"
msgstr "Exportera till videofil…\tCtrl-E"
@@ -643,11 +687,11 @@ msgstr "Exportera till videofil…\tCtrl-E"
msgid "Export..."
msgstr "Exportera..."
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr ""
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "Filen %s finns redan. Vill du skriva över den?"
@@ -658,7 +702,7 @@ msgstr "Filen %s finns redan. Vill du skriva över den?"
msgid "Film changed"
msgstr "Film ändrad"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr ""
@@ -667,36 +711,36 @@ msgstr ""
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "Filen %s finns redan. Vill du skriva över den?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "Bilder per sekund"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr "Fullskärm\tF11"
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "Tips..."
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
#, fuzzy
msgid "Import preferences..."
msgstr "Återställ ursprungliga inställningar"
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr ""
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, fuzzy, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -713,78 +757,78 @@ msgstr ""
msgid "KDM|Timing"
msgstr "Tajming"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr "Speltid"
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
msgid "Loading content"
msgstr "Laddar källmaterial"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
msgid "Make &DKDMs...\tCtrl-D"
msgstr "Gör &DKDM:er...\tCtrl-D"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "Gör &KDM:er...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "Gör DCP i batch-konverteraren\tCtrl-B"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, fuzzy, c-format
msgid "Make DKDM for %s..."
msgstr "Gör DKDM för DCP-o-matic..."
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr "Hantera mallar..."
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr "Namn"
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr "Ny"
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "Ny film"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr "Ny spellista"
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Ny...\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
msgstr ""
"Ingen mapp för spellistor är i inställningar. Ange en mapp och försök igen."
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr "Öppna DCP i &spelaren"
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr ""
@@ -792,16 +836,16 @@ msgstr ""
msgid "Output"
msgstr "Output"
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "Klistra in inställningar...\tCtrl-V"
@@ -813,11 +857,11 @@ msgstr ""
msgid "Pause/resume"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr ""
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, fuzzy, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
@@ -826,75 +870,75 @@ msgstr ""
"Kontrollera att du inte har Windows \"styrda mappar\" aktriverade för DCP-o-"
"matic."
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr "N"
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr "J"
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
#, fuzzy
msgid "Quit"
msgstr "&Avsluta"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr "Återskapa KDM dekrypteringskedja"
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr "Återskapa signeringscertifikat"
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr ""
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "Ta bort"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "Rapportera ett problem..."
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Återställ ursprungliga inställningar"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr ""
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
msgid "S&how DCP in Explorer"
msgstr "&Visa DCP in Utforskaren"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
msgid "S&how DCP in Files"
msgstr "&Visa DCP in Filer"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
msgid "S&how DCP in Finder"
msgstr "S&how DCP in Finder"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
#, fuzzy
msgid "Save"
msgstr "&Spara"
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr "Spara som &mall..."
@@ -916,7 +960,7 @@ msgstr "Spara film och avsluta"
msgid "Save film and duplicate"
msgstr "Spara film och duplicera"
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr ""
@@ -924,14 +968,19 @@ msgstr ""
msgid "Screens"
msgstr "Salonger"
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr "Välj DCP att öppna"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr "Välj DCP att öppna som OV"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "Välj KDM"
+
#: src/tools/dcpomatic_kdm.cc:821
msgid "Select DKDM File"
msgstr "Välj DKDM-fil"
@@ -940,15 +989,15 @@ msgstr "Välj DKDM-fil"
msgid "Select DKDM file"
msgstr "Välj DKDM-fil"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr "Välj KDM"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr "Välj allt\tShift-Ctrl-A"
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "Välj film att öppna"
@@ -956,36 +1005,36 @@ msgstr "Välj film att öppna"
msgid "Send KDM emails"
msgstr "Skicka KDM-epost"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr "Sätt avkodningsupplösning att matcha bildskärmen"
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr ""
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr ""
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr ""
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr "Systeminformation..."
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, fuzzy, c-format
msgid "The %s download server could not be contacted."
msgstr "DCP-o-matics nedladdningsserver kunde inte kontaktas."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -1004,7 +1053,7 @@ msgstr ""
"DCP:n för denna film kommer att uppta ungefär %.1f GB. Disken du använder "
"har bara %.1f GB ledigt. Vill du fortsätta ändå?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr "KDM:en tillåter inte uppspelning av DCP:n vid denna tidpunkt."
@@ -1022,11 +1071,11 @@ msgid ""
"certificate's validity period. Use a later start time for this KDM."
msgstr ""
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr ""
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1044,7 +1093,7 @@ msgstr ""
"svara \"Nej\" här och\n"
"ta backup på dina inställningar innan du fortsätter."
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1059,7 +1108,7 @@ msgstr ""
"DCP:er\n"
"och KDM:er?"
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1076,7 +1125,7 @@ msgstr ""
"DCP:er\n"
"och KDM:er?"
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1091,7 +1140,7 @@ msgstr ""
"DCP:er\n"
"och KDM:er?"
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, fuzzy, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1108,26 +1157,27 @@ msgstr ""
"av\n"
"DCP:er och KDM:er?"
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
msgstr ""
-"Foldern %1 finns redan och är inte tom. Är du säker på att du vill använda "
+"Foldern {} finns redan och är inte tom. Är du säker på att du vill använda "
"den?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
"Close any application that is using it, then try again. (%s)"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
@@ -1135,17 +1185,17 @@ msgstr ""
"De nuvaranda inställningarna kan inte laddas. Standardvärden kommer att "
"används istället. Dessa kan ta en kort stund att återskapa."
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, fuzzy, c-format
msgid "There are no new versions of %s available."
msgstr "Det finns inga nya versioner av DCP-o-matic tillgängliga."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr "Det finns oasvlutade jobb; är du säker på att du vill avsluta?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1153,7 +1203,7 @@ msgstr ""
"Denna film skapades i en gammal version av DVD-o-matic och läses kanske in "
"felaktigt i denna version. Kontrollera alla inställningarn noggrant."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, fuzzy, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1164,59 +1214,82 @@ msgstr ""
"spelaren. Välj DCP-foldern i DCP-o-matic projektfoldern om det är vad du "
"vill spela."
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:712
msgid "Timing..."
msgstr "Tajming..."
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
#, fuzzy
msgid "Tools"
msgstr "&Verktyg"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr "Försök med att ta bort %s-tecken från ditt mappnamn."
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr "Typ"
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Oavslutade jobb"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr ""
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr "Upp"
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+#, fuzzy
+msgid "Verify"
+msgstr "Verifiera DCP..."
+
+#: src/tools/dcpomatic_player.cc:1041
#, fuzzy
msgid "Verify DCP"
msgstr "Verifiera DCP..."
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
msgid "Verify DCP..."
msgstr "Verifiera DCP..."
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr ""
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Video-vågform..."
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr ""
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
@@ -1225,7 +1298,7 @@ msgstr ""
"Du är på väg att ta bort en DKDM. Detta kommer göra det omöjligt att "
"dekryptera DCP:n som DKDM gjordes för. Detta kan inte ångras. Är du säker?"
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1245,7 +1318,7 @@ msgstr ""
"du tappar bort den så blir dina DKDM:er (och DCP:erna som de skyddar) helt "
"oanvändbara."
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1262,7 +1335,7 @@ msgstr ""
"size=\"larger\">SÄKERHETSKOPIERADE</span> om du vill skapa KDM:er för denna "
"film."
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, fuzzy, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1274,15 +1347,15 @@ msgstr ""
"fel. Du är starkt rekommenderad att installera 64-bitarsversionen av DCP-o-"
"matic."
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
@@ -1407,5 +1480,5 @@ msgstr "Du har inte valt en mapp. Välj en mapp innan du klickar på öppna."
#~ msgid "&Analyse audio"
#~ msgstr "&Analysera audio"
-#~ msgid "The directory %1 already exists."
-#~ msgstr "Katalogen %1 finns redan."
+#~ msgid "The directory {} already exists."
+#~ msgstr "Katalogen {} finns redan."
diff --git a/src/tools/po/tr_TR.po b/src/tools/po/tr_TR.po
index 775f7a2e5..1b51f42b6 100644
--- a/src/tools/po/tr_TR.po
+++ b/src/tools/po/tr_TR.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: DCP-o-matic FRENCH\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
"PO-Revision-Date: 2019-03-27 13:18+0200\n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -28,28 +28,28 @@ msgstr ""
msgid "%d KDMs written to %s"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, fuzzy, c-format
msgid "%s could not start"
msgstr "DCP-o-matic başlayamadı"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, fuzzy, c-format
msgid "%s could not start %s"
msgstr "DCP-o-matic başlayamadı"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, fuzzy, c-format
msgid "%s could not start (%s)"
msgstr "DCP-o-matic başlayamadı"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, fuzzy, c-format
msgid "%s could not start."
msgstr "DCP-o-matic başlayamadı"
@@ -58,128 +58,144 @@ msgstr "DCP-o-matic başlayamadı"
msgid "&Add Film...\tCtrl-A"
msgstr "Filmi ekle"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr ""
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "Kapat"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
msgid "&Close\tCtrl-W"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "Düzenle"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "Çıkış"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "Dosya"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "Yardım"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "Görevler"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "DCP Yap"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "Aç"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
#, fuzzy
msgid "&Preferences...\tCtrl-,"
msgstr "Seçenekler"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "Seçenekler"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "Çıkış"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "Kaydet"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
#, fuzzy
msgid "&Save frame to file...\tCtrl-S"
msgstr "Çıktı"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "DCP'yi TMS'e gönder"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "Araçlar"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "Görüntüle"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "Hakkında"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, fuzzy, c-format
msgid "About %s"
msgstr "Hakkında"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
msgid "Add"
msgstr "Ekle"
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
#, fuzzy
msgid "Add &KDM..."
msgstr "KDM ekle."
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "KDM ekle."
+
+#: src/tools/dcpomatic_playlist.cc:80
msgid "Add content"
msgstr "İçerik ekle"
@@ -200,8 +216,8 @@ msgstr "Klasör ekle..."
msgid "Add..."
msgstr "Ekle..."
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, c-format
msgid ""
"An exception occurred: %s\n"
@@ -209,10 +225,10 @@ msgid ""
"%s"
msgstr ""
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -220,7 +236,7 @@ msgid ""
"%s"
msgstr ""
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -228,8 +244,8 @@ msgid ""
"%s"
msgstr ""
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -237,63 +253,75 @@ msgid ""
"%s"
msgstr ""
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, c-format
msgid "An unknown error has occurred with the %s."
msgstr ""
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr ""
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, c-format
msgid "An unknown exception occurred. %s"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr ""
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
msgstr ""
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr ""
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr ""
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, fuzzy, c-format
msgid "Close %s"
msgstr "Kapat"
@@ -302,50 +330,50 @@ msgstr "Kapat"
msgid "Close without saving film"
msgstr "Filmi kaydetmeden kapat"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr "Closed captions..."
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr ""
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "Ayarları kopyala"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
msgstr ""
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
#, fuzzy
msgid "Could not duplicate project."
msgstr "Oynatıcı bulunamıyor."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr ""
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
msgid "Could not find player."
msgstr "Oynatıcı bulunamıyor."
@@ -356,22 +384,22 @@ msgid ""
"running."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
#, fuzzy
msgid "Could not load DCP"
msgstr "KDM yüklenemedi."
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, fuzzy, c-format
msgid "Could not load DCP %s"
msgstr "KDM yüklenemedi."
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, fuzzy, c-format
msgid "Could not load DCP %s."
msgstr "KDM yüklenemedi."
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, fuzzy, c-format
msgid ""
"Could not load DCP.\n"
@@ -379,40 +407,42 @@ msgid ""
"%s."
msgstr "KDM yüklenemedi."
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "KDM yüklenemedi."
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr ""
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
+#, c++-format
+msgid "Could not load film {}"
msgstr ""
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
msgstr ""
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, c-format
msgid "Could not load stress test file %s"
msgstr ""
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, c-format
msgid "Could not open film at %s"
msgstr ""
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, fuzzy, c-format
msgid "Could not open this folder as a %s project."
msgstr "Oynatıcı bulunamıyor."
@@ -423,49 +453,49 @@ msgid ""
"loading a DKDM (XML) file."
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
msgstr ""
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr ""
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
#, fuzzy
msgid "Could not save project."
msgstr "Oynatıcı bulunamıyor."
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
#, fuzzy
msgid "Could not save template."
msgstr "Oynatıcı bulunamıyor."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "DCP gösterilemiyor."
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
msgstr ""
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
msgstr ""
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
msgid "Could not write to config file. Your changes have not been saved."
msgstr ""
@@ -473,23 +503,27 @@ msgstr ""
msgid "Create KDMs"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
msgid "DCP"
msgstr "DCP"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr ""
@@ -502,46 +536,46 @@ msgstr ""
msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr ""
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr ""
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr ""
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
"again."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
#, fuzzy
msgid "Disk Writer"
msgstr "DCP-o-matic Oynatıcı"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
msgstr ""
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr ""
@@ -554,23 +588,23 @@ msgstr "Kapatma"
msgid "Don't duplicate"
msgstr "Çiftleme"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr "Aşağı"
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr ""
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr "Çift ekran"
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "Filmi Çiftle"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "Çiftle ve aç..."
@@ -578,41 +612,50 @@ msgstr "Çiftle ve aç..."
msgid "Duplicate without saving film"
msgstr ""
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "Çiftle..."
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+#, fuzzy
+msgid "Edit..."
+msgstr "Düzenle"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr "Şifrele"
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr ""
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+msgid "Examining DCPs"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1446
#, fuzzy
msgid "Export preferences..."
msgstr "Fabrika ayarlarına dön"
-#: src/tools/dcpomatic.cc:1403
+#: src/tools/dcpomatic.cc:1418
#, fuzzy
-msgid "Export subtitles..."
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "Çıktı"
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
#, fuzzy
msgid "Export video file...\tCtrl-E"
msgstr "Çıktı"
@@ -622,11 +665,11 @@ msgstr "Çıktı"
msgid "Export..."
msgstr "Çıktı"
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr ""
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr ""
@@ -637,7 +680,7 @@ msgstr ""
msgid "Film changed"
msgstr "Film değişti"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr ""
@@ -646,36 +689,36 @@ msgstr ""
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr ""
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "Saniye başına kare"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr "Tam ekran"
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "İpuçları..."
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
#, fuzzy
msgid "Import preferences..."
msgstr "Fabrika ayarlarına dön"
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr ""
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -688,79 +731,79 @@ msgstr ""
msgid "KDM|Timing"
msgstr "KDM|Zamanlama"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr ""
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
msgid "Loading content"
msgstr "İçerik yükleniyor"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
#, fuzzy
msgid "Make &DKDMs...\tCtrl-D"
msgstr "KDM Yap"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "KDM Yap"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr ""
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, fuzzy, c-format
msgid "Make DKDM for %s..."
msgstr "KDM Yap"
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr "İsim"
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr ""
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "Yeni Film"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
#, fuzzy
msgid "New Playlist"
msgstr "Oynatma listesini kaydet"
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Yeni...\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
msgstr ""
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr "&player DCP'yi aç"
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr ""
@@ -768,16 +811,16 @@ msgstr ""
msgid "Output"
msgstr "Çıktı"
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "Ayarları yapıştır...\tCtrl-V"
@@ -789,88 +832,88 @@ msgstr ""
msgid "Pause/resume"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr ""
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
"for %s."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr ""
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
#, fuzzy
msgid "Quit"
msgstr "Çıkış"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr ""
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr ""
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "Kaldır"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr ""
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Fabrika ayarlarına dön"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr ""
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
#, fuzzy
msgid "S&how DCP in Explorer"
msgstr "DCP'yi göster"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
#, fuzzy
msgid "S&how DCP in Files"
msgstr "DCP'yi göster"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
#, fuzzy
msgid "S&how DCP in Finder"
msgstr "DCP'yi göster"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
msgid "Save"
msgstr ""
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr ""
@@ -892,7 +935,7 @@ msgstr ""
msgid "Save film and duplicate"
msgstr ""
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr ""
@@ -900,14 +943,18 @@ msgstr ""
msgid "Screens"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr ""
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr ""
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+msgid "Select DCP(s)"
+msgstr ""
+
#: src/tools/dcpomatic_kdm.cc:821
msgid "Select DKDM File"
msgstr ""
@@ -916,15 +963,15 @@ msgstr ""
msgid "Select DKDM file"
msgstr ""
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr ""
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr ""
@@ -932,36 +979,36 @@ msgstr ""
msgid "Send KDM emails"
msgstr "KDM'i e-posta gönder"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr ""
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr ""
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr ""
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr ""
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, c-format
msgid "The %s download server could not be contacted."
msgstr ""
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -976,7 +1023,7 @@ msgid ""
"want to add this film to the queue anyway?"
msgstr ""
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr ""
@@ -994,11 +1041,11 @@ msgid ""
"certificate's validity period. Use a later start time for this KDM."
msgstr ""
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr ""
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1009,7 +1056,7 @@ msgid ""
"configuration before continuing."
msgstr ""
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1019,7 +1066,7 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1031,7 +1078,7 @@ msgid ""
"for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1041,7 +1088,7 @@ msgid ""
"Do you want to re-create the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1051,41 +1098,41 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:164
-#, fuzzy
+#: src/tools/dcpomatic_combiner.cc:167
+#, fuzzy, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
msgstr "Bitmemiş görevler var, çıkmak istediğinize emin misiniz?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
"Close any application that is using it, then try again. (%s)"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
msgstr ""
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, c-format
msgid "There are no new versions of %s available."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr "Bitmemiş görevler var, çıkmak istediğinize emin misiniz?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1094,7 +1141,7 @@ msgstr ""
"versiyonda doğru yüklenmemiş olabilir. Lütfen filmin ayarlarını dikkatlice "
"kontrol ediniz."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1102,66 +1149,88 @@ msgid ""
"you want to play."
msgstr ""
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:712
#, fuzzy
msgid "Timing..."
msgstr "KDM|Zamanlama"
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
#, fuzzy
msgid "Tools"
msgstr "Araçlar"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Bitmemiş görevler"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr ""
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr "Yukarı"
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+msgid "Verify"
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:1041
msgid "Verify DCP"
msgstr ""
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
msgid "Verify DCP..."
msgstr ""
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr ""
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Video ses dalgaları..."
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr ""
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
"DCP that the DKDM was made for, and it cannot be undone. Are you sure?"
msgstr ""
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1173,7 +1242,7 @@ msgid ""
"it is lost your DKDMs (and the DCPs they protect) will become useless."
msgstr ""
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1183,7 +1252,7 @@ msgid ""
"size=\"larger\">BACKED UP</span> if you want to make KDMs for this film."
msgstr ""
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1191,15 +1260,15 @@ msgid ""
"strongly advised to install the 64-bit version of %s."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
diff --git a/src/tools/po/uk_UA.po b/src/tools/po/uk_UA.po
index e2111ed4f..3b8b514d1 100644
--- a/src/tools/po/uk_UA.po
+++ b/src/tools/po/uk_UA.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
"PO-Revision-Date: 2018-08-20 19:53+0300\n"
"Last-Translator: Igor Voytovich <dcp@dualvfilms.com>\n"
"Language-Team: Ukrainian\n"
@@ -25,30 +25,30 @@ msgstr "%d KDM-ключ записаний в %s"
msgid "%d KDMs written to %s"
msgstr "%d KDM-ключі записані в %s"
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, fuzzy, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
msgstr ""
-"%1 вже існує як файл, тому ви не можете використовувати його для нового "
+"{} вже існує як файл, тому ви не можете використовувати його для нового "
"проекту."
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, fuzzy, c-format
msgid "%s could not start"
msgstr "Не вдалося запустити DCP-o-matic"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, fuzzy, c-format
msgid "%s could not start %s"
msgstr "Не вдалося запустити DCP-o-matic"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, fuzzy, c-format
msgid "%s could not start (%s)"
msgstr "Не вдалося запустити DCP-o-matic"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, fuzzy, c-format
msgid "%s could not start."
msgstr "Не вдалося запустити DCP-o-matic"
@@ -57,130 +57,146 @@ msgstr "Не вдалося запустити DCP-o-matic"
msgid "&Add Film...\tCtrl-A"
msgstr "&Додати проект…\tCtrl-A"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr "Додати OV…"
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "&Закрити"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
#, fuzzy
msgid "&Close\tCtrl-W"
msgstr "&Зберегти\tCtrl-S"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "&Редагувати"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "&Вихід"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "&Файл"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "&Допомога"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "&Задачі"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "&Зробити DCP\tCtrl-M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "&Відкрити...\tCtrl-O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
#, fuzzy
msgid "&Preferences...\tCtrl-,"
msgstr "&Налаштування...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "&Налаштування...\tCtrl-P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "&Вихід"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "&Зберегти\tCtrl-S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
#, fuzzy
msgid "&Save frame to file...\tCtrl-S"
msgstr "Експортувати…\tCtrl-E"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "&Відправити DCP на TMS (Theatre Management System)"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "&Інструменти"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "&Вигляд"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "Про программу"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, fuzzy, c-format
msgid "About %s"
msgstr "Про программу"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
#, fuzzy
msgid "Add"
msgstr "Додати…"
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
#, fuzzy
msgid "Add &KDM..."
msgstr "Додати KDM…"
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "Додати KDM…"
+
+#: src/tools/dcpomatic_playlist.cc:80
#, fuzzy
msgid "Add content"
msgstr "Завантаження DCP"
@@ -202,8 +218,8 @@ msgstr "Додати папку…"
msgid "Add..."
msgstr "Додати…"
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, fuzzy, c-format
msgid ""
"An exception occurred: %s\n"
@@ -213,10 +229,10 @@ msgstr ""
"Виникла помилка: %s.\n"
"\n"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -226,7 +242,7 @@ msgstr ""
"Виникла помилка: %s (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, fuzzy, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -236,8 +252,8 @@ msgstr ""
"Виникла помилка: %s (%s)\n"
"\n"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, fuzzy, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -247,30 +263,30 @@ msgstr ""
"Виникла помилка: %s.\n"
"\n"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, fuzzy, c-format
msgid "An unknown error has occurred with the %s."
msgstr "В сервері кодування DCP-o-matic виникла невідома помилка."
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "Виникла невідома помилка."
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, fuzzy, c-format
msgid "An unknown exception occurred. %s"
msgstr "Виникла невідома помилка."
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr ""
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
@@ -278,34 +294,46 @@ msgstr ""
"Ви точно хочете відновити налаштування за замовчанням? Цю операцію не можна "
"відмінити."
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr "Неправильне налаштування для %s."
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr "CPL"
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "Зміст CPL-файла не зашифровано."
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "Перевірити оновлення"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr ""
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, fuzzy, c-format
msgid "Close %s"
msgstr "&Закрити"
@@ -314,36 +342,36 @@ msgstr "&Закрити"
msgid "Close without saving film"
msgstr "Закрити без збереження проекту"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr ""
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "Копіювати налаштування\tCtrl-C"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
#, fuzzy
msgid "Could not create folder to store film."
msgstr "Не вдалося створити папку для зберігання проекту"
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
@@ -351,16 +379,16 @@ msgstr ""
"Не вдалося дешифрувати цей DKDM. Можливо він був створений некоректним "
"сертифікатом."
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
#, fuzzy
msgid "Could not duplicate project."
msgstr "Не вдалося знайти програвач."
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "Не вдалося знайти пакетний конвертер."
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
msgid "Could not find player."
msgstr "Не вдалося знайти програвач."
@@ -371,62 +399,64 @@ msgid ""
"running."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
msgid "Could not load DCP"
msgstr "Не вдалося завантажити DCP"
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, fuzzy, c-format
msgid "Could not load DCP %s"
-msgstr "Не вдалося завантажити DCP %1."
+msgstr "Не вдалося завантажити DCP {}."
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, fuzzy, c-format
msgid "Could not load DCP %s."
-msgstr "Не вдалося завантажити DCP %1."
+msgstr "Не вдалося завантажити DCP {}."
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, fuzzy, c-format
msgid ""
"Could not load DCP.\n"
"\n"
"%s."
-msgstr "Не вдалося завантажити DCP %1."
+msgstr "Не вдалося завантажити DCP {}."
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "Не вдалося завантажити KDM."
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr ""
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
-msgstr "Не вдалося завантажити проект %1"
+#, c++-format
+msgid "Could not load film {}"
+msgstr "Не вдалося завантажити проект {}"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "Не вдалося завантажити проект %1 (%2)"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "Не вдалося завантажити проект {} ({})"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, fuzzy, c-format
msgid "Could not load stress test file %s"
-msgstr "Не вдалося завантажити проект %1"
+msgstr "Не вдалося завантажити проект {}"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr "Не вдалося зробити DCP."
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, fuzzy, c-format
msgid "Could not open film at %s"
msgstr "Не вдалося відкрити проект на %s"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, fuzzy, c-format
msgid "Could not open this folder as a %s project."
msgstr "Не вдалося відкрити проект на %s"
@@ -440,7 +470,7 @@ msgstr ""
"Не вдалося прочитати файл як KDM. Можливо він має неправильний формат, або "
"взагалі не є ключем KDM."
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
@@ -448,44 +478,44 @@ msgstr ""
"Не вдалося прочитати файл як KDM. Можливо він має неправильний формат, або "
"взагалі не є ключем KDM."
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr ""
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
#, fuzzy
msgid "Could not save project."
msgstr "Не вдалося зробити DCP."
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
#, fuzzy
msgid "Could not save template."
msgstr "Не вдалося знайти програвач."
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "Не вдалося відкрити каталог DCP."
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
msgstr ""
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
msgstr ""
"Не вдалося записати у файл конфігурації - %s. Ваші зміни не були збережені."
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
#, fuzzy
msgid "Could not write to config file. Your changes have not been saved."
msgstr ""
@@ -495,24 +525,28 @@ msgstr ""
msgid "Create KDMs"
msgstr "Створити KDM-ключі"
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr ""
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
#, fuzzy
msgid "DCP"
msgstr "CPL"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
msgstr "DCP-o-matic Сервер Кодування"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr ""
@@ -525,46 +559,46 @@ msgstr "DKDM (Distribution KDM)"
msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr ""
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr "Декодувати на повній роздільній здатності"
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr "Декодувати на половині роздільної здатності"
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr "Декодувати на чверти роздільної здатності"
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
"again."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
#, fuzzy
msgid "Disk Writer"
msgstr "DCP-o-matic Створювач Ключів"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
msgstr ""
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr "Ви хочете перезаписати існуючий DCP %s?"
@@ -577,23 +611,23 @@ msgstr "Не закривати"
msgid "Don't duplicate"
msgstr "Не робити копію"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr ""
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr ""
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "Зробити копію проекту"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "Зробити копію і відкрити…"
@@ -601,41 +635,50 @@ msgstr "Зробити копію і відкрити…"
msgid "Duplicate without saving film"
msgstr "Зробити копію без збереження проекту"
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "Зробити копію…"
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+#, fuzzy
+msgid "Edit..."
+msgstr "&Редагувати"
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "Сервери кодування..."
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr ""
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+msgid "Examining DCPs"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1446
#, fuzzy
msgid "Export preferences..."
msgstr "Скинути налаштування за замовчуванням"
-#: src/tools/dcpomatic.cc:1403
+#: src/tools/dcpomatic.cc:1418
#, fuzzy
-msgid "Export subtitles..."
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "Експортувати…\tCtrl-E"
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
#, fuzzy
msgid "Export video file...\tCtrl-E"
msgstr "Експортувати…\tCtrl-E"
@@ -645,11 +688,11 @@ msgstr "Експортувати…\tCtrl-E"
msgid "Export..."
msgstr "Експортувати…\tCtrl-E"
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr ""
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "Файл %s вже існує. Ви хочете перезаписати його?"
@@ -660,7 +703,7 @@ msgstr "Файл %s вже існує. Ви хочете перезаписат
msgid "Film changed"
msgstr "Проект змінено"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr ""
@@ -669,36 +712,36 @@ msgstr ""
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "Файл %s вже існує. Ви хочете перезаписати його?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "Кадрів в секунду"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr ""
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "Підказки..."
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
#, fuzzy
msgid "Import preferences..."
msgstr "Скинути налаштування за замовчуванням"
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr ""
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -711,79 +754,79 @@ msgstr ""
msgid "KDM|Timing"
msgstr "KDM|Timing"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr ""
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
#, fuzzy
msgid "Loading content"
msgstr "Завантаження DCP"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
#, fuzzy
msgid "Make &DKDMs...\tCtrl-D"
msgstr "Сгенерувати &KDM...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "Сгенерувати &KDM...\tCtrl-K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "Зробити DCP у пакетному конвертері"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, fuzzy, c-format
msgid "Make DKDM for %s..."
msgstr "Сгенерувати DKDM для DCP-o-matic..."
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr "Управління шаблонами..."
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr ""
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "Новий проект"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr ""
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "Новий...\tCtrl-N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
msgstr ""
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr "Відкрити DCP у &програвачі"
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr ""
@@ -791,16 +834,16 @@ msgstr ""
msgid "Output"
msgstr "Вивід"
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
msgstr ""
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "Вставити налаштування…\tCtrl-V"
@@ -812,88 +855,88 @@ msgstr ""
msgid "Pause/resume"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr ""
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
"for %s."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr ""
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
#, fuzzy
msgid "Quit"
msgstr "&Вихід"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr ""
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr ""
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr ""
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr ""
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "Видалити"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "Повідомити про помилку..."
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "Скинути налаштування за замовчуванням"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr ""
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
#, fuzzy
msgid "S&how DCP in Explorer"
msgstr "Відкрити папку DCP"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
#, fuzzy
msgid "S&how DCP in Files"
msgstr "Відкрити папку DCP"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
#, fuzzy
msgid "S&how DCP in Finder"
msgstr "Відкрити папку DCP"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
msgid "Save"
msgstr ""
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr "Зберегти як &шаблон..."
@@ -915,7 +958,7 @@ msgstr "Зберегти проект та закрити"
msgid "Save film and duplicate"
msgstr "Зберегти проект та зробити копію"
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr ""
@@ -923,14 +966,19 @@ msgstr ""
msgid "Screens"
msgstr "Екрани"
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr "Оберіть DCP для відкриття"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr "Оберіть DCP для відкриття як OV"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "Оберіть KDM-файл"
+
#: src/tools/dcpomatic_kdm.cc:821
#, fuzzy
msgid "Select DKDM File"
@@ -940,15 +988,15 @@ msgstr "Оберіть DKDM-файл"
msgid "Select DKDM file"
msgstr "Оберіть DKDM-файл"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr "Оберіть KDM-файл"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "Оберіть проект"
@@ -956,36 +1004,36 @@ msgstr "Оберіть проект"
msgid "Send KDM emails"
msgstr "Відправити KDM-ключі по email"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr "Встановити роздільну здатність декодування у видповідності до экрану"
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr ""
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr ""
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr ""
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr ""
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr ""
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, fuzzy, c-format
msgid "The %s download server could not be contacted."
msgstr "DCP-o-matic не вдалося зв'язатися із сервером завантаження."
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, fuzzy, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -1004,7 +1052,7 @@ msgstr ""
"DCP-пакет проекту займе приблизно %.1f ГБ, але на цільовому диску у вас "
"доступно тільки %.1f ГБ. Продовжити у будь якому випадку?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr ""
@@ -1022,11 +1070,11 @@ msgid ""
"certificate's validity period. Use a later start time for this KDM."
msgstr ""
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr ""
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1037,7 +1085,7 @@ msgid ""
"configuration before continuing."
msgstr ""
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1047,7 +1095,7 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1059,7 +1107,7 @@ msgid ""
"for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1069,7 +1117,7 @@ msgid ""
"Do you want to re-create the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1079,24 +1127,25 @@ msgid ""
"the certificate chain for signing DCPs and KDMs?"
msgstr ""
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
-msgstr "Папка %1 вже існує і не пуста. Ви точно хочете використовувати її?"
+msgstr "Папка {} вже існує і не пуста. Ви точно хочете використовувати її?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
"Close any application that is using it, then try again. (%s)"
msgstr ""
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
@@ -1104,17 +1153,17 @@ msgstr ""
"Помилка завантаження існуючої конфігурації. Будут використані значення за "
"замовчанням. Це може зайняти деякий час."
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, fuzzy, c-format
msgid "There are no new versions of %s available."
msgstr "Немає нових версій DCP-o-matic."
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr "Є незавершені задачі! Вы точно хочете вийти?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
@@ -1123,7 +1172,7 @@ msgstr ""
"загрузитися у новій версії. Будь ласка, уважно перевірте налаштування "
"проекта."
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1131,68 +1180,91 @@ msgid ""
"you want to play."
msgstr ""
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+
+#: src/tools/dcpomatic_player.cc:712
#, fuzzy
msgid "Timing..."
msgstr "KDM|Timing"
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
#, fuzzy
msgid "Tools"
msgstr "&Інструменти"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr ""
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "Незавершені задачі"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr ""
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr ""
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr ""
-#: src/tools/dcpomatic_player.cc:999
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+#, fuzzy
+msgid "Verify"
+msgstr "Перевірити DCP"
+
+#: src/tools/dcpomatic_player.cc:1041
#, fuzzy
msgid "Verify DCP"
msgstr "Перевірити DCP"
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
#, fuzzy
msgid "Verify DCP..."
msgstr "Перевірити DCP"
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr ""
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr ""
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "Графік відео..."
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr ""
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
"DCP that the DKDM was made for, and it cannot be undone. Are you sure?"
msgstr ""
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1211,7 +1283,7 @@ msgstr ""
"КОПІЮ ЦЬОГО ФАЙЛУ</span>, так як у разі його втрати, ваші DKDM (і DCP, які "
"були ним захищені) стануть марними."
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1228,7 +1300,7 @@ msgstr ""
"size=\"larger\">РЕЗЕРВНІ КОПІЇ</span> цих файлів, якщо ви хочете зробити KDM "
"для даного проекту."
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
@@ -1236,15 +1308,15 @@ msgid ""
"strongly advised to install the 64-bit version of %s."
msgstr ""
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
msgstr ""
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
diff --git a/src/tools/po/zh_CN.po b/src/tools/po/zh_CN.po
index 970f49824..6e13d65a5 100644
--- a/src/tools/po/zh_CN.po
+++ b/src/tools/po/zh_CN.po
@@ -12,8 +12,8 @@ msgid ""
msgstr ""
"Project-Id-Version: DCPOMATIC\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-08 23:51+0200\n"
-"PO-Revision-Date: 2025-05-06 18:11+0800\n"
+"POT-Creation-Date: 2026-02-14 23:48+0100\n"
+"PO-Revision-Date: 2025-10-05 13:41+0800\n"
"Last-Translator: Dian Li <xslidian@gmail.com>\n"
"Language-Team: Chinese Simplified (Rov8 branch)\n"
"Language: zh_CN\n"
@@ -21,7 +21,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Poedit 3.6\n"
+"X-Generator: Poedit 3.7\n"
"X-Poedit-SourceCharset: UTF-8\n"
#: src/tools/dcpomatic_kdm.cc:491
@@ -34,28 +34,28 @@ msgstr "%d 导出KDM 到 %s"
msgid "%d KDMs written to %s"
msgstr "%d 导出KDMs 到 %s"
-#: src/tools/dcpomatic_combiner.cc:174
+#: src/tools/dcpomatic_combiner.cc:177
#, c-format
msgid "%s already exists as a file, so you cannot use it for a DCP."
msgstr "%s文件已存在,您不可以将它用于DCP。"
-#: src/tools/dcpomatic_disk.cc:506 src/tools/dcpomatic_kdm.cc:945
-#: src/tools/dcpomatic_player.cc:1364
+#: src/tools/dcpomatic_disk.cc:518 src/tools/dcpomatic_kdm.cc:944
+#: src/tools/dcpomatic_player.cc:1426
#, c-format
msgid "%s could not start"
msgstr "%s 无法启动"
-#: src/tools/dcpomatic_playlist.cc:687
+#: src/tools/dcpomatic_playlist.cc:717
#, c-format
msgid "%s could not start %s"
msgstr "%s 无法启动%s"
-#: src/tools/dcpomatic_combiner.cc:269
+#: src/tools/dcpomatic_combiner.cc:272
#, c-format
msgid "%s could not start (%s)"
msgstr "%s 无法启动 (%s)"
-#: src/tools/dcpomatic.cc:1773 src/tools/dcpomatic_editor.cc:563
+#: src/tools/dcpomatic.cc:1787 src/tools/dcpomatic_editor.cc:573
#, c-format
msgid "%s could not start."
msgstr "%s 无法启动。"
@@ -64,125 +64,141 @@ msgstr "%s 无法启动。"
msgid "&Add Film...\tCtrl-A"
msgstr "添加工程(&A)...\tCtrl+A"
-#: src/tools/dcpomatic_player.cc:610
+#: src/tools/dcpomatic_player.cc:660
msgid "&Add OV..."
msgstr "添加OV(&A)…"
-#: src/tools/dcpomatic_player.cc:618
+#: src/tools/dcpomatic_player.cc:668
msgid "&Close"
msgstr "关闭(&C)"
-#: src/tools/dcpomatic.cc:1360
+#: src/tools/dcpomatic.cc:1375
msgid "&Close\tCtrl-W"
msgstr "关闭(&C)\tCtrl+W"
-#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1445
-#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:677
-#: src/tools/dcpomatic_playlist.cc:595
+#: src/tools/dcpomatic_batch.cc:110 src/tools/dcpomatic.cc:1461
+#: src/tools/dcpomatic_kdm.cc:347 src/tools/dcpomatic_player.cc:728
+#: src/tools/dcpomatic_playlist.cc:625
msgid "&Edit"
msgstr "编辑(&E)"
-#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1367
-#: src/tools/dcpomatic_editor.cc:421 src/tools/dcpomatic_player.cc:622
-#: src/tools/dcpomatic_playlist.cc:579
+#: src/tools/dcpomatic_batch.cc:90 src/tools/dcpomatic.cc:1382
+#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_player.cc:672
+#: src/tools/dcpomatic_playlist.cc:609 src/tools/dcpomatic_verifier.cc:247
msgid "&Exit"
msgstr "退出(&E)"
-#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1444
-#: src/tools/dcpomatic_editor.cc:433 src/tools/dcpomatic_kdm.cc:346
-#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:593
+#: src/tools/dcpomatic_batch.cc:108 src/tools/dcpomatic.cc:1460
+#: src/tools/dcpomatic_editor.cc:445 src/tools/dcpomatic_kdm.cc:346
+#: src/tools/dcpomatic_player.cc:725 src/tools/dcpomatic_playlist.cc:623
+#: src/tools/dcpomatic_verifier.cc:252
msgid "&File"
msgstr "文件(&F)"
-#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1449
-#: src/tools/dcpomatic_editor.cc:434 src/tools/dcpomatic_kdm.cc:349
-#: src/tools/dcpomatic_player.cc:681 src/tools/dcpomatic_playlist.cc:582
-#: src/tools/dcpomatic_playlist.cc:596
+#: src/tools/dcpomatic_batch.cc:113 src/tools/dcpomatic.cc:1465
+#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_kdm.cc:349
+#: src/tools/dcpomatic_player.cc:732 src/tools/dcpomatic_playlist.cc:612
+#: src/tools/dcpomatic_playlist.cc:626 src/tools/dcpomatic_verifier.cc:256
msgid "&Help"
msgstr "帮助(&H)"
-#: src/tools/dcpomatic.cc:1446
+#: src/tools/dcpomatic.cc:1462
msgid "&Jobs"
msgstr "任务(&J)"
-#: src/tools/dcpomatic.cc:1391
+#: src/tools/dcpomatic.cc:1406
msgid "&Make DCP\tCtrl-M"
msgstr "创建 DCP(&M)\tCtrl+M"
-#: src/tools/dcpomatic.cc:1347 src/tools/dcpomatic_editor.cc:416
-#: src/tools/dcpomatic_player.cc:609
+#: src/tools/dcpomatic.cc:1362 src/tools/dcpomatic_editor.cc:428
+#: src/tools/dcpomatic_player.cc:659
msgid "&Open...\tCtrl-O"
msgstr "打开(&O)...\tCtrl+O"
-#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1382
-#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:628
-#: src/tools/dcpomatic_playlist.cc:577
+#: src/tools/dcpomatic_batch.cc:96 src/tools/dcpomatic.cc:1397
+#: src/tools/dcpomatic_kdm.cc:336 src/tools/dcpomatic_player.cc:678
+#: src/tools/dcpomatic_playlist.cc:607
msgid "&Preferences...\tCtrl-,"
msgstr "设置(&P)...\tCtr+,"
-#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1386
-#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:631
-#: src/tools/dcpomatic_playlist.cc:588
+#: src/tools/dcpomatic_batch.cc:99 src/tools/dcpomatic.cc:1401
+#: src/tools/dcpomatic_kdm.cc:328 src/tools/dcpomatic_player.cc:681
+#: src/tools/dcpomatic_playlist.cc:618
msgid "&Preferences...\tCtrl-P"
msgstr "设置(&P)...\tCtrl+P"
-#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1369
-#: src/tools/dcpomatic_editor.cc:423 src/tools/dcpomatic_kdm.cc:326
-#: src/tools/dcpomatic_player.cc:624 src/tools/dcpomatic_playlist.cc:585
+#: src/tools/dcpomatic_batch.cc:92 src/tools/dcpomatic.cc:1384
+#: src/tools/dcpomatic_editor.cc:435 src/tools/dcpomatic_kdm.cc:326
+#: src/tools/dcpomatic_player.cc:674 src/tools/dcpomatic_playlist.cc:615
+#: src/tools/dcpomatic_verifier.cc:251
msgid "&Quit"
msgstr "退出(&Q)"
-#: src/tools/dcpomatic.cc:1350 src/tools/dcpomatic_editor.cc:418
+#: src/tools/dcpomatic.cc:1365 src/tools/dcpomatic_editor.cc:430
msgid "&Save\tCtrl-S"
msgstr "保存(&S)\tCtrl+S"
-#: src/tools/dcpomatic_player.cc:613
+#: src/tools/dcpomatic_player.cc:663
msgid "&Save frame to file...\tCtrl-S"
msgstr "保存场景(帧)到文件...\tCtrl-S"
-#: src/tools/dcpomatic.cc:1405
+#: src/tools/dcpomatic.cc:1420
msgid "&Send DCP to TMS"
msgstr "发送 DCP 到 TMS(&S)"
-#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1448
-#: src/tools/dcpomatic_player.cc:680
+#: src/tools/dcpomatic_batch.cc:112 src/tools/dcpomatic.cc:1464
+#: src/tools/dcpomatic_player.cc:731
msgid "&Tools"
msgstr "工具(&T)"
-#: src/tools/dcpomatic.cc:1447 src/tools/dcpomatic_player.cc:679
+#: src/tools/dcpomatic.cc:1463 src/tools/dcpomatic_player.cc:730
msgid "&View"
msgstr "查看(&V)"
-#: src/tools/dcpomatic_playlist.cc:316
+#: src/tools/dcpomatic_verifier.cc:104
+msgid "(encrypted, have KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:106
+msgid "(encrypted, no KDM)"
+msgstr ""
+
+#: src/tools/dcpomatic_playlist.cc:324
msgid "<b>Playlist:</b>"
msgstr "<b>播放列表:</b>"
-#: src/tools/dcpomatic_playlist.cc:125
+#: src/tools/dcpomatic_playlist.cc:132
msgid "<b>Playlists</b>"
msgstr "<b>播放列表</b>"
-#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1438
-#: src/tools/dcpomatic_editor.cc:430 src/tools/dcpomatic_kdm.cc:339
-#: src/tools/dcpomatic_player.cc:668 src/tools/dcpomatic_playlist.cc:591
+#: src/tools/dcpomatic_batch.cc:106 src/tools/dcpomatic.cc:1453
+#: src/tools/dcpomatic_editor.cc:442 src/tools/dcpomatic_kdm.cc:339
+#: src/tools/dcpomatic_player.cc:719 src/tools/dcpomatic_playlist.cc:621
+#: src/tools/dcpomatic_verifier.cc:254
msgid "About"
msgstr "关于"
-#: src/tools/dcpomatic.cc:1436 src/tools/dcpomatic_editor.cc:428
-#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:666
-#: src/tools/dcpomatic_playlist.cc:580
+#: src/tools/dcpomatic.cc:1451 src/tools/dcpomatic_editor.cc:440
+#: src/tools/dcpomatic_kdm.cc:337 src/tools/dcpomatic_player.cc:717
+#: src/tools/dcpomatic_playlist.cc:610 src/tools/dcpomatic_verifier.cc:248
#, c-format
msgid "About %s"
msgstr "关于 %s"
-#: src/tools/dcpomatic_playlist.cc:340
+#: src/tools/dcpomatic_playlist.cc:349
msgid "Add"
msgstr "添加"
-#: src/tools/dcpomatic_player.cc:611
+#: src/tools/dcpomatic_player.cc:661
msgid "Add &KDM..."
msgstr "添加 &KDM..."
-#: src/tools/dcpomatic_playlist.cc:78
+#: src/tools/dcpomatic_verifier.cc:180
+#, fuzzy
+msgid "Add KDM..."
+msgstr "添加 &KDM..."
+
+#: src/tools/dcpomatic_playlist.cc:80
msgid "Add content"
msgstr "添加内容"
@@ -202,8 +218,8 @@ msgstr "添加工程文件夹..."
msgid "Add..."
msgstr "添加..."
-#: src/tools/dcpomatic_combiner.cc:310 src/tools/dcpomatic_editor.cc:602
-#: src/tools/dcpomatic_player.cc:1412 src/tools/dcpomatic_playlist.cc:710
+#: src/tools/dcpomatic_combiner.cc:313 src/tools/dcpomatic_editor.cc:612
+#: src/tools/dcpomatic_player.cc:1484 src/tools/dcpomatic_playlist.cc:740
#, c-format
msgid ""
"An exception occurred: %s\n"
@@ -214,10 +230,10 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1826 src/tools/dcpomatic_combiner.cc:300
-#: src/tools/dcpomatic_disk.cc:553 src/tools/dcpomatic_editor.cc:592
-#: src/tools/dcpomatic_kdm.cc:960 src/tools/dcpomatic_player.cc:1402
-#: src/tools/dcpomatic_playlist.cc:700
+#: src/tools/dcpomatic.cc:1840 src/tools/dcpomatic_combiner.cc:303
+#: src/tools/dcpomatic_disk.cc:565 src/tools/dcpomatic_editor.cc:602
+#: src/tools/dcpomatic_kdm.cc:959 src/tools/dcpomatic_player.cc:1474
+#: src/tools/dcpomatic_playlist.cc:730 src/tools/dcpomatic_verifier.cc:457
#, c-format
msgid ""
"An exception occurred: %s (%s)\n"
@@ -228,7 +244,7 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1836
+#: src/tools/dcpomatic.cc:1850 src/tools/dcpomatic_verifier.cc:467
#, c-format
msgid ""
"An exception occurred: %s (%s) (%s)\n"
@@ -239,8 +255,8 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic.cc:1847 src/tools/dcpomatic_disk.cc:563
-#: src/tools/dcpomatic_kdm.cc:970
+#: src/tools/dcpomatic.cc:1861 src/tools/dcpomatic_disk.cc:575
+#: src/tools/dcpomatic_kdm.cc:969 src/tools/dcpomatic_verifier.cc:478
#, c-format
msgid ""
"An exception occurred: %s.\n"
@@ -251,63 +267,75 @@ msgstr ""
"\n"
"%s"
-#: src/tools/dcpomatic_server.cc:367
+#: src/tools/dcpomatic_server.cc:362
#, c-format
msgid "An unknown error has occurred with the %s."
msgstr "服务出现未知错误 %s。"
-#: src/tools/dcpomatic.cc:1024 src/tools/dcpomatic_kdm.cc:515
+#: src/tools/dcpomatic.cc:1026 src/tools/dcpomatic_kdm.cc:515
msgid "An unknown exception occurred."
msgstr "出现未知错误。"
-#: src/tools/dcpomatic.cc:1853 src/tools/dcpomatic_combiner.cc:316
-#: src/tools/dcpomatic_disk.cc:569 src/tools/dcpomatic_editor.cc:608
-#: src/tools/dcpomatic_kdm.cc:976 src/tools/dcpomatic_kdm.cc:985
-#: src/tools/dcpomatic_player.cc:1418 src/tools/dcpomatic_playlist.cc:716
-#: src/tools/dcpomatic_playlist.cc:725
+#: src/tools/dcpomatic.cc:1867 src/tools/dcpomatic_combiner.cc:319
+#: src/tools/dcpomatic_disk.cc:581 src/tools/dcpomatic_editor.cc:618
+#: src/tools/dcpomatic_kdm.cc:975 src/tools/dcpomatic_kdm.cc:984
+#: src/tools/dcpomatic_player.cc:1490 src/tools/dcpomatic_playlist.cc:746
+#: src/tools/dcpomatic_playlist.cc:755 src/tools/dcpomatic_verifier.cc:484
#, c-format
msgid "An unknown exception occurred. %s"
msgstr "出现未知错误。%s"
-#: src/tools/dcpomatic_combiner.cc:119 src/tools/dcpomatic_editor.cc:83
-#: src/tools/dcpomatic_editor.cc:202 src/tools/dcpomatic_editor.cc:289
+#: src/tools/dcpomatic_combiner.cc:122 src/tools/dcpomatic_editor.cc:85
+#: src/tools/dcpomatic_editor.cc:204 src/tools/dcpomatic_editor.cc:293
msgid "Annotation text"
msgstr "注释文本"
-#: src/tools/dcpomatic.cc:775
+#: src/tools/dcpomatic.cc:777
msgid ""
"Are you sure you want to restore preferences to their defaults? This cannot "
"be undone."
msgstr "确定要恢复默认设置? 该操作不能撤销。"
-#: src/tools/dcpomatic.cc:876
+#: src/tools/dcpomatic_player.cc:709
+msgid "Audio graph..."
+msgstr ""
+
+#: src/tools/dcpomatic.cc:878
#, c-format
msgid "Bad setting for %s."
msgstr "%s的配置错误。"
-#: src/tools/dcpomatic_editor.cc:386 src/tools/dcpomatic_player.cc:640
-#: src/tools/dcpomatic_playlist.cc:331
+#: src/tools/dcpomatic_editor.cc:392 src/tools/dcpomatic_player.cc:690
+#: src/tools/dcpomatic_playlist.cc:339
msgid "CPL"
msgstr "CPL"
-#: src/tools/dcpomatic.cc:1020 src/tools/dcpomatic_kdm.cc:511
+#: src/tools/dcpomatic.cc:1022 src/tools/dcpomatic_kdm.cc:511
msgid "CPL's content is not encrypted."
msgstr "该CPL未加密。"
-#: src/tools/dcpomatic_editor.cc:404
+#: src/tools/dcpomatic_editor.cc:410
#, c-format
msgid "CPL: %s"
-msgstr ""
+msgstr "CPL: %s"
-#: src/tools/dcpomatic.cc:1426 src/tools/dcpomatic_player.cc:660
+#: src/tools/dcpomatic_verifier.cc:199
+msgid "Cancel"
+msgstr "取消"
+
+#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_player.cc:711
msgid "Check for updates"
msgstr "检查更新"
-#: src/tools/dcpomatic_combiner.cc:67 src/tools/dcpomatic_disk.cc:83
+#: src/tools/dcpomatic_verifier.cc:362
+msgid "Checking KDM"
+msgstr ""
+
+#: src/tools/dcpomatic_combiner.cc:68 src/tools/dcpomatic_disk.cc:84
msgid "Choose a DCP folder"
msgstr "选择一个DCP文件夹"
-#: src/tools/dcpomatic.cc:1957 src/tools/dcpomatic.cc:1976
+#: src/tools/dcpomatic.cc:1971 src/tools/dcpomatic.cc:1990
#, c-format
msgid "Close %s"
msgstr "关闭(&C) %s"
@@ -316,49 +344,49 @@ msgstr "关闭(&C) %s"
msgid "Close without saving film"
msgstr "关闭但不保存"
-#: src/tools/dcpomatic.cc:1418 src/tools/dcpomatic_player.cc:646
+#: src/tools/dcpomatic.cc:1433 src/tools/dcpomatic_player.cc:696
msgid "Closed captions..."
msgstr "隐藏式字幕..."
-#: src/tools/dcpomatic_combiner.cc:127
+#: src/tools/dcpomatic_combiner.cc:130
msgid "Combine"
msgstr "组合"
-#: src/tools/dcpomatic_combiner.cc:181
+#: src/tools/dcpomatic_combiner.cc:184
msgid "Combining DCPs"
msgstr "正在组合DCP"
-#: src/tools/dcpomatic_editor.cc:217
+#: src/tools/dcpomatic_editor.cc:219
msgid "Content title text"
msgstr "内容标题文本"
-#: src/tools/dcpomatic_disk.cc:163
+#: src/tools/dcpomatic_disk.cc:166
msgid "Copy DCPs"
msgstr "复制DCP"
-#: src/tools/dcpomatic.cc:1374
+#: src/tools/dcpomatic.cc:1389
msgid "Copy settings\tCtrl-C"
msgstr "拷贝设置\tCtrl-C"
-#: src/tools/dcpomatic.cc:585 src/tools/dcpomatic.cc:594
+#: src/tools/dcpomatic.cc:587 src/tools/dcpomatic.cc:596
msgid "Could not create folder to store film."
msgstr "无法创建目录来存储影片。"
-#: src/tools/dcpomatic_kdm.cc:652
+#: src/tools/dcpomatic_kdm.cc:652 src/tools/dcpomatic_verifier.cc:354
msgid ""
"Could not decrypt the DKDM. Perhaps it was not created with the correct "
"certificate."
msgstr "不能解开DKDM。 也许它不是用选定的证书所加密的。"
-#: src/tools/dcpomatic.cc:659 src/tools/dcpomatic.cc:676
+#: src/tools/dcpomatic.cc:661 src/tools/dcpomatic.cc:678
msgid "Could not duplicate project."
msgstr "无法找到播放器。"
-#: src/tools/dcpomatic.cc:953
+#: src/tools/dcpomatic.cc:955
msgid "Could not find batch converter."
msgstr "找不到批量转换服务器。"
-#: src/tools/dcpomatic.cc:968
+#: src/tools/dcpomatic.cc:970
msgid "Could not find player."
msgstr "无法找到播放器。"
@@ -369,21 +397,21 @@ msgid ""
"running."
msgstr "未能侦测到新的批量任务。 可能另一个%s批量转换正在运行。"
-#: src/tools/dcpomatic_editor.cc:398
+#: src/tools/dcpomatic_editor.cc:404
msgid "Could not load DCP"
msgstr "无法载入DCP"
-#: src/tools/dcpomatic_player.cc:1341
+#: src/tools/dcpomatic_player.cc:1403
#, c-format
msgid "Could not load DCP %s"
-msgstr "无法载入DCP %s。"
+msgstr "无法载入DCP %s"
-#: src/tools/dcpomatic_player.cc:839
+#: src/tools/dcpomatic_player.cc:882
#, c-format
msgid "Could not load DCP %s."
msgstr "无法载入DCP %s。"
-#: src/tools/dcpomatic_player.cc:599
+#: src/tools/dcpomatic_player.cc:649
#, c-format
msgid ""
"Could not load DCP.\n"
@@ -394,40 +422,42 @@ msgstr ""
"\n"
"%s。"
-#: src/tools/dcpomatic_player.cc:787
+#: src/tools/dcpomatic_player.cc:829 src/tools/dcpomatic_verifier.cc:357
msgid "Could not load KDM."
msgstr "无法载入KDM。"
-#: src/tools/dcpomatic_player.cc:445 src/tools/dcpomatic_player.cc:454
-#: src/tools/dcpomatic_player.cc:456
+#: src/tools/dcpomatic_player.cc:456 src/tools/dcpomatic_player.cc:465
+#: src/tools/dcpomatic_player.cc:467
#, c-format
msgid "Could not load a DCP from %s"
msgstr "无法从 %s 载入DCP"
#: src/tools/dcpomatic_batch.cc:495
-msgid "Could not load film %1"
-msgstr "无法加载工程 %1"
+#, c++-format
+msgid "Could not load film {}"
+msgstr "无法加载工程 {}"
-#: src/tools/dcpomatic.cc:1734
-msgid "Could not load film %1 (%2)"
-msgstr "无法加载工程 %1 (%2)"
+#: src/tools/dcpomatic.cc:1751
+#, c++-format
+msgid "Could not load film {} ({})"
+msgstr "无法加载工程 {} ({})"
-#: src/tools/dcpomatic_player.cc:1349
+#: src/tools/dcpomatic_player.cc:1411
#, c-format
msgid "Could not load stress test file %s"
msgstr "无法加载工程 %s"
-#: src/tools/dcpomatic.cc:878
+#: src/tools/dcpomatic.cc:880
msgid "Could not make DCP."
msgstr "DCP创建失败。"
-#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:507
-#: src/tools/dcpomatic.cc:512
+#: src/tools/dcpomatic_batch.cc:259 src/tools/dcpomatic.cc:509
+#: src/tools/dcpomatic.cc:514
#, c-format
msgid "Could not open film at %s"
msgstr "无法在 %s 打开工程"
-#: src/tools/dcpomatic.cc:500
+#: src/tools/dcpomatic.cc:502
#, c-format
msgid "Could not open this folder as a %s project."
msgstr "无法将此文件夹作为 %s 项目打开。"
@@ -438,47 +468,47 @@ msgid ""
"loading a DKDM (XML) file."
msgstr "不能读取KDM。文件过大。请确保打开了正确的DKDM(XML)文件。"
-#: src/tools/dcpomatic_kdm.cc:645
+#: src/tools/dcpomatic_kdm.cc:645 src/tools/dcpomatic_verifier.cc:347
msgid ""
"Could not read file as a KDM. Perhaps it is badly formatted, or not a KDM "
"at all."
msgstr "不能读取KDM。文件可能使用了不兼容的格式,或者并非KDM。"
-#: src/tools/dcpomatic.cc:797
+#: src/tools/dcpomatic.cc:799
msgid "Could not remove existing preferences file"
msgstr "无法删除现有配置文件"
-#: src/tools/dcpomatic.cc:628 src/tools/dcpomatic.cc:1313
+#: src/tools/dcpomatic.cc:630 src/tools/dcpomatic.cc:1328
msgid "Could not save project."
msgstr "DCP创建失败。"
-#: src/tools/dcpomatic.cc:643
+#: src/tools/dcpomatic.cc:645
msgid "Could not save template."
msgstr "无法找到播放器。"
-#: src/tools/dcpomatic.cc:1079
+#: src/tools/dcpomatic.cc:1089
msgid "Could not show DCP."
msgstr "无法显示DCP。"
-#: src/tools/dcpomatic.cc:951
+#: src/tools/dcpomatic.cc:953
msgid ""
"Could not start the batch converter. You may need to download it from "
"dcpomatic.com."
msgstr "无法启动批处理转换器,你可能需要从dcpomatic.com下载。"
-#: src/tools/dcpomatic.cc:966
+#: src/tools/dcpomatic.cc:968
msgid ""
"Could not start the player. You may need to download it from dcpomatic.com."
msgstr "无法启动播放器,你可能需要从dcpomatic.com下载。"
-#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1461
-#: src/tools/dcpomatic_player.cc:1075 src/tools/dcpomatic_playlist.cc:609
+#: src/tools/dcpomatic_batch.cc:365 src/tools/dcpomatic.cc:1477
+#: src/tools/dcpomatic_player.cc:1128 src/tools/dcpomatic_playlist.cc:639
#, c-format
msgid ""
"Could not write to config file at %s. Your changes have not been saved."
msgstr "不能保存设置%s。设置没有被保存。"
-#: src/tools/dcpomatic_player.cc:1083
+#: src/tools/dcpomatic_player.cc:1136
msgid "Could not write to config file. Your changes have not been saved."
msgstr "不能保存设置到文件。更改没有被保存。"
@@ -486,23 +516,27 @@ msgstr "不能保存设置到文件。更改没有被保存。"
msgid "Create KDMs"
msgstr "创建KDM"
-#: src/tools/dcpomatic_editor.cc:212 src/tools/dcpomatic_editor.cc:299
+#: src/tools/dcpomatic_editor.cc:214 src/tools/dcpomatic_editor.cc:303
msgid "Creator"
msgstr "创建者"
-#: src/tools/dcpomatic_disk.cc:138
+#: src/tools/dcpomatic_playlist.cc:342
+msgid "Crop"
+msgstr "裁切"
+
+#: src/tools/dcpomatic_disk.cc:139 src/tools/dcpomatic_verifier.cc:172
msgid "DCP"
msgstr "DCP"
-#: src/tools/dcpomatic_server.cc:261
+#: src/tools/dcpomatic_server.cc:256
msgid "DCP-o-matic Encode Server"
-msgstr "%s 编码服务器"
+msgstr "DCP-o-matic编码服务器"
-#: src/tools/dcpomatic_disk.cc:134
+#: src/tools/dcpomatic_disk.cc:135 src/tools/dcpomatic_verifier.cc:146
msgid "DCPs"
msgstr "DCPs"
-#: src/tools/dcpomatic_combiner.cc:191
+#: src/tools/dcpomatic_combiner.cc:194
msgid "DCPs combined successfully."
msgstr "DCP文件已成功合并。"
@@ -515,39 +549,39 @@ msgstr "DKDM"
msgid "DKDM %s is already in the DKDM list and will not be added again."
msgstr "DKDM %s 已在 DKDM 列表中,不会再次添加。"
-#: src/tools/dcpomatic_player.cc:653
+#: src/tools/dcpomatic_player.cc:703
msgid "Decode at full resolution"
msgstr "全分辨率解码"
-#: src/tools/dcpomatic_player.cc:654
+#: src/tools/dcpomatic_player.cc:704
msgid "Decode at half resolution"
msgstr "半分辨率解码"
-#: src/tools/dcpomatic_player.cc:655
+#: src/tools/dcpomatic_player.cc:705
msgid "Decode at quarter resolution"
msgstr "四分之一分辨率解码"
-#: src/tools/dcpomatic_playlist.cc:138
+#: src/tools/dcpomatic_playlist.cc:145
msgid "Delete"
msgstr "删除"
-#: src/tools/dcpomatic_disk.cc:337
+#: src/tools/dcpomatic_disk.cc:344
#, c-format
msgid ""
"Did you install the %s Disk Writer.pkg from the .dmg? Please check and try "
"again."
msgstr "您是否安装了.dmg文件里的%s Disk Writer.pkg? 请检查并重试。"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Disk Writer"
msgstr "磁盘写入器"
-#: src/tools/dcpomatic.cc:1924 src/tools/dcpomatic.cc:1941
-#: src/tools/dcpomatic.cc:1995
+#: src/tools/dcpomatic.cc:1938 src/tools/dcpomatic.cc:1955
+#: src/tools/dcpomatic.cc:2009
msgid "Do nothing"
msgstr "什么都不做"
-#: src/tools/dcpomatic_disk.cc:329
+#: src/tools/dcpomatic_disk.cc:336
msgid ""
"Do you see a 'User Account Control' dialogue asking about "
"dcpomatic2_disk_writer.exe? If so, click 'Yes', then try again."
@@ -555,7 +589,7 @@ msgstr ""
"您是否看到了“用户账户控制”对话框正在询问dcpomatic2_disk_writer.exe? 如果您看"
"到了,请点击“是”,然后再次尝试。"
-#: src/tools/dcpomatic.cc:861
+#: src/tools/dcpomatic.cc:863
#, c-format
msgid "Do you want to overwrite the existing DCP %s?"
msgstr "您确定要覆盖已经存在的DCP %s 吗?"
@@ -568,23 +602,23 @@ msgstr "取消"
msgid "Don't duplicate"
msgstr "取消复制"
-#: src/tools/dcpomatic_playlist.cc:339
+#: src/tools/dcpomatic_playlist.cc:348
msgid "Down"
msgstr "下"
-#: src/tools/dcpomatic_disk.cc:150
+#: src/tools/dcpomatic_disk.cc:153
msgid "Drive"
msgstr "目标驱动器"
-#: src/tools/dcpomatic_player.cc:643
+#: src/tools/dcpomatic_player.cc:693
msgid "Dual screen\tShift+F11"
msgstr "双屏\tShift+F11"
-#: src/tools/dcpomatic.cc:650 src/tools/dcpomatic.cc:666
+#: src/tools/dcpomatic.cc:652 src/tools/dcpomatic.cc:668
msgid "Duplicate Film"
msgstr "复制工程"
-#: src/tools/dcpomatic.cc:1354
+#: src/tools/dcpomatic.cc:1369
msgid "Duplicate and open..."
msgstr "复制工程并打开..."
@@ -592,39 +626,49 @@ msgstr "复制工程并打开..."
msgid "Duplicate without saving film"
msgstr "复制项目但不保存"
-#: src/tools/dcpomatic.cc:1353
+#: src/tools/dcpomatic.cc:1368
msgid "Duplicate..."
msgstr "复制…"
-#: src/tools/dcpomatic_editor.cc:93
+#: src/tools/dcpomatic_editor.cc:95
msgid "Duration"
msgstr "持续时间"
-#: src/tools/dcpomatic_editor.cc:153
+#: src/tools/dcpomatic_editor.cc:155
msgid "Edit reel"
msgstr "编辑卷"
-#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1424
+#: src/tools/dcpomatic_playlist.cc:351
+msgid "Edit..."
+msgstr "编辑..."
+
+#: src/tools/dcpomatic_batch.cc:103 src/tools/dcpomatic.cc:1439
msgid "Encoding servers..."
msgstr "查看编码服务器..."
-#: src/tools/dcpomatic_playlist.cc:333
+#: src/tools/dcpomatic_playlist.cc:341
msgid "Encrypted"
msgstr "加密的"
-#: src/tools/dcpomatic_editor.cc:88
+#: src/tools/dcpomatic_editor.cc:90
msgid "Entry point"
msgstr "入口点"
-#: src/tools/dcpomatic.cc:1431
+#: src/tools/dcpomatic_verifier.cc:156
+#, fuzzy
+msgid "Examining DCPs"
+msgstr "正在组合DCP"
+
+#: src/tools/dcpomatic.cc:1446
msgid "Export preferences..."
msgstr "导出首选项设置..."
-#: src/tools/dcpomatic.cc:1403
-msgid "Export subtitles..."
+#: src/tools/dcpomatic.cc:1418
+#, fuzzy
+msgid "Export subtitles...\tShift-Ctrl-E"
msgstr "导出字幕..."
-#: src/tools/dcpomatic.cc:1402
+#: src/tools/dcpomatic.cc:1417
msgid "Export video file...\tCtrl-E"
msgstr "导出视频文件...\tCtrl-E"
@@ -632,11 +676,11 @@ msgstr "导出视频文件...\tCtrl-E"
msgid "Export..."
msgstr "导出..."
-#: src/tools/dcpomatic_player.cc:650
+#: src/tools/dcpomatic_player.cc:700
msgid "Eye"
msgstr "眼"
-#: src/tools/dcpomatic.cc:1039 src/tools/dcpomatic_kdm.cc:362
+#: src/tools/dcpomatic.cc:1041 src/tools/dcpomatic_kdm.cc:362
#, c-format
msgid "File %s already exists. Do you want to overwrite it?"
msgstr "已存在文件 %s ,是否覆盖?"
@@ -647,7 +691,7 @@ msgstr "已存在文件 %s ,是否覆盖?"
msgid "Film changed"
msgstr "工程已被编辑"
-#: src/tools/dcpomatic_disk.cc:187
+#: src/tools/dcpomatic_disk.cc:190
msgid "Finding disks"
msgstr "查找磁盘"
@@ -656,35 +700,35 @@ msgstr "查找磁盘"
msgid "Folder %s already exists. Do you want to overwrite it?"
msgstr "已存在文件 %s 。是否覆盖?"
-#: src/tools/dcpomatic_server.cc:174
+#: src/tools/dcpomatic_server.cc:169
msgid "Frames per second"
msgstr "帧率"
-#: src/tools/dcpomatic_player.cc:642
+#: src/tools/dcpomatic_player.cc:692
msgid "Full screen\tF11"
msgstr "全屏\tF11"
-#: src/tools/dcpomatic.cc:1423
+#: src/tools/dcpomatic.cc:1438
msgid "Hints..."
msgstr "提示..."
-#: src/tools/dcpomatic.cc:1432
+#: src/tools/dcpomatic.cc:1447
msgid "Import preferences..."
msgstr "导入首选项设置..."
-#: src/tools/dcpomatic_combiner.cc:104
+#: src/tools/dcpomatic_combiner.cc:105
msgid "Input DCP"
msgstr "导入DCP"
-#: src/tools/dcpomatic_editor.cc:98
+#: src/tools/dcpomatic_editor.cc:100
msgid "Intrinsic duration"
msgstr "内在持续时间"
-#: src/tools/dcpomatic_editor.cc:207 src/tools/dcpomatic_editor.cc:294
+#: src/tools/dcpomatic_editor.cc:209 src/tools/dcpomatic_editor.cc:298
msgid "Issuer"
msgstr "发行方"
-#: src/tools/dcpomatic.cc:502
+#: src/tools/dcpomatic.cc:504
#, c-format
msgid ""
"It looks like you are trying to open a DCP. File -> Open is for loading %s "
@@ -699,77 +743,77 @@ msgstr ""
msgid "KDM|Timing"
msgstr "KDM|有效期"
-#: src/tools/dcpomatic_player.cc:648
+#: src/tools/dcpomatic_player.cc:698
msgid "Left"
msgstr "左"
-#: src/tools/dcpomatic_playlist.cc:133
+#: src/tools/dcpomatic_playlist.cc:140
msgid "Length"
msgstr "长度"
-#: src/tools/dcpomatic_player.cc:438 src/tools/dcpomatic_player.cc:761
+#: src/tools/dcpomatic_player.cc:449 src/tools/dcpomatic_player.cc:803
msgid "Loading content"
msgstr "正在载入内容"
-#: src/tools/dcpomatic.cc:1398
+#: src/tools/dcpomatic.cc:1413
msgid "Make &DKDMs...\tCtrl-D"
msgstr "制作 &DKDM...\tCtrl-D"
-#: src/tools/dcpomatic.cc:1396
+#: src/tools/dcpomatic.cc:1411
msgid "Make &KDMs...\tCtrl-K"
msgstr "制作 &KDM \tCtrl+K"
-#: src/tools/dcpomatic.cc:1393
+#: src/tools/dcpomatic.cc:1408
msgid "Make DCP in &batch converter\tCtrl-B"
msgstr "批量制作DCP\tCtrl+B"
-#: src/tools/dcpomatic.cc:1399
+#: src/tools/dcpomatic.cc:1414
#, c-format
msgid "Make DKDM for %s..."
msgstr "制作%s的DKDM..."
-#: src/tools/dcpomatic.cc:1425
+#: src/tools/dcpomatic.cc:1440
msgid "Manage templates..."
msgstr "管理模板…"
-#: src/tools/dcpomatic_editor.cc:225 src/tools/dcpomatic_playlist.cc:132
-#: src/tools/dcpomatic_playlist.cc:330
+#: src/tools/dcpomatic_editor.cc:227 src/tools/dcpomatic_playlist.cc:139
+#: src/tools/dcpomatic_playlist.cc:338
msgid "Name"
msgstr "名称"
-#: src/tools/dcpomatic_playlist.cc:136
+#: src/tools/dcpomatic_playlist.cc:143
msgid "New"
msgstr "新建"
-#: src/tools/dcpomatic.cc:566
+#: src/tools/dcpomatic.cc:568
msgid "New Film"
msgstr "新建影片"
-#: src/tools/dcpomatic_playlist.cc:250
+#: src/tools/dcpomatic_playlist.cc:257
msgid "New Playlist"
msgstr "新建播放列表"
-#: src/tools/dcpomatic.cc:1345
+#: src/tools/dcpomatic.cc:1360
msgid "New...\tCtrl-N"
msgstr "新建工程...\tCtrl+N"
-#: src/tools/dcpomatic_disk.cc:92
+#: src/tools/dcpomatic_disk.cc:93
msgid ""
"No ASSETMAP or ASSETMAP.xml found in this folder. Please choose a DCP "
"folder."
msgstr "在此文件夹中找不到ASSETMAP或ASSETMAP.xml。请选择DCP文件夹。"
-#: src/tools/dcpomatic_playlist.cc:246
+#: src/tools/dcpomatic_playlist.cc:253
msgid ""
"No playlist folder is specified in preferences. Please set one and then try "
"again."
msgstr "首选项中未指定播放列表文件夹,请设置一个,然后重试。"
-#: src/tools/dcpomatic.cc:1415
+#: src/tools/dcpomatic.cc:1430
msgid "Open DCP in &player"
msgstr "在播放器中打开DCP"
-#: src/tools/dcpomatic_editor.cc:343
+#: src/tools/dcpomatic_editor.cc:347
msgid "Open a DCP using File -> Open"
msgstr "请使用 文件->打开 来打开一个DCP"
@@ -777,16 +821,16 @@ msgstr "请使用 文件->打开 来打开一个DCP"
msgid "Output"
msgstr "输出"
-#: src/tools/dcpomatic_combiner.cc:123
+#: src/tools/dcpomatic_combiner.cc:126
msgid "Output DCP folder"
msgstr "导出DCP到文件夹"
-#: src/tools/dcpomatic_editor.cc:407
+#: src/tools/dcpomatic_editor.cc:413
#, c-format
msgid "PKL: %s"
-msgstr ""
+msgstr "PKL: %s"
-#: src/tools/dcpomatic.cc:1376
+#: src/tools/dcpomatic.cc:1391
msgid "Paste settings...\tCtrl-V"
msgstr "粘贴设置...\tCtrl+V"
@@ -798,84 +842,84 @@ msgstr "暂停/继续转换"
msgid "Pause/resume"
msgstr "暂停/继续"
-#: src/tools/dcpomatic_editor.cc:171
+#: src/tools/dcpomatic_editor.cc:173
msgid "Picture"
msgstr "图片"
-#: src/tools/dcpomatic.cc:590
+#: src/tools/dcpomatic.cc:592
#, c-format
msgid ""
"Please check that you do not have Windows controlled folder access enabled "
"for %s."
msgstr "请检查您是否没有为%s启用Windows控制的文件夹访问权限。"
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|N"
msgstr "问题|N"
-#: src/tools/dcpomatic_playlist.cc:417
+#: src/tools/dcpomatic_playlist.cc:429
msgid "Question|Y"
msgstr "问题|Y"
-#: src/tools/dcpomatic_server.cc:243
+#: src/tools/dcpomatic_server.cc:238
msgid "Quit"
msgstr "退出(&Q)"
-#: src/tools/dcpomatic.cc:1967
+#: src/tools/dcpomatic.cc:1981
msgid "Recreate KDM decryption chain"
msgstr "重新创建KDM解密链"
-#: src/tools/dcpomatic.cc:1918 src/tools/dcpomatic.cc:1935
-#: src/tools/dcpomatic.cc:1949 src/tools/dcpomatic.cc:1986
+#: src/tools/dcpomatic.cc:1932 src/tools/dcpomatic.cc:1949
+#: src/tools/dcpomatic.cc:1963 src/tools/dcpomatic.cc:2000
msgid "Recreate signing certificates"
msgstr "重新创建签名证书"
-#: src/tools/dcpomatic_editor.cc:222
+#: src/tools/dcpomatic_editor.cc:224
msgid "Reels"
msgstr "卷"
-#: src/tools/dcpomatic_disk.cc:154
+#: src/tools/dcpomatic_disk.cc:157
msgid "Refresh"
msgstr "刷新"
-#: src/tools/dcpomatic.cc:1760
+#: src/tools/dcpomatic.cc:1774
msgid "Release notes"
msgstr "发行说明"
-#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:341
+#: src/tools/dcpomatic_kdm.cc:218 src/tools/dcpomatic_playlist.cc:350
msgid "Remove"
msgstr "移除"
-#: src/tools/dcpomatic.cc:1441 src/tools/dcpomatic_kdm.cc:342
-#: src/tools/dcpomatic_player.cc:671
+#: src/tools/dcpomatic.cc:1457 src/tools/dcpomatic_kdm.cc:342
+#: src/tools/dcpomatic_player.cc:722
msgid "Report a problem..."
msgstr "报告问题..."
-#: src/tools/dcpomatic.cc:776 src/tools/dcpomatic.cc:1429
+#: src/tools/dcpomatic.cc:778 src/tools/dcpomatic.cc:1444
msgid "Restore default preferences"
msgstr "恢复默认设置"
-#: src/tools/dcpomatic_player.cc:649
+#: src/tools/dcpomatic_player.cc:699
msgid "Right"
msgstr "右"
-#: src/tools/dcpomatic.cc:1410
+#: src/tools/dcpomatic.cc:1425
msgid "S&how DCP in Explorer"
msgstr "&在资源管理器中显示 DCP"
-#: src/tools/dcpomatic.cc:1412
+#: src/tools/dcpomatic.cc:1427
msgid "S&how DCP in Files"
msgstr "&查看DCP文件"
-#: src/tools/dcpomatic.cc:1408
+#: src/tools/dcpomatic.cc:1423
msgid "S&how DCP in Finder"
msgstr "&在Finder中查看DCP"
-#: src/tools/dcpomatic_playlist.cc:320
+#: src/tools/dcpomatic_playlist.cc:328
msgid "Save"
msgstr "保存"
-#: src/tools/dcpomatic.cc:1352
+#: src/tools/dcpomatic.cc:1367
msgid "Save as &template..."
msgstr "保存为模板…"
@@ -897,7 +941,7 @@ msgstr "保存并关闭"
msgid "Save film and duplicate"
msgstr "保存并复制"
-#: src/tools/dcpomatic_player.cc:797
+#: src/tools/dcpomatic_player.cc:840
msgid "Save frame to file"
msgstr "保存场景(帧)到文件"
@@ -905,14 +949,19 @@ msgstr "保存场景(帧)到文件"
msgid "Screens"
msgstr "影厅放映服务器(屏幕)"
-#: src/tools/dcpomatic_editor.cc:440 src/tools/dcpomatic_player.cc:692
+#: src/tools/dcpomatic_editor.cc:451 src/tools/dcpomatic_player.cc:743
msgid "Select DCP to open"
msgstr "选择打开DCP"
-#: src/tools/dcpomatic_player.cc:720
+#: src/tools/dcpomatic_player.cc:771
msgid "Select DCP to open as OV"
msgstr "选择DCP作为OV打开"
+#: src/tools/dcpomatic_verifier.cc:150 src/tools/dcpomatic_verifier.cc:152
+#, fuzzy
+msgid "Select DCP(s)"
+msgstr "选择KDM"
+
#: src/tools/dcpomatic_kdm.cc:821
msgid "Select DKDM File"
msgstr "选择 DKDM 文件"
@@ -921,15 +970,15 @@ msgstr "选择 DKDM 文件"
msgid "Select DKDM file"
msgstr "选择 DKDM 文件"
-#: src/tools/dcpomatic_player.cc:768
+#: src/tools/dcpomatic_player.cc:810 src/tools/dcpomatic_verifier.cc:335
msgid "Select KDM"
msgstr "选择KDM"
-#: src/tools/dcpomatic.cc:1379
+#: src/tools/dcpomatic.cc:1394
msgid "Select all\tShift-Ctrl-A"
msgstr "选择所有\tShift-Ctrl-A"
-#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:603
+#: src/tools/dcpomatic_batch.cc:334 src/tools/dcpomatic.cc:605
msgid "Select film to open"
msgstr "选择打开工程文件"
@@ -937,36 +986,36 @@ msgstr "选择打开工程文件"
msgid "Send KDM emails"
msgstr "通过电子邮件发送KDM"
-#: src/tools/dcpomatic_player.cc:652
+#: src/tools/dcpomatic_player.cc:702
msgid "Set decode resolution to match display"
msgstr "将解码分辨率设置为适应屏幕"
-#: src/tools/dcpomatic_editor.cc:174
+#: src/tools/dcpomatic_editor.cc:176
msgid "Sound"
msgstr "声音"
-#: src/tools/dcpomatic.cc:788 src/tools/dcpomatic.cc:808
+#: src/tools/dcpomatic.cc:790 src/tools/dcpomatic.cc:810
msgid "Specify ZIP file"
msgstr "指定ZIP文件"
-#: src/tools/dcpomatic_server.cc:242
+#: src/tools/dcpomatic_server.cc:237
msgid "Status..."
msgstr "状态…"
-#: src/tools/dcpomatic_editor.cc:177
+#: src/tools/dcpomatic_editor.cc:179
msgid "Subtitle"
msgstr "副标题"
-#: src/tools/dcpomatic.cc:1427 src/tools/dcpomatic_player.cc:662
+#: src/tools/dcpomatic.cc:1442 src/tools/dcpomatic_player.cc:713
msgid "System information..."
msgstr "系统信息…"
-#: src/tools/dcpomatic.cc:1529 src/tools/dcpomatic_player.cc:1057
+#: src/tools/dcpomatic.cc:1545 src/tools/dcpomatic_player.cc:1110
#, c-format
msgid "The %s download server could not be contacted."
msgstr "连接%s下载服务器失败。"
-#: src/tools/dcpomatic.cc:834
+#: src/tools/dcpomatic.cc:836
#, c-format
msgid ""
"The DCP for this film will take up about %.1f GB, and the disk that you are "
@@ -985,7 +1034,7 @@ msgstr ""
"该DCP在创建中将占用约 %.1f GB, 您正在使用的磁盘只有 %.1f GB可用。您是否仍然要"
"把影片添加到队列中?"
-#: src/tools/dcpomatic_player.cc:367
+#: src/tools/dcpomatic_player.cc:378
msgid "The KDM does not allow playback of this content at this time."
msgstr "这个KDM不允许在现在这个时间播放这个内容。"
@@ -1007,11 +1056,11 @@ msgstr ""
"KDM开始时间在签名证书的有效期开始之前(或接近)。请为此KDM设置较晚的启动时"
"间。"
-#: src/tools/dcpomatic.cc:1003
+#: src/tools/dcpomatic.cc:1005
msgid "The certificate chain for signing is invalid"
msgstr "用于签名的证书链无效"
-#: src/tools/dcpomatic.cc:1969
+#: src/tools/dcpomatic.cc:1983
#, c-format
msgid ""
"The certificate chain that %s uses for decrypting KDMs is inconsistent and\n"
@@ -1026,7 +1075,7 @@ msgstr ""
"您是否希望重新创建解密KDM所用的证书链? 您可能需要先选择“否”并在继续之前\n"
"先备份您的配置。"
-#: src/tools/dcpomatic.cc:1920
+#: src/tools/dcpomatic.cc:1934
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1039,7 +1088,7 @@ msgstr ""
"这将使得一些系统无法准确验证DCP。\n"
"您需要重新创建签署DCPs和KDMs的证书链吗?"
-#: src/tools/dcpomatic.cc:1988
+#: src/tools/dcpomatic.cc:2002
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs contains a "
@@ -1055,7 +1104,7 @@ msgstr ""
"这个错误由%s引起,现在已经被修复了\n"
"您想要重新创建签署DCPs和KDMs的证书链吗?"
-#: src/tools/dcpomatic.cc:1937
+#: src/tools/dcpomatic.cc:1951
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs has a validity "
@@ -1068,7 +1117,7 @@ msgstr ""
"这将导致在某些系统上回放DCP时出现问题。\n"
"您需要重新创建签署DCPs和KDMs的证书链吗?"
-#: src/tools/dcpomatic.cc:1951
+#: src/tools/dcpomatic.cc:1965
#, c-format
msgid ""
"The certificate chain that %s uses for signing DCPs and KDMs is inconsistent "
@@ -1081,17 +1130,18 @@ msgstr ""
"除非重新创建,否则%s无法运行。\n"
"您想重新创建签署DCPs和KDMs的证书链吗?"
-#: src/tools/dcpomatic_combiner.cc:164
+#: src/tools/dcpomatic_combiner.cc:167
+#, c++-format
msgid ""
-"The directory %1 already exists and is not empty. Are you sure you want to "
+"The directory {} already exists and is not empty. Are you sure you want to "
"use it?"
-msgstr "目录 %1 已经存在且不为空。确定要使用它?"
+msgstr "目录 {} 已经存在且不为空。确定要使用它?"
-#: src/tools/dcpomatic_disk.cc:292
+#: src/tools/dcpomatic_disk.cc:299
msgid "The disk you selected is no longer available. Please choose another."
msgstr "您选择的磁盘已不可用。请选择其他磁盘。"
-#: src/tools/dcpomatic_disk.cc:371
+#: src/tools/dcpomatic_disk.cc:378
#, c-format
msgid ""
"The drive %s could not be unmounted.\n"
@@ -1100,30 +1150,30 @@ msgstr ""
"无法卸载驱动器%s。\n"
"关闭任何正在使用它的应用程序,然后再试一次。(%s)"
-#: src/tools/dcpomatic_disk.cc:531 src/tools/dcpomatic_player.cc:1445
+#: src/tools/dcpomatic_disk.cc:543 src/tools/dcpomatic_player.cc:1517
msgid ""
"The existing configuration failed to load. Default values will be used "
"instead. These may take a short time to create."
msgstr "现有配置文件损坏,系统将会使用默认的配置文件,请稍候。"
-#: src/tools/dcpomatic.cc:1531 src/tools/dcpomatic_player.cc:1059
+#: src/tools/dcpomatic.cc:1547 src/tools/dcpomatic_player.cc:1112
#, c-format
msgid "There are no new versions of %s available."
msgstr "%s 没有可用的新版本。"
-#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1172
-#: src/tools/dcpomatic_disk.cc:267
+#: src/tools/dcpomatic_batch.cc:278 src/tools/dcpomatic.cc:1187
+#: src/tools/dcpomatic_disk.cc:274
msgid "There are unfinished jobs; are you sure you want to quit?"
msgstr "有未完成的操作,确定退出吗?"
-#: src/tools/dcpomatic.cc:483
+#: src/tools/dcpomatic.cc:485
msgid ""
"This film was created with an old version of DVD-o-matic and may not load "
"correctly in this version. Please check the film's settings carefully."
msgstr ""
"老版本DVD-o-matic中创建的工程无法在高于创建版本中被打开,具体请参考设置。"
-#: src/tools/dcpomatic_player.cc:447
+#: src/tools/dcpomatic_player.cc:458
#, c-format
msgid ""
"This looks like a %s project folder, which cannot be loaded into the "
@@ -1133,58 +1183,81 @@ msgstr ""
"这似乎是 %s 项目文件夹,播放器无法加载。如果要播放,请选择 %s 项目文件夹中的"
"DCP目录。"
-#: src/tools/dcpomatic_player.cc:661
+#: src/tools/dcpomatic_verifier.cc:190
+msgid ""
+"Tick to check details of the picture asset, such as frame sizes and JPEG2000 "
+"bitstream validity. These checks are quite time-consuming."
+msgstr ""
+"勾选以检查图像资产的详细信息,如帧大小和JPEG2000比特流的有效性。这些检查相当"
+"耗时。"
+
+#: src/tools/dcpomatic_player.cc:712
msgid "Timing..."
msgstr "计时..."
-#: src/tools/dcpomatic_disk.cc:118
+#: src/tools/dcpomatic_disk.cc:119
msgid "Tools"
msgstr "工具"
-#: src/tools/dcpomatic.cc:588
+#: src/tools/dcpomatic.cc:590
#, c-format
msgid "Try removing the %s characters from your folder name."
msgstr "尝试将文件夹名中的 %s 字符移除。"
-#: src/tools/dcpomatic_playlist.cc:332
+#: src/tools/dcpomatic_playlist.cc:340
msgid "Type"
msgstr "类型"
-#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1173
-#: src/tools/dcpomatic_disk.cc:268
+#: src/tools/dcpomatic_batch.cc:279 src/tools/dcpomatic.cc:1188
+#: src/tools/dcpomatic_disk.cc:275
msgid "Unfinished jobs"
msgstr "未完成的进程"
-#: src/tools/dcpomatic_disk.cc:117
+#: src/tools/dcpomatic_disk.cc:118
msgid "Uninstall..."
msgstr "卸载…"
-#: src/tools/dcpomatic_player.cc:817
+#: src/tools/dcpomatic_player.cc:860
#, c-format
msgid "Unrecognised file extension %s (use .jpg, .jpeg or .png)"
msgstr "无法识别文件格式 %s(请使用 .jpg、.jpeg 或 .png)"
-#: src/tools/dcpomatic_playlist.cc:338
+#: src/tools/dcpomatic_playlist.cc:347
msgid "Up"
msgstr "向上"
-#: src/tools/dcpomatic_player.cc:999
-#, fuzzy
+#: src/tools/dcpomatic.cc:1455
+msgid "User manual..."
+msgstr ""
+
+#: src/tools/dcpomatic_verifier.cc:201
+msgid "Verify"
+msgstr "验证"
+
+#: src/tools/dcpomatic_player.cc:1041
msgid "Verify DCP"
-msgstr "验证 DCP..."
+msgstr "验证 DCP"
-#: src/tools/dcpomatic_player.cc:658
+#: src/tools/dcpomatic_player.cc:708
msgid "Verify DCP..."
msgstr "验证 DCP..."
-#: src/tools/dcpomatic.cc:1422
+#: src/tools/dcpomatic_verifier.cc:187
+msgid "Verify picture asset details"
+msgstr "验证图像资产详细信息"
+
+#: src/tools/dcpomatic.cc:1437
msgid "Version File (VF)..."
msgstr "版本文件 (VF)…"
-#: src/tools/dcpomatic.cc:1419
+#: src/tools/dcpomatic.cc:1434
msgid "Video waveform..."
msgstr "视频波形…"
+#: src/tools/dcpomatic_verifier.cc:194
+msgid "Write logs to DCP folders"
+msgstr "记录日志到DCP文件夹中"
+
#: src/tools/dcpomatic_kdm.cc:795
msgid ""
"You are about to remove a DKDM. This will make it impossible to decrypt the "
@@ -1193,7 +1266,7 @@ msgstr ""
"您将删除当前DKDM,这会导致以后无法解密对应的DCP,并且无法找回DKDM。您确定要删"
"除吗?"
-#: src/tools/dcpomatic.cc:988
+#: src/tools/dcpomatic.cc:990
#, c-format
msgid ""
"You are making a DKDM which is encrypted by a private key held in\n"
@@ -1213,7 +1286,7 @@ msgstr ""
"weight=\"bold\" size=\"larger\">备份这个文件</span> 如果丢失,您的DKDM(包括"
"生成的DCP包)将无法使用。"
-#: src/tools/dcpomatic.cc:851
+#: src/tools/dcpomatic.cc:853
msgid ""
"You are making an encrypted DCP. It will not be possible to make KDMs for "
"this DCP unless you have copies of the <tt>metadata.xml</tt> file within the "
@@ -1222,36 +1295,39 @@ msgid ""
"You should ensure that these files are <span weight=\"bold\" "
"size=\"larger\">BACKED UP</span> if you want to make KDMs for this film."
msgstr ""
-"您已经制作了一个加密的DCP. 您不能生成KDM文件除非您备份下列文件 "
-"<tt>metadata.xml</tt> \n"
+"您正在制作加密的DCP。除非您备份了下列文件<tt>metadata.xml</tt>的副本,并且在"
+"DCP中有元数据文件的副本。否则无法为此DCP制作KDM。 \n"
"\n"
-"请在生成KDM之前再次确认已经 <span weight=\"bold\" size=\"larger\">备份</"
-"span> 该文件。"
+"请在生成KDMs之前再次确认已经 <span weight=\"bold\" size=\"larger\">备份了</"
+"span> 这些文件。"
-#: src/tools/dcpomatic.cc:1715
+#: src/tools/dcpomatic.cc:1733
#, c-format
msgid ""
"You are running the 32-bit version of %s on a 64-bit version of Windows. "
"This will limit the memory available to %s and may cause errors. You are "
"strongly advised to install the 64-bit version of %s."
msgstr ""
-"您正在Windows的64位系统中使用32位%s的版本。这会限制%s可用的内存,并且可能导致"
-"报错。强烈建议您安装64位%s的版本。"
+"您正在Windows的64位系统中使用32位 %s 的版本。这会限制 %s 可用的内存,并且可能"
+"导致报错。强烈建议您安装64位 %s 的版本。"
-#: src/tools/dcpomatic_disk.cc:387
+#: src/tools/dcpomatic_disk.cc:394
msgid ""
"You did not correctly confirm that you read the warning that was just "
"shown. Please try again."
msgstr "您没有正确确认您已阅读了刚刚显示的警告。请再试一次。"
-#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:612
-#: src/tools/dcpomatic_editor.cc:446 src/tools/dcpomatic_player.cc:698
-#: src/tools/dcpomatic_player.cc:729
+#: src/tools/dcpomatic_batch.cc:343 src/tools/dcpomatic.cc:614
+#: src/tools/dcpomatic_editor.cc:457 src/tools/dcpomatic_player.cc:749
+#: src/tools/dcpomatic_player.cc:780
msgid ""
"You did not select a folder. Make sure that you select a folder before "
"clicking Open."
msgstr "您没有选择文件夹。请确保您单击打开之前,选择一个文件夹。"
+#~ msgid "Choose a folder"
+#~ msgstr "选择一个文件夹"
+
#~ msgid ""
#~ "The player is dropping a lot of frames, so playback may not be accurate.\n"
#~ "\n"
@@ -1456,5 +1532,5 @@ msgstr "您没有选择文件夹。请确保您单击打开之前,选择一个
#~ msgstr "&Analizar audio"
#, fuzzy
-#~ msgid "The directory %1 already exists."
+#~ msgid "The directory {} already exists."
#~ msgstr "La carpeta %s ya existe."
diff --git a/src/tools/wscript b/src/tools/wscript
index e6d7c4be1..3128486f5 100644
--- a/src/tools/wscript
+++ b/src/tools/wscript
@@ -98,7 +98,7 @@ def configure(conf):
def build(bld):
uselib = 'BOOST_THREAD BOOST_DATETIME DCP XMLSEC CXML XMLPP AVFORMAT AVFILTER AVCODEC '
uselib += 'AVUTIL SWSCALE SWRESAMPLE POSTPROC CURL BOOST_FILESYSTEM SSH ZIP CAIROMM FONTCONFIG PANGOMM SUB '
- uselib += 'SNDFILE SAMPLERATE BOOST_REGEX ICU NETTLE RTAUDIO PNG JPEG LEQM_NRT SQLITE3 '
+ uselib += 'SNDFILE SAMPLERATE BOOST_REGEX ICU NETTLE RTAUDIO PNG JPEG LEQM_NRT SQLITE3 BOOST_PROCESS '
if bld.env.ENABLE_DISK:
if bld.env.TARGET_LINUX:
@@ -180,6 +180,7 @@ def pot(bld):
dcpomatic_player.cc
dcpomatic_playlist.cc
dcpomatic_server.cc
+ dcpomatic_verifier.cc
"""
i18n.pot(os.path.join('src', 'tools'), cc, 'dcpomatic')