#include "audio_content.h"
#include "audio_decoder.h"
#include "config.h"
+#include "constants.h"
#include "dcp_content.h"
#include "dcp_decoder.h"
#include "digester.h"
_reel = _reels.begin ();
get_readers ();
+
+ _font_id_allocator.add_fonts_from_reels(_reels);
+ _font_id_allocator.allocate();
}
ContentTime::from_frames(_offset - entry_point, vfr) + ContentTime::from_seconds(b.out().as_seconds())
),
strings,
- _dcp_content->standard()
+ asset->subtitle_standard()
);
strings.clear ();
}
dcp::SubtitleString is_copy = *is;
- is_copy.set_font(id_for_font_in_reel(is_copy.font().get_value_or(""), _reel - _reels.begin()));
+ is_copy.set_font(_font_id_allocator.font_id(_reel - _reels.begin(), asset->id(), is_copy.font().get_value_or("")));
strings.push_back(is_copy);
}
ContentTime::from_frames(_offset - entry_point, vfr) + ContentTime::from_seconds(b.out().as_seconds())
),
strings,
- _dcp_content->standard()
+ asset->subtitle_standard()
);
strings.clear ();
}
return;
}
+ DCPOMATIC_ASSERT(video);
if (!video->ignore() && (*_reel)->main_picture()) {
auto asset = (*_reel)->main_picture()->asset ();
auto mono = dynamic_pointer_cast<dcp::MonoPictureAsset> (asset);
_stereo_reader.reset ();
}
+ DCPOMATIC_ASSERT(audio);
if (!audio->ignore() && (*_reel)->main_sound()) {
_sound_reader = (*_reel)->main_sound()->asset()->start_read ();
_sound_reader->set_check_hmac (false);