summaryrefslogtreecommitdiff
path: root/src/lib/dcp_decoder.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2015-09-16 00:52:50 +0100
committerCarl Hetherington <cth@carlh.net>2015-09-16 00:52:50 +0100
commitdd59755d86cdb1892bb0ba4d69af520cee4aa964 (patch)
treed0773389ed1a5512c4ebdd14baac6aceee0e77c7 /src/lib/dcp_decoder.cc
parentc4bf7a7fca387c7fbbea612d7abbb0d5732b8c5c (diff)
Back-end for very basic and hacky VF support for a DCP imported as content.
Diffstat (limited to 'src/lib/dcp_decoder.cc')
-rw-r--r--src/lib/dcp_decoder.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/lib/dcp_decoder.cc b/src/lib/dcp_decoder.cc
index 1c3285d2d..5060b9a7f 100644
--- a/src/lib/dcp_decoder.cc
+++ b/src/lib/dcp_decoder.cc
@@ -68,7 +68,7 @@ DCPDecoder::pass ()
double const vfr = _dcp_content->video_frame_rate ();
int64_t const frame = _next.frames_round (vfr);
- if ((*_reel)->main_picture ()) {
+ if ((*_reel)->main_picture () && !_dcp_content->reference_video ()) {
shared_ptr<dcp::PictureAsset> asset = (*_reel)->main_picture()->asset ();
shared_ptr<dcp::MonoPictureAsset> mono = dynamic_pointer_cast<dcp::MonoPictureAsset> (asset);
shared_ptr<dcp::StereoPictureAsset> stereo = dynamic_pointer_cast<dcp::StereoPictureAsset> (asset);
@@ -88,7 +88,7 @@ DCPDecoder::pass ()
}
}
- if ((*_reel)->main_sound ()) {
+ if ((*_reel)->main_sound () && !_dcp_content->reference_audio ()) {
int64_t const entry_point = (*_reel)->main_sound()->entry_point ();
shared_ptr<const dcp::SoundFrame> sf = (*_reel)->main_sound()->asset()->get_frame (entry_point + frame);
uint8_t const * from = sf->data ();
@@ -106,7 +106,7 @@ DCPDecoder::pass ()
audio (_dcp_content->audio_stream(), data, _next);
}
- if ((*_reel)->main_subtitle ()) {
+ if ((*_reel)->main_subtitle () && !_dcp_content->reference_subtitle ()) {
int64_t const entry_point = (*_reel)->main_subtitle()->entry_point ();
list<dcp::SubtitleString> subs = (*_reel)->main_subtitle()->subtitle_asset()->subtitles_during (
dcp::Time (entry_point + frame, vfr, vfr),