- string why_not;
- if (d->reference_video() && !d->can_reference_video(shared_from_this(), why_not)) {
- d->set_reference_video(false);
- change_made = true;
- }
- if (d->reference_audio() && !d->can_reference_audio(shared_from_this(), why_not)) {
- d->set_reference_audio(false);
- change_made = true;
- }
+/** Check for (and if necessary fix) impossible settings combinations, like
+ * video set to being referenced when it can't be.
+ */
+void
+Film::check_settings_consistency ()
+{
+ bool change_made = false;
+ BOOST_FOREACH (shared_ptr<Content> i, content()) {
+ shared_ptr<DCPContent> d = dynamic_pointer_cast<DCPContent>(i);
+ if (!d) {
+ continue;