summaryrefslogtreecommitdiff
path: root/src/lib/player.h
AgeCommit message (Collapse)Author
2025-12-31Remove now-unused Player::progress().Carl Hetherington
2025-12-31Remove now-unused Player::frames_done().Carl Hetherington
2025-12-14White space: player.hCarl Hetherington
2025-05-11Cleanup: use constexpr for content and player properties.Carl Hetherington
Also fix a clash between the ATMOS and player properties.
2025-02-03Fix subtitles being written with negative times when trimmed (#2965).Carl Hetherington
2025-02-03Cleanup: rename subtitle_stop -> text_stop.Carl Hetherington
2025-02-02White space: config.{cc,h} player.{cc,h} about_dialog.{cc,h} hints_dialog.{cc,h}Carl Hetherington
2025-01-20Pass tolerant flag into Player.Carl Hetherington
This is needed because the DCPDecoder ends up needing it when it reads reel information from CPLs. Maybe all that stuff should be in our metadata.
2025-01-18Add comment.Carl Hetherington
2024-09-03Support closed subtitles and open captions.Carl Hetherington
2024-05-16Merge branch 'main' into v2.17.xCarl Hetherington
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-12Merge branch 'main' into v2.17.xCarl Hetherington
2024-02-11Add option to stop the player using any audio processor.Carl Hetherington
2024-01-28Change how video timing is done.Carl Hetherington
This commit changes the approach with video timing. Previously, we would (more-or-less) try to use every video frame from the content in the output, hoping that they come at a constant frame rate. This is not always the case, however. Here we preserve the PTS of video frames, and then when one arrives we output whatever DCP video frames we can (at the regular DCP frame rate). Hopefully this will solve a range of sync problems, but it could also introduce new ones.
2023-08-09Extract Film::Property to its own header to (maybe) increase compilation speed.Carl Hetherington
2023-02-10Cleanup: use vector instead of list.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: Player does not need enable_shared_from_this.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-10-14Add a comment.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-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 const-correctness for Player.Carl Hetherington
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-04-29Primitive auto-crop (#1477).Carl Hetherington
2022-04-03C++11 and whitespace cleanups.Carl Hetherington
2022-01-24Rename _last_video* to _next_video* as it seems to make more sense that way.Carl Hetherington
2021-09-27Replace aligned bool with enum Alignment.Carl Hetherington
2021-09-27Various alignment adjustments.Carl Hetherington
2021-07-05Use unique_ptr.Carl Hetherington
2021-07-05C++11 tidying.Carl Hetherington
2021-04-21Add comment.Carl Hetherington