diff options
| author | Carl Hetherington <cth@carlh.net> | 2023-11-30 00:46:00 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2024-04-22 13:03:04 +0200 |
| commit | 5b2e3126602d508498a99bce256f5f465f095d43 (patch) | |
| tree | 6cafd5d084b2413ab54f5d2d5dad21f005289c63 /src/lib/dcp_examiner.cc | |
| parent | c98d6fd22da1586ef3c1d64a2f7b1ee602f539e9 (diff) | |
Support playback of MPEG2 DCPs.
Diffstat (limited to 'src/lib/dcp_examiner.cc')
| -rw-r--r-- | src/lib/dcp_examiner.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/lib/dcp_examiner.cc b/src/lib/dcp_examiner.cc index 584ba4116..92491947c 100644 --- a/src/lib/dcp_examiner.cc +++ b/src/lib/dcp_examiner.cc @@ -35,6 +35,8 @@ #include <dcp/mono_j2k_picture_asset.h> #include <dcp/mono_j2k_picture_asset_reader.h> #include <dcp/mono_j2k_picture_frame.h> +#include <dcp/mono_mpeg2_picture_asset.h> +#include <dcp/mpeg2_transcode.h> #include <dcp/reel.h> #include <dcp/reel_atmos_asset.h> #include <dcp/reel_closed_caption_asset.h> @@ -295,6 +297,7 @@ DCPExaminer::DCPExaminer (shared_ptr<const DCPContent> content, bool tolerant) } auto j2k_mono = dynamic_pointer_cast<dcp::MonoJ2KPictureAsset>(pic); auto j2k_stereo = dynamic_pointer_cast<dcp::StereoJ2KPictureAsset>(pic); + auto mpeg2_mono = dynamic_pointer_cast<dcp::MonoMPEG2PictureAsset>(pic); if (j2k_mono) { auto reader = j2k_mono->start_read(); @@ -304,6 +307,11 @@ DCPExaminer::DCPExaminer (shared_ptr<const DCPContent> content, bool tolerant) auto reader = j2k_stereo->start_read(); reader->set_check_hmac (false); reader->get_frame(0)->xyz_image(dcp::Eye::LEFT); + } else if (mpeg2_mono) { + auto reader = mpeg2_mono->start_read(); + reader->set_check_hmac(false); + dcp::MPEG2Decompressor decompressor; + decompressor.decompress_frame(reader->get_frame(0)); } } |
