From ea51ac3483161343b7aefabe54420c6cb431c0fe Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Fri, 2 Apr 2021 23:45:19 +0200 Subject: [PATCH] Use studio and facility from Interop/SMPTE metadata rather than ISDCF. --- src/lib/film.cc | 20 +++++++-- src/lib/film.h | 7 +++ src/lib/isdcf_metadata.cc | 11 +---- src/lib/isdcf_metadata.h | 2 - src/wx/dcp_panel.cc | 2 + src/wx/isdcf_metadata_dialog.cc | 10 ----- src/wx/isdcf_metadata_dialog.h | 2 - src/wx/metadata_dialog.cc | 75 +++++++++++++++++++++++++++++++++ src/wx/metadata_dialog.h | 10 ++++- src/wx/smpte_metadata_dialog.cc | 33 --------------- src/wx/smpte_metadata_dialog.h | 4 -- test/isdcf_name_test.cc | 66 ++++++++++++++--------------- 12 files changed, 144 insertions(+), 98 deletions(-) diff --git a/src/lib/film.cc b/src/lib/film.cc index 1f188021b..1275c571b 100644 --- a/src/lib/film.cc +++ b/src/lib/film.cc @@ -490,6 +490,9 @@ Film::metadata (bool with_content_paths) const if (_facility) { root->add_child("Facility")->add_child_text(*_facility); } + if (_studio) { + root->add_child("Studio")->add_child_text(*_studio); + } if (_luminance) { root->add_child("LuminanceValue")->add_child_text(raw_convert(_luminance->value())); root->add_child("LuminanceUnit")->add_child_text(dcp::Luminance::unit_to_string(_luminance->unit())); @@ -666,6 +669,7 @@ Film::read_metadata (optional path) _chain = f.optional_string_child("Chain"); _distributor = f.optional_string_child("Distributor"); _facility = f.optional_string_child("Facility"); + _studio = f.optional_string_child("Studio"); auto value = f.optional_number_child("LuminanceValue"); auto unit = f.optional_string_child("LuminanceUnit"); @@ -986,8 +990,8 @@ Film::isdcf_name (bool if_created_now) const d += "_" + resolution_to_string (_resolution); - if (!dm.studio.empty ()) { - d += "_" + dm.studio; + if (_studio && _studio->length() >= 2) { + d += "_" + to_upper (_studio->substr(0, 4)); } if (if_created_now) { @@ -996,8 +1000,8 @@ Film::isdcf_name (bool if_created_now) const d += "_" + boost::gregorian::to_iso_string (_isdcf_date); } - if (!dm.facility.empty ()) { - d += "_" + dm.facility; + if (_facility && _facility->length() >= 3) { + d += "_" + to_upper(_facility->substr(0, 3)); } if (_interop) { @@ -2061,6 +2065,14 @@ Film::set_facility (optional f) } +void +Film::set_studio (optional s) +{ + FilmChangeSignaller ch (this, Property::STUDIO); + _studio = s; +} + + optional Film::marker (dcp::Marker type) const { diff --git a/src/lib/film.h b/src/lib/film.h index 6b50bba5e..fa87c6c35 100644 --- a/src/lib/film.h +++ b/src/lib/film.h @@ -239,6 +239,7 @@ public: CHAIN, DISTRIBUTOR, FACILITY, + STUDIO, LUMINANCE, }; @@ -373,6 +374,10 @@ public: return _facility; } + boost::optional studio () const { + return _studio; + } + boost::optional luminance () const { return _luminance; } @@ -416,6 +421,7 @@ public: void set_status (dcp::Status s); void set_chain (boost::optional c = boost::none); void set_facility (boost::optional f = boost::none); + void set_studio (boost::optional s = boost::none); void set_distributor (boost::optional d = boost::none); void set_luminance (boost::optional l = boost::none); @@ -522,6 +528,7 @@ private: boost::optional _chain; boost::optional _distributor; boost::optional _facility; + boost::optional _studio; boost::optional _luminance; int _state_version; diff --git a/src/lib/isdcf_metadata.cc b/src/lib/isdcf_metadata.cc index c190ba3dc..eb8bcb1a5 100644 --- a/src/lib/isdcf_metadata.cc +++ b/src/lib/isdcf_metadata.cc @@ -34,10 +34,7 @@ using std::shared_ptr; using dcp::raw_convert; ISDCFMetadata::ISDCFMetadata (cxml::ConstNodePtr node) - : studio (node->string_child ("Studio")) - , facility (node->string_child ("Facility")) - /* This stuff was added later */ - , temp_version (node->optional_bool_child ("TempVersion").get_value_or (false)) + : temp_version (node->optional_bool_child ("TempVersion").get_value_or (false)) , pre_release (node->optional_bool_child ("PreRelease").get_value_or (false)) , red_band (node->optional_bool_child ("RedBand").get_value_or (false)) , chain (node->optional_string_child ("Chain").get_value_or ("")) @@ -50,8 +47,6 @@ ISDCFMetadata::ISDCFMetadata (cxml::ConstNodePtr node) void ISDCFMetadata::as_xml (xmlpp::Node* root) const { - root->add_child("Studio")->add_child_text (studio); - root->add_child("Facility")->add_child_text (facility); root->add_child("TempVersion")->add_child_text (temp_version ? "1" : "0"); root->add_child("PreRelease")->add_child_text (pre_release ? "1" : "0"); root->add_child("RedBand")->add_child_text (red_band ? "1" : "0"); @@ -63,9 +58,7 @@ ISDCFMetadata::as_xml (xmlpp::Node* root) const bool operator== (ISDCFMetadata const & a, ISDCFMetadata const & b) { - return a.studio == b.studio && - a.facility == b.facility && - a.temp_version == b.temp_version && + return a.temp_version == b.temp_version && a.pre_release == b.pre_release && a.red_band == b.red_band && a.chain == b.chain && diff --git a/src/lib/isdcf_metadata.h b/src/lib/isdcf_metadata.h index 1c80e7b5d..b578dc997 100644 --- a/src/lib/isdcf_metadata.h +++ b/src/lib/isdcf_metadata.h @@ -43,8 +43,6 @@ public: void as_xml (xmlpp::Node *) const; void read_old_metadata (std::string, std::string); - std::string studio; - std::string facility; /** true if this is a temporary version (without final picture or sound) */ bool temp_version; /** true if this is a pre-release version (final picture and sound, but without accessibility features) */ diff --git a/src/wx/dcp_panel.cc b/src/wx/dcp_panel.cc index 6d0e64965..a46ae0226 100644 --- a/src/wx/dcp_panel.cc +++ b/src/wx/dcp_panel.cc @@ -450,6 +450,8 @@ DCPPanel::film_changed (Film::Property p) case Film::Property::VERSION_NUMBER: case Film::Property::RELEASE_TERRITORY: case Film::Property::RATINGS: + case Film::Property::FACILITY: + case Film::Property::STUDIO: setup_dcp_name (); break; default: diff --git a/src/wx/isdcf_metadata_dialog.cc b/src/wx/isdcf_metadata_dialog.cc index f7cb8df8c..559047742 100644 --- a/src/wx/isdcf_metadata_dialog.cc +++ b/src/wx/isdcf_metadata_dialog.cc @@ -35,12 +35,6 @@ using std::shared_ptr; ISDCFMetadataDialog::ISDCFMetadataDialog (wxWindow* parent, ISDCFMetadata dm, bool threed) : TableDialog (parent, _("ISDCF name"), 2, 1, true) { - add (_("Studio (e.g. TCF)"), true); - _studio = add (new wxTextCtrl (this, wxID_ANY)); - - add (_("Facility (e.g. DLA)"), true); - _facility = add (new wxTextCtrl (this, wxID_ANY)); - _temp_version = add (new CheckBox(this, _("Temp version"))); add_spacer (); @@ -63,8 +57,6 @@ ISDCFMetadataDialog::ISDCFMetadataDialog (wxWindow* parent, ISDCFMetadata dm, bo add (_("Mastered luminance (e.g. 14fl)"), true); _mastered_luminance = add (new wxTextCtrl (this, wxID_ANY)); - _studio->SetValue (std_to_wx (dm.studio)); - _facility->SetValue (std_to_wx (dm.facility)); _temp_version->SetValue (dm.temp_version); _pre_release->SetValue (dm.pre_release); _red_band->SetValue (dm.red_band); @@ -81,8 +73,6 @@ ISDCFMetadataDialog::isdcf_metadata () const { ISDCFMetadata dm; - dm.studio = wx_to_std (_studio->GetValue ()); - dm.facility = wx_to_std (_facility->GetValue ()); dm.temp_version = _temp_version->GetValue (); dm.pre_release = _pre_release->GetValue (); dm.red_band = _red_band->GetValue (); diff --git a/src/wx/isdcf_metadata_dialog.h b/src/wx/isdcf_metadata_dialog.h index 2fc8ca8c3..47cfd54a7 100644 --- a/src/wx/isdcf_metadata_dialog.h +++ b/src/wx/isdcf_metadata_dialog.h @@ -33,8 +33,6 @@ public: ISDCFMetadata isdcf_metadata () const; private: - wxTextCtrl* _studio; - wxTextCtrl* _facility; wxCheckBox* _temp_version; wxCheckBox* _pre_release; wxCheckBox* _red_band; diff --git a/src/wx/metadata_dialog.cc b/src/wx/metadata_dialog.cc index 376591ca2..17151161c 100644 --- a/src/wx/metadata_dialog.cc +++ b/src/wx/metadata_dialog.cc @@ -72,9 +72,18 @@ MetadataDialog::setup () overall_sizer->Layout (); overall_sizer->SetSizeHints (this); + _enable_facility->Bind (wxEVT_CHECKBOX, boost::bind(&MetadataDialog::enable_facility_changed, this)); + _facility->Bind (wxEVT_TEXT, boost::bind(&MetadataDialog::facility_changed, this)); + _enable_studio->Bind (wxEVT_CHECKBOX, boost::bind(&MetadataDialog::enable_studio_changed, this)); + _studio->Bind (wxEVT_TEXT, boost::bind(&MetadataDialog::studio_changed, this)); + _film_changed_connection = film()->Change.connect(boost::bind(&MetadataDialog::film_changed, this, _1, _2)); film_changed (ChangeType::DONE, Film::Property::RELEASE_TERRITORY); + film_changed (ChangeType::DONE, Film::Property::FACILITY); + film_changed (ChangeType::DONE, Film::Property::STUDIO); + + setup_sensitivity (); } @@ -92,6 +101,16 @@ MetadataDialog::film_changed (ChangeType type, Film::Property property) _release_territory = *rt; checked_set (_release_territory_text, std_to_wx(*dcp::LanguageTag::get_subtag_description(*_release_territory))); } + } else if (property == Film::Property::FACILITY) { + checked_set (_enable_facility, static_cast(film()->facility())); + if (film()->facility()) { + checked_set (_facility, *film()->facility()); + } + } else if (property == Film::Property::STUDIO) { + checked_set (_enable_studio, static_cast(film()->studio())); + if (film()->studio()) { + checked_set (_studio, *film()->studio()); + } } } @@ -136,6 +155,8 @@ MetadataDialog::setup_sensitivity () auto const enabled = _enable_release_territory->GetValue(); _release_territory_text->Enable (enabled); _edit_release_territory->Enable (enabled); + _facility->Enable (_enable_facility->GetValue()); + _studio->Enable (_enable_studio->GetValue()); } @@ -150,3 +171,57 @@ MetadataDialog::enable_release_territory_changed () } } + +void +MetadataDialog::setup_advanced (wxPanel* panel, wxSizer* sizer) +{ + _enable_facility = new wxCheckBox (panel, wxID_ANY, _("Facility")); + sizer->Add (_enable_facility, 0, wxRIGHT | wxALIGN_CENTER_VERTICAL); + _facility = new wxTextCtrl (panel, wxID_ANY); + sizer->Add (_facility, 1, wxEXPAND); + + _enable_studio = new wxCheckBox (panel, wxID_ANY, _("Studio")); + sizer->Add (_enable_studio, 0, wxRIGHT | wxALIGN_CENTER_VERTICAL); + _studio = new wxTextCtrl (panel, wxID_ANY); + sizer->Add (_studio, 1, wxEXPAND); +} + + +void +MetadataDialog::facility_changed () +{ + film()->set_facility (wx_to_std(_facility->GetValue())); +} + + +void +MetadataDialog::enable_facility_changed () +{ + setup_sensitivity (); + if (_enable_facility->GetValue()) { + film()->set_facility (wx_to_std(_facility->GetValue())); + } else { + film()->set_facility (); + } +} + + +void +MetadataDialog::studio_changed () +{ + film()->set_studio (wx_to_std(_studio->GetValue())); +} + + +void +MetadataDialog::enable_studio_changed () +{ + setup_sensitivity (); + if (_enable_studio->GetValue()) { + film()->set_studio (wx_to_std(_studio->GetValue())); + } else { + film()->set_studio (); + } +} + + diff --git a/src/wx/metadata_dialog.h b/src/wx/metadata_dialog.h index 8483d8615..50533fc0f 100644 --- a/src/wx/metadata_dialog.h +++ b/src/wx/metadata_dialog.h @@ -44,13 +44,17 @@ public: protected: virtual void setup_standard (wxPanel*, wxSizer*); - virtual void setup_advanced (wxPanel*, wxSizer*) {} + virtual void setup_advanced (wxPanel*, wxSizer*); virtual void film_changed (ChangeType type, Film::Property property); virtual void setup_sensitivity (); private: void edit_release_territory (); void enable_release_territory_changed (); + void facility_changed (); + void enable_facility_changed (); + void studio_changed (); + void enable_studio_changed (); wxCheckBox* _enable_release_territory; /** The current release territory displayed in the UI; since we can't easily convert @@ -60,6 +64,10 @@ private: boost::optional _release_territory; wxStaticText* _release_territory_text; Button* _edit_release_territory; + wxCheckBox* _enable_facility; + wxTextCtrl* _facility; + wxCheckBox* _enable_studio; + wxTextCtrl* _studio; boost::signals2::scoped_connection _film_changed_connection; }; diff --git a/src/wx/smpte_metadata_dialog.cc b/src/wx/smpte_metadata_dialog.cc index 857be282c..37a957921 100644 --- a/src/wx/smpte_metadata_dialog.cc +++ b/src/wx/smpte_metadata_dialog.cc @@ -120,11 +120,6 @@ SMPTEMetadataDialog::setup_advanced (wxPanel* panel, wxSizer* sizer) _distributor = new wxTextCtrl (panel, wxID_ANY); sizer->Add (_distributor, 1, wxEXPAND); - _enable_facility = new wxCheckBox (panel, wxID_ANY, _("Facility")); - sizer->Add (_enable_facility, 0, wxRIGHT | wxALIGN_CENTER_VERTICAL); - _facility = new wxTextCtrl (panel, wxID_ANY); - sizer->Add (_facility, 1, wxEXPAND); - add_label_to_sizer (sizer, panel, _("Luminance"), true, 0, wxRIGHT | wxALIGN_CENTER_VERTICAL); { auto s = new wxBoxSizer (wxHORIZONTAL); @@ -187,8 +182,6 @@ SMPTEMetadataDialog::setup () _chain->Bind (wxEVT_TEXT, boost::bind(&SMPTEMetadataDialog::chain_changed, this)); _enable_distributor->Bind (wxEVT_CHECKBOX, boost::bind(&SMPTEMetadataDialog::enable_distributor_changed, this)); _distributor->Bind (wxEVT_TEXT, boost::bind(&SMPTEMetadataDialog::distributor_changed, this)); - _enable_facility->Bind (wxEVT_CHECKBOX, boost::bind(&SMPTEMetadataDialog::enable_facility_changed, this)); - _facility->Bind (wxEVT_TEXT, boost::bind(&SMPTEMetadataDialog::facility_changed, this)); _luminance_value->Bind (wxEVT_SPINCTRLDOUBLE, boost::bind(&SMPTEMetadataDialog::luminance_changed, this)); _luminance_unit->Bind (wxEVT_CHOICE, boost::bind(&SMPTEMetadataDialog::luminance_changed, this)); @@ -197,7 +190,6 @@ SMPTEMetadataDialog::setup () film_changed (ChangeType::DONE, Film::Property::STATUS); film_changed (ChangeType::DONE, Film::Property::CHAIN); film_changed (ChangeType::DONE, Film::Property::DISTRIBUTOR); - film_changed (ChangeType::DONE, Film::Property::FACILITY); film_changed (ChangeType::DONE, Film::Property::CONTENT_VERSIONS); film_changed (ChangeType::DONE, Film::Property::LUMINANCE); @@ -240,11 +232,6 @@ SMPTEMetadataDialog::film_changed (ChangeType type, Film::Property property) if (film()->distributor()) { checked_set (_distributor, *film()->distributor()); } - } else if (property == Film::Property::FACILITY) { - checked_set (_enable_facility, static_cast(film()->facility())); - if (film()->facility()) { - checked_set (_facility, *film()->facility()); - } } else if (property == Film::Property::LUMINANCE) { auto lum = film()->luminance(); if (lum) { @@ -338,13 +325,6 @@ SMPTEMetadataDialog::distributor_changed () } -void -SMPTEMetadataDialog::facility_changed () -{ - film()->set_facility (wx_to_std(_facility->GetValue())); -} - - void SMPTEMetadataDialog::luminance_changed () { @@ -371,7 +351,6 @@ SMPTEMetadataDialog::setup_sensitivity () _chain->Enable (_enable_chain->GetValue()); _distributor->Enable (_enable_distributor->GetValue()); - _facility->Enable (_enable_facility->GetValue()); } @@ -399,15 +378,3 @@ SMPTEMetadataDialog::enable_distributor_changed () } -void -SMPTEMetadataDialog::enable_facility_changed () -{ - setup_sensitivity (); - if (_enable_facility->GetValue()) { - film()->set_facility (wx_to_std(_facility->GetValue())); - } else { - film()->set_facility (); - } -} - - diff --git a/src/wx/smpte_metadata_dialog.h b/src/wx/smpte_metadata_dialog.h index 28cc38143..f1cbee977 100644 --- a/src/wx/smpte_metadata_dialog.h +++ b/src/wx/smpte_metadata_dialog.h @@ -59,11 +59,9 @@ private: void status_changed (); void chain_changed (); void distributor_changed (); - void facility_changed (); void luminance_changed (); void enable_chain_changed (); void enable_distributor_changed (); - void enable_facility_changed (); LanguageTagWidget* _name_language; wxSpinCtrl* _version_number; @@ -72,8 +70,6 @@ private: wxTextCtrl* _chain; wxCheckBox* _enable_distributor; wxTextCtrl* _distributor; - wxCheckBox* _enable_facility; - wxTextCtrl* _facility; wxSpinCtrlDouble* _luminance_value; wxChoice* _luminance_unit; EditableList* _ratings; diff --git a/test/isdcf_name_test.cc b/test/isdcf_name_test.cc index 4ddf57e70..b55cea1ad 100644 --- a/test/isdcf_name_test.cc +++ b/test/isdcf_name_test.cc @@ -41,8 +41,9 @@ using std::cout; -using std::shared_ptr; using std::make_shared; +using std::shared_ptr; +using std::string; BOOST_AUTO_TEST_CASE (isdcf_name_test) @@ -63,17 +64,16 @@ BOOST_AUTO_TEST_CASE (isdcf_name_test) film->set_content_versions({"1"}); film->set_release_territory(dcp::LanguageTag::RegionSubtag("GB")); film->set_ratings({dcp::Rating("BBFC", "PG")}); + film->set_studio (string("ST")); + film->set_facility (string("FAC")); ISDCFMetadata m; - m.studio = "ST"; - m.facility = "FA"; film->set_isdcf_metadata (m); film->set_interop (true); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilm_FTR-1_F_EN-XX_GB-PG_10_2K_ST_20140704_FA_IOP_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilm_FTR-1_F_EN-XX_GB-PG_10_2K_ST_20140704_FAC_IOP_OV"); /* Check that specifying no audio language writes XX */ audio->audio->set_language (boost::none); - film->set_isdcf_metadata (m); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilm_FTR-1_F_XX-XX_GB-PG_10_2K_ST_20140704_FA_IOP_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilm_FTR-1_F_XX-XX_GB-PG_10_2K_ST_20140704_FAC_IOP_OV"); /* Test a long name and some different data */ @@ -91,21 +91,21 @@ BOOST_AUTO_TEST_CASE (isdcf_name_test) film->set_version_number(2); film->set_release_territory(dcp::LanguageTag::RegionSubtag("US")); film->set_ratings({dcp::Rating("MPA", "R")}); + film->set_studio (string("di")); + film->set_facility (string("ppfacility")); BOOST_REQUIRE (!wait_for_jobs()); audio = content_factory("test/data/sine_440.wav").front(); film->examine_and_add_content (audio); BOOST_REQUIRE (!wait_for_jobs()); BOOST_REQUIRE (audio->audio); audio->audio->set_language (dcp::LanguageTag("de-DE")); - m.studio = "DI"; - m.facility = "PP"; film->set_isdcf_metadata (m); film->set_interop (false); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_TLR-2_S_DE-fr_US-R_MOS_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_TLR-2_S_DE-fr_US-R_MOS_4K_DI_20140704_PPF_SMPTE_OV"); /* Test to see that RU ratings like 6+ survive */ film->set_ratings({dcp::Rating("RARS", "6+")}); - BOOST_CHECK_EQUAL (film->dcp_name(false), "MyNiceFilmWith_TLR-2_S_DE-fr_US-6+_MOS_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->dcp_name(false), "MyNiceFilmWith_TLR-2_S_DE-fr_US-6+_MOS_4K_DI_20140704_PPF_SMPTE_OV"); film->set_ratings({dcp::Rating("MPA", "R")}); /* Test interior aspect ratio: shouldn't be shown with trailers */ @@ -115,26 +115,26 @@ BOOST_AUTO_TEST_CASE (isdcf_name_test) BOOST_REQUIRE (!wait_for_jobs()); content->video->set_custom_ratio (1.33); film->set_container (Ratio::from_id ("185")); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_TLR-2_F_DE-fr_US-R_MOS_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_TLR-2_F_DE-fr_US-R_MOS_4K_DI_20140704_PPF_SMPTE_OV"); /* But should be shown for anything else */ film->set_dcp_content_type (DCPContentType::from_isdcf_name ("XSN")); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_XSN-2_F-133_DE-fr_US-R_MOS_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_XSN-2_F-133_DE-fr_US-R_MOS_4K_DI_20140704_PPF_SMPTE_OV"); /* And it should always be numeric */ content->video->set_custom_ratio (2.39); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_XSN-2_F-239_DE-fr_US-R_MOS_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_XSN-2_F-239_DE-fr_US-R_MOS_4K_DI_20140704_PPF_SMPTE_OV"); content->video->set_custom_ratio (1.9); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_XSN-2_F-190_DE-fr_US-R_MOS_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_XSN-2_F-190_DE-fr_US-R_MOS_4K_DI_20140704_PPF_SMPTE_OV"); content->video->set_custom_ratio (1.33); /* Test 3D */ film->set_three_d (true); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_XSN-2-3D_F-133_DE-fr_US-R_MOS_4K_DI_20140704_PP_SMPTE-3D_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_XSN-2-3D_F-133_DE-fr_US-R_MOS_4K_DI_20140704_PPF_SMPTE-3D_OV"); /* Test content type modifiers */ @@ -147,7 +147,7 @@ BOOST_AUTO_TEST_CASE (isdcf_name_test) m.mastered_luminance = "4fl"; film->set_isdcf_metadata (m); film->set_video_frame_rate (48); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_XSN-2-Temp-Pre-RedBand-MyChain-2D-4fl-48_F-133_DE-fr_US-R_MOS_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "MyNiceFilmWith_XSN-2-Temp-Pre-RedBand-MyChain-2D-4fl-48_F-133_DE-fr_US-R_MOS_4K_DI_20140704_PPF_SMPTE_OV"); /* Test a name which is already in camelCase */ @@ -161,12 +161,12 @@ BOOST_AUTO_TEST_CASE (isdcf_name_test) film->set_isdcf_metadata (m); film->set_video_frame_rate (24); film->set_name ("IKnowCamels"); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "IKnowCamels_XSN-2_F-133_DE-fr_US-R_MOS_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "IKnowCamels_XSN-2_F-133_DE-fr_US-R_MOS_4K_DI_20140704_PPF_SMPTE_OV"); /* And one in capitals */ film->set_name ("LIKE SHOUTING"); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_MOS_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_MOS_4K_DI_20140704_PPF_SMPTE_OV"); /* Test audio channel markup */ @@ -174,48 +174,48 @@ BOOST_AUTO_TEST_CASE (isdcf_name_test) auto sound = make_shared("test/data/sine_440.wav"); film->examine_and_add_content (sound); BOOST_REQUIRE (!wait_for_jobs()); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_10_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_10_4K_DI_20140704_PPF_SMPTE_OV"); AudioMapping mapping = sound->audio->mapping (); mapping.set (0, dcp::Channel::LEFT, 1.0); sound->audio->set_mapping (mapping); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_20_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_20_4K_DI_20140704_PPF_SMPTE_OV"); mapping.set (0, dcp::Channel::RIGHT, 1.0); sound->audio->set_mapping (mapping); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_30_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_30_4K_DI_20140704_PPF_SMPTE_OV"); mapping.set (0, dcp::Channel::LFE, 1.0); sound->audio->set_mapping (mapping); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_31_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_31_4K_DI_20140704_PPF_SMPTE_OV"); mapping.set (0, dcp::Channel::LS, 1.0); sound->audio->set_mapping (mapping); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_41_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_41_4K_DI_20140704_PPF_SMPTE_OV"); mapping.set (0, dcp::Channel::RS, 1.0); sound->audio->set_mapping (mapping); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_51_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_51_4K_DI_20140704_PPF_SMPTE_OV"); mapping.set (0, dcp::Channel::HI, 1.0); sound->audio->set_mapping (mapping); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_51_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_51_4K_DI_20140704_PPF_SMPTE_OV"); film->set_audio_channels (8); mapping.set (0, dcp::Channel::HI, 1.0); sound->audio->set_mapping (mapping); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_51-HI_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_51-HI_4K_DI_20140704_PPF_SMPTE_OV"); mapping.set (0, dcp::Channel::VI, 1.0); sound->audio->set_mapping (mapping); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_51-HI-VI_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_51-HI-VI_4K_DI_20140704_PPF_SMPTE_OV"); film->set_audio_channels(10); mapping.set (0, dcp::Channel::HI, 0.0); mapping.set (0, dcp::Channel::VI, 0.0); sound->audio->set_mapping (mapping); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_51_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_51_4K_DI_20140704_PPF_SMPTE_OV"); mapping.set (0, dcp::Channel::HI, 1.0); sound->audio->set_mapping (mapping); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_51-HI_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_51-HI_4K_DI_20140704_PPF_SMPTE_OV"); mapping.set (0, dcp::Channel::VI, 1.0); sound->audio->set_mapping (mapping); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_51-HI-VI_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_51-HI-VI_4K_DI_20140704_PPF_SMPTE_OV"); film->set_audio_channels(12); mapping.set (0, dcp::Channel::BSL, 1.0); @@ -223,12 +223,12 @@ BOOST_AUTO_TEST_CASE (isdcf_name_test) mapping.set (0, dcp::Channel::HI, 0.0); mapping.set (0, dcp::Channel::VI, 0.0); sound->audio->set_mapping (mapping); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_71_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_71_4K_DI_20140704_PPF_SMPTE_OV"); mapping.set (0, dcp::Channel::HI, 1.0); sound->audio->set_mapping (mapping); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_71-HI_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_71-HI_4K_DI_20140704_PPF_SMPTE_OV"); mapping.set (0, dcp::Channel::VI, 1.0); sound->audio->set_mapping (mapping); - BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_71-HI-VI_4K_DI_20140704_PP_SMPTE_OV"); + BOOST_CHECK_EQUAL (film->isdcf_name(false), "LikeShouting_XSN-2_F-133_DE-fr_US-R_71-HI-VI_4K_DI_20140704_PPF_SMPTE_OV"); } -- 2.30.2