if (i->main_picture ()) {
if (!i->main_picture()->asset_ref().resolved()) {
/* We are missing this asset so we can't continue; examination will be repeated later */
_needs_assets = true;
if (i->main_picture ()) {
if (!i->main_picture()->asset_ref().resolved()) {
/* We are missing this asset so we can't continue; examination will be repeated later */
_needs_assets = true;
auto const frac = i->main_picture()->edit_rate ();
float const fr = float(frac.numerator) / frac.denominator;
if (!_video_frame_rate) {
auto const frac = i->main_picture()->edit_rate ();
float const fr = float(frac.numerator) / frac.denominator;
if (!_video_frame_rate) {
if (!i->main_sound()->asset_ref().resolved()) {
/* We are missing this asset so we can't continue; examination will be repeated later */
_needs_assets = true;
if (!i->main_sound()->asset_ref().resolved()) {
/* We are missing this asset so we can't continue; examination will be repeated later */
_needs_assets = true;
if (!i->main_subtitle()->asset_ref().resolved()) {
/* We are missing this asset so we can't continue; examination will be repeated later */
_needs_assets = true;
if (!i->main_subtitle()->asset_ref().resolved()) {
/* We are missing this asset so we can't continue; examination will be repeated later */
_needs_assets = true;
_text_count[static_cast<int>(TextType::OPEN_SUBTITLE)] = 1;
_open_subtitle_language = try_to_parse_language (i->main_subtitle()->language());
}
_text_count[static_cast<int>(TextType::OPEN_SUBTITLE)] = 1;
_open_subtitle_language = try_to_parse_language (i->main_subtitle()->language());
}
if (!j->asset_ref().resolved()) {
/* We are missing this asset so we can't continue; examination will be repeated later */
_needs_assets = true;
if (!j->asset_ref().resolved()) {
/* We are missing this asset so we can't continue; examination will be repeated later */
_needs_assets = true;
_text_count[static_cast<int>(TextType::CLOSED_CAPTION)]++;
_dcp_text_tracks.push_back (DCPTextTrack(j->annotation_text(), try_to_parse_language(j->language())));
}
_text_count[static_cast<int>(TextType::CLOSED_CAPTION)]++;
_dcp_text_tracks.push_back (DCPTextTrack(j->annotation_text(), try_to_parse_language(j->language())));
}
/* Check first that anything encrypted has a key. We must do this, as if we try to
* read encrypted data with asdcplib without even offering a key it will just return
* the encrypted data. Secondly, check that we can read the first thing from each
/* Check first that anything encrypted has a key. We must do this, as if we try to
* read encrypted data with asdcplib without even offering a key it will just return
* the encrypted data. Secondly, check that we can read the first thing from each