summaryrefslogtreecommitdiff
path: root/src/lib/content.cc
AgeCommit message (Collapse)Author
2025-11-03wip: hacksprocessorCarl Hetherington
2025-10-10Add Content::path_for_display().Carl Hetherington
2025-07-16Remove unused content pointer from change signals.Carl Hetherington
2025-07-10Remove compose.hpp includes.Carl Hetherington
sed -i "/include.*compose.hpp/d;" src/lib/*.cc src/wx/*.cc src/wx/*.h src/tools/*.cc src/lib/*.h test/*.cc
2025-07-10Replace String::compose with fmt.Carl Hetherington
sed -i "/Plural-Forms/n;/%100/n;/scanf/n;s/%[123456789]/{}/g" src/lib/*.cc src/lib/*.h src/wx/*.cc src/tools/*.cc src/lib/po/*.po src/wx/po/*.po src/tools/po/*.po test/*.cc sed -i "s/String::compose */fmt::format/g" src/lib/*.cc src/lib/*.h src/wx/*.cc src/tools/*.cc test/*.cc
2025-05-11Cleanup: use constexpr for content and player properties.Carl Hetherington
Also fix a clash between the ATMOS and player properties.
2025-03-05Add Content::{font_paths,replace_font_path}().Carl Hetherington
2025-03-05Replace Content::paths_valid() with a free utility function.Carl Hetherington
2025-02-17White space: content.{cc,h}Carl Hetherington
2025-01-20Pass tolerant flag into Content::examine() and the ExamineContentJob.Carl Hetherington
Along the way this helps to fix #2942.
2025-01-05Bump libdcp for raw_convert changes.Carl Hetherington
raw_convert<string> is gone, so here we use fmt::{to_string,format} instead. Other raw_converts now use fast_float.
2024-09-18Fix thinko in relative path change.Carl Hetherington
We have to canonicalise relative paths with respect to the film's directory on load, otherwise we try to use the relative path and it's interpreted against the current working directory. This unfortunately requires the film's directory to be piped into quite a lot of new places.
2024-08-17Add option to use relative content paths (#2856).Carl Hetherington
2024-05-29Merge remote-tracking branch 'origin/main' into v2.17.xCarl Hetherington
2024-05-19Add and use Content::has_mapped_audio().Carl Hetherington
2024-03-20Remove all use of add_child() from xmlpp.Carl Hetherington
2023-10-09Use dcp::filesystem to wrap filesystem calls and fix_long_pathCarl Hetherington
anything that is passed to read_file() from libcxml. This should fix #2623 and other similar problems.
2023-05-10Don't edit start trim unless it's necessary.Carl Hetherington
2022-11-26Noisy change to get film into AudioContent::modify_trim_start().Carl Hetherington
2022-11-06Cleanup: use default value in header.Carl Hetherington
2022-05-02Extract simple_digest().Carl Hetherington
2022-05-02Add more filenames to content properties (#2120).Carl Hetherington
2022-04-20Tidying.Carl Hetherington
2022-04-03C++11 and whitespace cleanups.Carl Hetherington
2021-11-28Extract part of the content change job to Content.Carl Hetherington
2021-10-13Add some asserts to check for negative trims.Carl Hetherington
2021-02-17Assorted C++11 tidying.Carl Hetherington
2021-02-07Be more defensive when calling boost::filesystem::last_write_time.Carl Hetherington
2021-01-31Use enum class for Film::Property.Carl Hetherington
2021-01-31More enum class additions.Carl Hetherington
2021-01-08c++ tidying.Carl Hetherington
2021-01-07BOOST_FOREACH.Carl Hetherington
2021-01-07std::shared_ptrCarl Hetherington
2020-05-20Round the length of video-containing content to the nearest frame.Carl Hetherington
It seems reasonable, and is in the spirit of how positions are rounded to frame boundaries. It also fixes problems with unnecessary frames of black being created at the end of trimmed files, where there can be rounding-error-based confusion about where the content stops and the black begins.
2020-05-20Try rounding length_after_trim.Carl Hetherington
2019-05-10Put Time types in dcpomatic namespace.Carl Hetherington
2019-05-05Fix case where the is FFmpegContent with 24fps video and 44.1kHz audioCarl Hetherington
and a start trim of 6724000. With these numbers the start trim is on an integer video frame but halfway through an audio frame. Without this patch the trim would be "corrected" to 6724001, causing video frames to come out of the player at DCPTimes 0, 3999, 5999 etc. It's possible that Frame const position = time.frames_floor(_film->video_frame_rate()); in J2KEncoder::encode should be frames_round, which would also help with this, but that would be a much more risky patch.
2019-04-26Make sure at least one position change event is emitted afterCarl Hetherington
a timeline drag (with frequent=false), even if lots have been sent with frequent=true. Otherwise the code in the CHNAGE_TYPE_DONE branch of Butler::player_change never gets to seek (since frequent is true, it ignores the signal). Without the seek things go wrong. Believed to fix #1534.
2019-02-12Try to fix some warnings.Carl Hetherington
2018-12-12Fix content properties (#1428).Carl Hetherington
2018-11-24Fix missed overload change.Carl Hetherington
2018-11-21Remove Film pointer from clone().Carl Hetherington
2018-11-21Take Film pointer out of Content.Carl Hetherington
2018-11-07Don't emit video frame rate changes when they don't happen.Carl Hetherington
2018-09-25Add frame rate to technical summary of content.Carl Hetherington
2018-08-21Reset last write times on examine.Carl Hetherington
2018-08-21Check content for changes on loading a project.Carl Hetherington
2018-08-21Store mtime in Content.Carl Hetherington
2018-08-21Make Content::_paths private.Carl Hetherington
2018-08-21Remove unused method.Carl Hetherington