summaryrefslogtreecommitdiff
path: root/src/lib/player.cc
AgeCommit message (Collapse)Author
2024-05-19Don't make _stream_states for unmapped audio, otherwise we wait for contentCarl Hetherington
which will never arrive.
2024-05-19Add and use Content::has_mapped_audio().Carl Hetherington
2024-05-17Make sure we don't say some content has audio if none will be emitted.Carl Hetherington
In the FFmpeg (and shortly DCP) case we don't emit any audio if none is mapped, so we must take this into account in the player.
2024-05-15Update DCP encoder progress on all passe()es, not just when audio is emitted.Carl Hetherington
2024-05-15Get DCP transcode progress from the player (#2804).Carl Hetherington
2024-02-21Make DCPExaminer::size() optional and deal with the consequences.v2.16.78Carl Hetherington
This means we can fix the case of a VF having no known size in a nice way, in turn fixing problems caused by the fix to #2775.
2024-02-11Add option to stop the player using any audio processor.Carl Hetherington
2024-02-03Don't emit subtitle images that have a zero dimension (#2743).Carl Hetherington
They cause problems later when trying to blend them into the image.
2023-10-28Fix possible dereference of invalid iterator (if have_pushed is empty).Carl Hetherington
2023-08-09Extract Film::Property to its own header to (maybe) increase compilation speed.Carl Hetherington
2023-03-05Remove some 3D stuff I think is unnecessary since the changes in ↵v2.16.46Carl Hetherington
2f12058c535045cecc226fe47b3d60da8851a862
2023-03-05Fix error when padding is needed in 3D encodes (#2476).Carl Hetherington
2023-02-10Ignore overlapping ATMOS data in the same way that we ignore video (#2429).Carl Hetherington
2023-02-10Fix multiple video overlaps.Carl Hetherington
2023-02-10Cleanup: add Content::period().Carl Hetherington
2023-02-10Cleanup: use some better variable names.Carl Hetherington
2023-02-10Cleanup: remove unnecessary check.Carl Hetherington
2023-02-01Handle 2D/3D mismatches in the player (#2409).Carl Hetherington
Previously if there was 2D content in a 3D project (or vice versa) the player would emit the video anyway and the encoder would have to deal with it. Since previously the FFmpeg encoder did not deal with this quite right, it seems to make sense to move the logic into the player so that neither encoder has to worry about it.
2022-12-15Fix build on Ubuntu 16.04.Carl Hetherington
2022-12-10Move some methods out of util.{cc,h}Carl Hetherington
2022-11-25_stream_states must be reset on seek otherwise #2368.Carl Hetherington
2022-11-25Fix sound corruption with multiple sound files (#2368).Carl Hetherington
last_push_end would be initialised to the position of the content, meaning that content at (for example) 60s into the project would be treated as the leader, and content much earlier would then be considered finished by the code which checks ignore_streams_behind (as its last push was more then 5s before the leader). This caused audio corruption, shown up by the test here.
2022-11-06Cleanup: better variable name.Carl Hetherington
2022-10-26Allow move construction of Player.Carl Hetherington
2022-10-17Make the _film member of Player a weak_ptr.Carl Hetherington
2022-10-14Add some missing change signals in the Player.Carl Hetherington
2022-10-14Cleanup: use ChangeSignaller in player.Carl Hetherington
2022-09-27Use EnumIndexedVector in Player.Carl Hetherington
2022-09-11Fix build on Centos where we don't have the std::atomic_store stuff apparently.v2.16.26Carl Hetherington
2022-09-10Use atomic shared_ptr stuff for _black_frame.Carl Hetherington
2022-09-10Use atomic for _playback_length.Carl Hetherington
2022-09-10It's now safe to get _video_container_size without the lock.Carl Hetherington
2022-09-10Move get_reel_assets() out of Player, as it doesn't need to be there.Carl Hetherington
2022-09-10const correctness.Carl Hetherington
2022-09-10Remove now-unused setup_pieces_unlocked()Carl Hetherington
2022-09-10Use atomic for _dcp_decode_reduction.Carl Hetherington
2022-09-10Use atomic for _video_container_size.Carl Hetherington
2022-09-10Use atomic for _play_referenced.Carl Hetherington
2022-09-10Use atomic for _fast.Carl Hetherington
2022-09-10Use atomic for _always_burn_open_subtitles.Carl Hetherington
2022-09-10Use atomic for _ignore_text.Carl Hetherington
2022-09-10Use atomic for _ignore_audio.Carl Hetherington
2022-09-10Use atomic for _ignore_video.Carl Hetherington
2022-09-10Some improved logging.Carl Hetherington
2022-06-12Believed fix for error when calculating the position in the output DCP of a ↵Carl Hetherington
referenced asset.
2022-06-07Rearrange subtitle font management.Carl Hetherington
With this change each subtitle coming out of the player has a reference to a dcpomatic::Font that belongs to the TextContent. This hopefully solves a few problems which all basically stemmed from the fact that previously the decoders/player were deciding what the font ID in the output DCP would be - they can't do that properly.
2022-05-21Fix error when loading encrypted DCPs (#2257).Carl Hetherington
In d1b4dbb793e2850d032ce3c91f0c91d045ae19dc I changed have_video() to look at can_be_played() but forgot to also change have_audio().
2022-05-11Fix ignore_video checker for separate-3D content (#2246).Carl Hetherington
2022-05-10Possibly improve shuffler behaviour (use one for all content if any 3D is ↵Carl Hetherington
present).
2022-04-29Primitive auto-crop (#1477).Carl Hetherington