read_directory (p);
set_default_colour_conversion ();
-
- for (int i = 0; i < static_cast<int>(TextType::COUNT); ++i) {
- _reference_text[i] = false;
- }
}
DCPContent::DCPContent (cxml::ConstNodePtr node, int version)
text = TextContent::from_xml (this, node, version, notes);
atmos = AtmosContent::from_xml (this, node);
- for (int i = 0; i < static_cast<int>(TextType::COUNT); ++i) {
- _reference_text[i] = false;
- }
-
if (video && audio) {
audio->set_stream (
make_shared<AudioStream> (
node->optional_number_child<Frame>("AudioLength").get_value_or (
video->length() * node->number_child<int>("AudioFrameRate") / video_frame_rate().get()
),
- AudioMapping (node->node_child ("AudioMapping"), version)
+ AudioMapping(node->node_child("AudioMapping"), version),
+ 24
)
);
}
_reference_video = node->optional_bool_child ("ReferenceVideo").get_value_or (false);
_reference_audio = node->optional_bool_child ("ReferenceAudio").get_value_or (false);
if (version >= 37) {
- _reference_text[static_cast<int>(TextType::OPEN_SUBTITLE)] = node->optional_bool_child("ReferenceOpenSubtitle").get_value_or(false);
- _reference_text[static_cast<int>(TextType::CLOSED_CAPTION)] = node->optional_bool_child("ReferenceClosedCaption").get_value_or(false);
+ _reference_text[TextType::OPEN_SUBTITLE] = node->optional_bool_child("ReferenceOpenSubtitle").get_value_or(false);
+ _reference_text[TextType::CLOSED_CAPTION] = node->optional_bool_child("ReferenceClosedCaption").get_value_or(false);
} else {
- _reference_text[static_cast<int>(TextType::OPEN_SUBTITLE)] = node->optional_bool_child("ReferenceSubtitle").get_value_or(false);
- _reference_text[static_cast<int>(TextType::CLOSED_CAPTION)] = false;
+ _reference_text[TextType::OPEN_SUBTITLE] = node->optional_bool_child("ReferenceSubtitle").get_value_or(false);
+ _reference_text[TextType::CLOSED_CAPTION] = false;
}
if (node->optional_string_child("Standard")) {
auto const s = node->optional_string_child("Standard").get();
auto ck = node->optional_string_child("ContentKind");
if (ck) {
- _content_kind = dcp::content_kind_from_string (*ck);
+ _content_kind = dcp::ContentKind::from_name(*ck);
}
_cpl = node->optional_string_child("CPL");
for (auto i: node->node_children("ReelLength")) {
LOG_GENERAL ("Inside there's directory %1", i.path().string());
read_sub_directory (i.path());
} else {
- LOG_GENERAL("Ignoring %1 from inside", i.path().string());
+ LOG_GENERAL("Ignoring %1 from inside: status is %2", i.path().string(), static_cast<int>(boost::filesystem::status(i.path()).type()));
}
}
}
boost::mutex::scoped_lock lm (_mutex);
video = make_shared<VideoContent>(this);
}
- video->take_from_examiner (examiner);
+ video->take_from_examiner(film, examiner);
set_default_colour_conversion ();
}
boost::mutex::scoped_lock lm (_mutex);
audio = make_shared<AudioContent>(this);
}
- auto as = make_shared<AudioStream>(examiner->audio_frame_rate(), examiner->audio_length(), examiner->audio_channels());
+ auto as = make_shared<AudioStream>(examiner->audio_frame_rate(), examiner->audio_length(), examiner->audio_channels(), 24);
audio->set_stream (as);
auto m = as->mapping ();
m.make_default (film ? film->audio_processor() : 0);
node->add_child("KDMValid")->add_child_text (_kdm_valid ? "1" : "0");
node->add_child("ReferenceVideo")->add_child_text (_reference_video ? "1" : "0");
node->add_child("ReferenceAudio")->add_child_text (_reference_audio ? "1" : "0");
- node->add_child("ReferenceOpenSubtitle")->add_child_text(_reference_text[static_cast<int>(TextType::OPEN_SUBTITLE)] ? "1" : "0");
- node->add_child("ReferenceClosedCaption")->add_child_text(_reference_text[static_cast<int>(TextType::CLOSED_CAPTION)] ? "1" : "0");
+ node->add_child("ReferenceOpenSubtitle")->add_child_text(_reference_text[TextType::OPEN_SUBTITLE] ? "1" : "0");
+ node->add_child("ReferenceClosedCaption")->add_child_text(_reference_text[TextType::CLOSED_CAPTION] ? "1" : "0");
if (_standard) {
switch (_standard.get ()) {
case dcp::Standard::INTEROP:
}
node->add_child("ThreeD")->add_child_text (_three_d ? "1" : "0");
if (_content_kind) {
- node->add_child("ContentKind")->add_child_text(dcp::content_kind_to_string(*_content_kind));
+ node->add_child("ContentKind")->add_child_text(_content_kind->name());
}
if (_cpl) {
node->add_child("CPL")->add_child_text (_cpl.get ());
}
s += string (_reference_video ? "1" : "0");
- for (int i = 0; i < static_cast<int>(TextType::COUNT); ++i) {
- s += string (_reference_text[i] ? "1" : "0");
+ for (auto text: _reference_text) {
+ s += string(text ? "1" : "0");
}
return s;
}
{
boost::mutex::scoped_lock lm (_mutex);
- _reference_text[static_cast<int>(type)] = r;
+ _reference_text[type] = r;
}
}
_reference_video = dc->_reference_video;
_reference_audio = dc->_reference_audio;
- for (int i = 0; i < static_cast<int>(TextType::COUNT); ++i) {
- _reference_text[i] = dc->_reference_text[i];
- }
+ _reference_text = dc->_reference_text;
}
void