+ case dcp::VerificationNote::Code::MISMATCHED_TIMED_TEXT_RESOURCE_ID:
+ add(i, _("The Resource ID in a timed text MXF did not match the ID of the contained XML."));
+ break;
+ case dcp::VerificationNote::Code::INCORRECT_TIMED_TEXT_ASSET_ID:
+ add(i, _("The Asset ID in a timed text MXF is the same as the Resource ID or that of the contained XML."));
+ break;
+ case dcp::VerificationNote::Code::MISMATCHED_TIMED_TEXT_DURATION:
+ {
+ vector<string> parts;
+ boost::split (parts, i.note().get(), boost::is_any_of(" "));
+ add(i, wxString::Format(_("The reel duration (%s) of some timed text is not the same as the ContainerDuration (%s) of its MXF."), std_to_wx(parts[0]), std_to_wx(parts[1])));
+ break;
+ }
+ case dcp::VerificationNote::Code::MISSED_CHECK_OF_ENCRYPTED:
+ add(i, _("Part of the DCP could not be checked because no KDM was available."));
+ break;
+ case dcp::VerificationNote::Code::EMPTY_TEXT:
+ add(i, _("At least one <Text> node in a subtitle or closed caption is empty."));
+ break;
+ case dcp::VerificationNote::Code::MISMATCHED_CLOSED_CAPTION_VALIGN:
+ add(i, _("Some closed <Text> or <Image> nodes have different vertical alignments within a <Subtitle>."));
+ break;
+ case dcp::VerificationNote::Code::INCORRECT_CLOSED_CAPTION_ORDERING:
+ add(i, _("Some closed captions are not listed in the order of their vertical position."));
+ break;
+ case dcp::VerificationNote::Code::UNEXPECTED_ENTRY_POINT:
+ add(i, _("There is a <EntryPoint> tag inside a <MainMarkers>."));
+ break;
+ case dcp::VerificationNote::Code::UNEXPECTED_DURATION:
+ add(i, _("There is a <Duration> tag inside a <MainMarkers>."));
+ break;
+ case dcp::VerificationNote::Code::INVALID_CONTENT_KIND:
+ add(i, _("An invalid <ContentKind> %n has been used."));
+ break;
+ case dcp::VerificationNote::Code::INVALID_MAIN_PICTURE_ACTIVE_AREA:
+ add(i, _("The <MainPictureActiveArea> is either not a multiple of 2, or is bigger than an asset."));
+ break;
+ case dcp::VerificationNote::Code::DUPLICATE_ASSET_ID_IN_PKL:
+ add(i, _("The PKL %n has more than one asset with the same ID."));
+ break;
+ case dcp::VerificationNote::Code::DUPLICATE_ASSET_ID_IN_ASSETMAP:
+ add(i, _("The ASSETMAP %n has more than one asset with the same ID."));
+ break;
+ case dcp::VerificationNote::Code::MISSING_SUBTITLE:
+ add(i, _("The subtitle asset %n contains no subtitles."));
+ break;
+ case dcp::VerificationNote::Code::INVALID_SUBTITLE_ISSUE_DATE:
+ add(i, _("<IssueDate> has an invalid value %n"));
+ break;
+ case dcp::VerificationNote::Code::MISMATCHED_SOUND_CHANNEL_COUNTS:
+ add(i, _("Sound assets do not all have the same channel count."));
+ break;
+ case dcp::VerificationNote::Code::INVALID_MAIN_SOUND_CONFIGURATION:
+ add(i, _("<MainSoundConfiguration> describes incorrect number of channels (%n)"));
+ break;
+ case dcp::VerificationNote::Code::MISSING_FONT:
+ add(i, _("The font file for font ID \"%n\" was not found, or was not referred to in the ASSETMAP."));
+ break;
+ case dcp::VerificationNote::Code::INVALID_JPEG2000_TILE_PART_SIZE:
+ add(i, _("Frame %frame has an image component that is too large (component %component is %size bytes in size)."));
+ break;
+ case dcp::VerificationNote::Code::INCORRECT_SUBTITLE_NAMESPACE_COUNT:
+ add(i, _("The XML in the subtitle asset %n has more than one namespace declaration."));
+ break;