diff options
| author | Carl Hetherington <cth@carlh.net> | 2025-01-14 11:24:22 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2025-01-15 20:11:35 +0100 |
| commit | 450da5182c3e224af87f269c3216ac13ae39ec1f (patch) | |
| tree | 41f58eced468880f44cd07bbfdd2b52c5fe0e83d | |
| parent | 3433dfa45f15e40ed9d5f5d17045f02bb6fd01ce (diff) | |
Add a group ID to VF PKLs (#2943).
| -rw-r--r-- | cscript | 2 | ||||
| -rw-r--r-- | src/lib/writer.cc | 6 | ||||
| -rw-r--r-- | test/vf_test.cc | 4 |
3 files changed, 10 insertions, 2 deletions
@@ -425,7 +425,7 @@ def make_spec(filename, version, target, options, requires=None): print('/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :', file=f) def dependencies(target, options): - deps = [('libdcp', 'v1.10.4', {'c++17': target.platform.startswith('osx')})] + deps = [('libdcp', 'v1.10.6', {'c++17': target.platform.startswith('osx')})] deps.append(('libsub', 'v1.6.52')) deps.append(('leqm-nrt', '30dcaea1373ac62fba050e02ce5b0c1085797a23')) deps.append(('rtaudio', 'f619b76')) diff --git a/src/lib/writer.cc b/src/lib/writer.cc index 3f5be531e..33e4b8f81 100644 --- a/src/lib/writer.cc +++ b/src/lib/writer.cc @@ -711,7 +711,11 @@ Writer::finish() dcp.set_creator(creator); dcp.set_annotation_text(film()->dcp_name()); - dcp.write_xml(signer, !film()->limit_to_smpte_bv20(), Config::instance()->dcp_metadata_filename_format()); + optional<string> group_id; + if (dcpomatic::film::is_vf(film())) { + group_id = dcp::make_uuid(); + } + dcp.write_xml(signer, !film()->limit_to_smpte_bv20(), Config::instance()->dcp_metadata_filename_format(), group_id); LOG_GENERAL ( N_("Wrote %1 FULL, %2 FAKE, %3 REPEAT, %4 pushed to disk"), _full_written, _fake_written, _repeat_written, _pushed_to_disk diff --git a/test/vf_test.cc b/test/vf_test.cc index 0313be1d9..cda3cdee1 100644 --- a/test/vf_test.cc +++ b/test/vf_test.cc @@ -141,6 +141,8 @@ BOOST_AUTO_TEST_CASE (vf_test2) BOOST_REQUIRE (ov_c.cpls()[0]->reels()[0]->main_sound()); string const sound_id = ov_c.cpls()[0]->reels()[0]->main_sound()->id(); BOOST_REQUIRE (!ov_c.cpls()[0]->reels()[0]->main_subtitle()); + BOOST_REQUIRE(!ov_c.pkls().empty()); + BOOST_CHECK(!static_cast<bool>(ov_c.pkls()[0]->group_id())); dcp::DCP vf_c (vf->dir(vf->dcp_name())); vf_c.read (); @@ -151,6 +153,8 @@ BOOST_AUTO_TEST_CASE (vf_test2) BOOST_REQUIRE (vf_c.cpls()[0]->reels()[0]->main_sound()); BOOST_CHECK_EQUAL (vf_c.cpls()[0]->reels()[0]->main_sound()->id(), sound_id); BOOST_REQUIRE (vf_c.cpls()[0]->reels()[0]->main_subtitle()); + BOOST_REQUIRE(!vf_c.pkls().empty()); + BOOST_CHECK(static_cast<bool>(vf_c.pkls()[0]->group_id())); } |
