diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/dcp_content.cc | 16 | ||||
| -rw-r--r-- | src/wx/video_panel.cc | 4 |
2 files changed, 16 insertions, 4 deletions
diff --git a/src/lib/dcp_content.cc b/src/lib/dcp_content.cc index 7301e5373..9ff5bb16f 100644 --- a/src/lib/dcp_content.cc +++ b/src/lib/dcp_content.cc @@ -559,7 +559,21 @@ DCPContent::can_reference_video (string& why_not) const return false; } - if (film()->frame_size() != video->size()) { + Resolution video_res = RESOLUTION_2K; + if (video->size().width > 2048 || video->size().height > 1080) { + video_res = RESOLUTION_4K; + } + + if (film()->resolution() != video_res) { + if (video_res == RESOLUTION_4K) { + /// TRANSLATORS: this string will follow "Cannot reference this DCP: " + why_not = _("it is 4K and the film is 2K."); + } else { + /// TRANSLATORS: this string will follow "Cannot reference this DCP: " + why_not = _("it is 2K and the film is 4K."); + } + return false; + } else if (film()->frame_size() != video->size()) { /// TRANSLATORS: this string will follow "Cannot reference this DCP: " why_not = _("its video frame size differs from the film's."); return false; diff --git a/src/wx/video_panel.cc b/src/wx/video_panel.cc index 80aac66ea..2fadfab33 100644 --- a/src/wx/video_panel.cc +++ b/src/wx/video_panel.cc @@ -297,11 +297,9 @@ VideoPanel::film_changed (Film::Property property) switch (property) { case Film::VIDEO_FRAME_RATE: case Film::CONTAINER: - setup_description (); - setup_sensitivity (); - break; case Film::RESOLUTION: setup_description (); + setup_sensitivity (); break; case Film::REEL_TYPE: case Film::INTEROP: |
