summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2025-12-17 18:23:10 +0100
committerCarl Hetherington <cth@carlh.net>2025-12-18 01:10:32 +0100
commit3a001037ec1131c236b253d16bfc2c3bc8f36212 (patch)
tree7939b2cafad65298237745a30ebc11f7e756b2e9 /src
parent18446861340bfb301b2157e1ebc7fa532bd75952 (diff)
Add Reel::picture_encoding().
Diffstat (limited to 'src')
-rw-r--r--src/reel.cc16
-rw-r--r--src/reel.h2
2 files changed, 18 insertions, 0 deletions
diff --git a/src/reel.cc b/src/reel.cc
index 1e31f1e1..95ed58f7 100644
--- a/src/reel.cc
+++ b/src/reel.cc
@@ -524,3 +524,19 @@ Reel::can_be_read() const
return std::all_of(assets.begin(), assets.end(), [](shared_ptr<const ReelFileAsset> asset) { return asset->can_be_read(); });
}
+
+PictureEncoding
+Reel::picture_encoding() const
+{
+ if (!_main_picture || !_main_picture->asset_ref().resolved()) {
+ return PictureEncoding::NO_VIDEO;
+ }
+
+ auto pic = _main_picture->asset_ref().asset();
+ if (dynamic_pointer_cast<MPEG2PictureAsset>(pic)) {
+ return PictureEncoding::MPEG2;
+ }
+
+ return PictureEncoding::JPEG2000;
+}
+
diff --git a/src/reel.h b/src/reel.h
index 31e11abc..40e014a8 100644
--- a/src/reel.h
+++ b/src/reel.h
@@ -152,6 +152,8 @@ public:
void resolve_refs (std::vector<std::shared_ptr<Asset>>);
+ PictureEncoding picture_encoding() const;
+
private:
friend struct ::dcp_add_kdm_test;