From 5211b423bffb59c2001d1f8a97e256a01b447b34 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Sun, 8 Mar 2026 00:55:00 +0100 Subject: Require "non-standard" config checkbox to use MPEG2. Carsten reports that some users were choosing it because it sounded familiar. --- src/lib/config.cc | 4 ++++ src/lib/config.h | 9 +++++++++ 2 files changed, 13 insertions(+) (limited to 'src/lib') diff --git a/src/lib/config.cc b/src/lib/config.cc index a2469ed8a..b0239b4bb 100644 --- a/src/lib/config.cc +++ b/src/lib/config.cc @@ -217,6 +217,7 @@ Config::set_defaults() _auto_crop_threshold = 0.1; _last_release_notes_version = boost::none; _allow_smpte_bv20 = false; + _allow_mpeg2 = false; _isdcf_name_part_length = 14; _enable_player_http_server = false; _player_http_server_port = 8080; @@ -657,6 +658,7 @@ try } _allow_smpte_bv20 = f.optional_bool_child("AllowSMPTEBv20").get_value_or(false); + _allow_mpeg2 = f.optional_bool_child("AllowMPEG2").get_value_or(false); _isdcf_name_part_length = f.optional_number_child("ISDCFNamePartLength").get_value_or(14); _enable_player_http_server = f.optional_bool_child("EnablePlayerHTTPServer").get_value_or(false); _player_http_server_port = f.optional_number_child("PlayerHTTPServerPort").get_value_or(8080); @@ -1141,6 +1143,8 @@ Config::write_config() const /* [XML] AllowSMPTEBv20 1 to allow the user to choose SMPTE (Bv2.0 only) as a standard, otherwise 0 */ cxml::add_text_child(root, "AllowSMPTEBv20", _allow_smpte_bv20 ? "1" : "0"); + /* [XML] AllowMPEG2 1 to allow the user to choose MPEG2 Interop as a standard, otherwise 0 */ + cxml::add_text_child(root, "AllowMPEG2", _allow_mpeg2 ? "1" : "0"); /* [XML] ISDCFNamePartLength Maximum length of the "name" part of an ISDCF name, which should be 14 according to the standard */ cxml::add_text_child(root, "ISDCFNamePartLength", fmt::to_string(_isdcf_name_part_length)); /* [XML] EnablePlayerHTTPServer 1 to enable a HTTP server to control the player, otherwise 0 */ diff --git a/src/lib/config.h b/src/lib/config.h index abe97d2d4..e628c840c 100644 --- a/src/lib/config.h +++ b/src/lib/config.h @@ -644,6 +644,10 @@ public: return _allow_smpte_bv20; } + bool allow_mpeg2() const { + return _allow_mpeg2; + } + #ifdef DCPOMATIC_GROK class Grok { @@ -1237,6 +1241,10 @@ public: maybe_set(_allow_smpte_bv20, allow, ALLOW_SMPTE_BV20); } + void set_allow_mpeg2(bool allow) { + maybe_set(_allow_mpeg2, allow, ALLOW_SMPTE_BV20); + } + #ifdef DCPOMATIC_GROK void set_grok(Grok const& grok); #endif @@ -1502,6 +1510,7 @@ private: boost::optional _main_content_divider_sash_position; DefaultAddFileLocation _default_add_file_location; bool _allow_smpte_bv20; + bool _allow_mpeg2; int _isdcf_name_part_length; bool _enable_player_http_server; int _player_http_server_port; -- cgit v1.2.3