summaryrefslogtreecommitdiff
path: root/src/lib
AgeCommit message (Collapse)Author
2025-09-02Untested conversion to num/den DCPTime.arbitrary-hzCarl Hetherington
Summary of required changes: Replace ::from_frames with a constructor that takes num/den. Provide and use member to_debug_string() instead of to_string(). Provide and use member to_serializable_string() and string constructor instead of fmt::to_string on .get() and number constructor. Provide and use content_time() member instead of ContentTime constructor from DCPTime. Use frames_round(96000) instead of get() when comparing times to see if they are "close enough". Provide and use DCPTime(x, FrameRateChange) constructor when converting from ContentTime. Use .seconds() when calculating proportions or sometimes when dividing by HZ. Provide and use operator bool(). Pass explicit 96000 denominator in a lot of places. Add member max() and use it instead of static max() Change BOOST_CHECK_EQUAL to BOOST_CHECK Provide operator/ and use it instead of .get() / 2.
2025-08-27Restore un-ticked DCP audio language correctly (#3077).Carl Hetherington
2025-08-27pot/merge.Carl Hetherington
2025-08-25Add cover sheet magic strings for marker positions (#3076).Carl Hetherington
2025-08-25Compress an if.Carl Hetherington
2025-08-25Use 0-padded numbers for all fields of a timecode.Carl Hetherington
2025-08-25Move write_cover_sheet() out to its own file.Carl Hetherington
2025-08-22White space: writer.{cc,h}Carl Hetherington
2025-08-19Updated nl_NL translation from Rob van Nieuwkerk.Carl Hetherington
2025-08-13pot/merge.v2.18.22Carl Hetherington
2025-08-12New/improved pixel format decision when converting to XYZ.Carl Hetherington
For a long time we would keep XYZ12LE, if that's what we have, otherwise ask FFmpeg to switch to RGB48LE. Then in 1d5c211dadb9a9dc2318adce86ca9c31b367cabe I tried to fix the case of an XYZ source mis-tagged as YUV. I changed things so that with no colour conversion we'd always ask FFmpeg to convert to XYZ. This meant that RGB sources with no colour conversion would get treatment by FFmpeg due to the RGB -> XYZ switch. Here we're going back to the more-or-less the "long time" behaviour when there is a conversion (keep XYZ12LE but otherwise convert to RGB48). When there's no conversion, keep RGB (to avoid the FFmpeg conversion from RGB -> XYZ) but convert everything else to XYZ.
2025-08-12Replace AVPixelFormat parameter to PlayerVideo::image with a functor.Carl Hetherington
This was removed in df9b4676aba8b941f124b174393988cad21677e1 and surrounding commits, but it turns out we need it after all.
2025-08-12Allow finding DKDMs by content title text.Carl Hetherington
2025-08-12More detailed KDM CLI help.Carl Hetherington
2025-08-12Adjust spacing in KDM CLI tool --help.Carl Hetherington
2025-07-21White space: ffmpeg_image_proxy.{cc,h}Carl Hetherington
2025-07-21Cleanup: use a default variable to remove a constructor.Carl Hetherington
2025-07-21Cleanup: const correctness.Carl Hetherington
2025-07-21White space: image_proxy.{cc,h}Carl Hetherington
2025-07-16Squash change signals with the same property and type.Carl Hetherington
There's a bit of an assumption here that handlers don't need to be told multiple times about the same change (to different pieces of content) but that seems reasonable.
2025-07-16Remove unused content pointer from change signals.Carl Hetherington
2025-07-15Change Film::examine_and_add_content to take a vector of content.Carl Hetherington
2025-07-15Change Film::maybe_add_content to take a vector of content.Carl Hetherington
2025-07-15Change Film::add_content to take a vector of content.Carl Hetherington
2025-07-15Don't process unnecessary video frame rate changes.Carl Hetherington
This inadvertently fixes a bug where multiple pieces of caption content would be added to the project sequentially, but then immediately re-arranged to be at the same time.
2025-07-15Change ExamineContentJob to take a vector of content.Carl Hetherington
2025-07-15White space: examine_content_job.{cc,h}Carl Hetherington
2025-07-15Add Playlist::add_at_end() taking a vector of content.Carl Hetherington
2025-07-15White space: playlist.{cc,h}Carl Hetherington
2025-07-13White space: dcp_subtitle_decoder.{cc,h}Carl Hetherington
2025-07-12Remove unnecessary fuzzy.Carl Hetherington
2025-07-11Don't try to add unused fonts to the DCP (#3059).Carl Hetherington
With interop there can be only one font, and we need to make sure it's not one that isn't even being used.
2025-07-11Updated nl_NL translation from Rob van Nieuwkerk.Carl Hetherington
2025-07-10Allow specification of player crop in playlist.Carl Hetherington
2025-07-10Add SPL::set().Carl Hetherington
2025-07-10Cleanup: using ordering.Carl Hetherington
2025-07-10Replace SPL::operator[] with get().Carl Hetherington
2025-07-10Allow audio processors to pass through HI/VI/DBox etc (#3020).Carl Hetherington
Previously you couldn't map these things if you were using a processor.
2025-07-10Remove unnecessary make_silent() calls.Carl Hetherington
The AudioBuffers constructor silences everything.
2025-07-10Rename audio_output_names() -> audio_output_channel_names().Carl Hetherington
2025-07-10Mention audio processor in the audio matrix.Carl Hetherington
2025-07-10White space: audio_processor.{cc,h}Carl Hetherington
2025-07-10White space: mid_side_decoder.{cc,h}Carl Hetherington
2025-07-10Add another #undef of ERROR.Carl Hetherington
2025-07-10Add an extra include for Arch.Carl Hetherington
2025-07-10Remove compose.hppCarl 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-10Add missing #includes.Carl Hetherington
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-07-10Convert some paths to string.Carl Hetherington