summaryrefslogtreecommitdiff
path: root/src/lib/config.h
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2025-05-31 02:40:50 +0200
committerCarl Hetherington <cth@carlh.net>2025-06-17 00:04:03 +0200
commitdce8911cbc577f9f8f272d78c455e708c0b47aa9 (patch)
tree7884dc6b40bd88c3bef6e4b354799c7044e32756 /src/lib/config.h
parentec06811bae7ed4fc6bd80c3154fd473028ee8e13 (diff)
Support cropping of content on playback (#3041).
This is to allow, for example, pillarboxed 1.78:1 DCPs to be played nicely on 1.78:1 projectors. DCP-o-matic can now crop the pillarboxing before display, rather than putting the pillarboxed 1.85:1 onto a 1.78:1 monitor, thereby adding letterboxing.
Diffstat (limited to 'src/lib/config.h')
-rw-r--r--src/lib/config.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/lib/config.h b/src/lib/config.h
index 9f6d1c743..2bc700e86 100644
--- a/src/lib/config.h
+++ b/src/lib/config.h
@@ -554,6 +554,10 @@ public:
return _playlist_editor_restricted_menus;
}
+ boost::optional<float> player_crop_output_ratio() const {
+ return _player_crop_output_ratio;
+ }
+
int image_display() const {
return _image_display;
}
@@ -1101,6 +1105,19 @@ public:
maybe_set(_player_mode, m);
}
+ void set_player_crop_output_ratio(float ratio) {
+ maybe_set(_player_crop_output_ratio, ratio);
+ }
+
+ void unset_player_crop_output_ratio() {
+ if (!_player_crop_output_ratio) {
+ return;
+ }
+
+ _player_crop_output_ratio = boost::none;
+ changed(OTHER);
+ }
+
void set_image_display(int n) {
maybe_set(_image_display, n);
}
@@ -1459,6 +1476,7 @@ private:
PlayerMode _player_mode;
bool _player_restricted_menus = false;
bool _playlist_editor_restricted_menus = false;
+ boost::optional<float> _player_crop_output_ratio;
int _image_display;
VideoViewType _video_view_type;
bool _respect_kdm_validity_periods;