summaryrefslogtreecommitdiff
path: root/src/lib/video_content.cc
AgeCommit message (Collapse)Author
2025-05-11Cleanup: use constexpr for content and player properties.Carl Hetherington
Also fix a clash between the ATMOS and player properties.
2025-04-12Add has_alpha() flag to VideoContent.Carl Hetherington
2025-04-12Remove some unused usings.Carl Hetherington
2025-04-12White space: video_content.{cc,h}Carl Hetherington
2025-03-24Basic support for variable-Z 3D subtitles.Carl Hetherington
2025-01-10Fix warning.Carl Hetherington
2025-01-10Fix invalid return values from fade() causing various odd effects (#2932).Carl Hetherington
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-10-05Rename XML tags Fade{In,Out} to VideoFade{In,Out}.Carl Hetherington
2024-03-29Merge remote-tracking branch 'origin/main' into v2.17.xCarl Hetherington
2024-03-29Add VideoContent::rotate_size().Carl Hetherington
2024-03-20Remove all use of add_child() from xmlpp.Carl Hetherington
2024-02-22Merge tag 'v2.16.78' into v2.17.xv2.17.12Carl 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-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-09-30Apply video range from template (#2611).Carl Hetherington
2023-01-02Fix errors when a custom size is given which is larger than the container ↵Carl Hetherington
(#2404).
2022-11-26Noisy change to get film into AudioContent::modify_trim_start().Carl Hetherington
2022-11-26Remove some backwards compatibility that will cause problems in an upcoming ↵Carl Hetherington
commit.
2022-09-16Fix black borders around the preview in some cases (#2331).Carl Hetherington
We need to round the container size to the nearest multiple of 2 so that cropping subsampled sources does not leave gaps. As far as I can see: - the direction that you round x in doesn't matter - it's better to round y up (if you calculate the error in the resulting ratio in each case).
2022-04-29Primitive auto-crop (#1477).Carl Hetherington
2022-04-08Guess video range better when importing 2.14.x projects (#2227).Carl Hetherington
2022-04-07Cleanup: tidying.Carl Hetherington
2022-04-04Add fade in/out option to the content audio tab (#1026).Carl Hetherington
2021-10-03Don't scale chroma subsampled images to sizes that don't align with the ↵v2.15.166Carl Hetherington
subsampling (#1872). There's a slightly odd effect when scaling e.g. YVU420 images to odd and then even widths - there's a small but visible luminance shift. I don't know why this happens, but keeping the scaling sizes locked to the subsampling seems to help.
2021-10-03Differentiate requested and actual crop.Carl Hetherington
This is so we limit cropping to what is possible considering chroma subsampling.
2021-10-03Add PixelQuanta to VideoContent.Carl Hetherington
2021-09-19Remove unused VideoContentProperty::SCALE and listen to CUSTOM_{RATIO,SIZE} ↵Carl Hetherington
instead. ::SCALE was sort-of being used, as it was emitted during examination of video content, but it wasn't being emitted anywhere else (and CUSTOM_{RATIO,SIZE} replace its functionality as far as I can see).
2021-03-31Add burnt subtitle language to video content.Carl Hetherington
2021-01-31Use enum class for Film::Property.Carl Hetherington
2021-01-31More enum class additions.Carl Hetherington
2021-01-27Use enum class for VideoRange.Carl Hetherington
2021-01-22c++11 tidying.Carl Hetherington
2021-01-07std::shared_ptrCarl Hetherington
2020-06-05Fix thinko causing crashes when loading projects with legacy video ratios.Carl Hetherington
2020-05-11Change video content scaling so that it either:Carl Hetherington
1. scales the content up to fit the DCP container, preserving aspect ratio, or 2. stretches the content to a custom aspect ratio, or 3. scales the content to some custom size.
2020-05-10Remove scale to fit {width,height} options.Carl Hetherington
2019-06-01Basics of allowing video parts of FFmpegContent to be disabled (#1355 and ↵Carl Hetherington
others).
2019-05-24Basic ability to set video range (JPEG/MPEG) at least for YUV content. May ↵Carl Hetherington
not work for RGB. See #1509.
2019-05-10Put Time types in dcpomatic namespace.Carl Hetherington
2019-01-05Fix strange behaviour with single-frame fades (#1440).Carl Hetherington
2018-11-21Tidy and fix logging.Carl Hetherington
2018-11-21Take Film pointer out of Content.Carl Hetherington
2018-08-20Make ContentChange into a generic ChangeSignaller and use it for Filmv2.13.44Carl Hetherington
changes, since we setup_pieces() in response to at least one of these and hence we must know before it happens so we can suspend the butler and player.
2018-08-14More fixes for errors / crashes / misbehaviour with content changesCarl Hetherington
and the butler. Here we signal both before and after a change in content. Before, the player disables itself so that any pass()/seek() will be no-ops. After, the player rebuilds its pieces and the butler re-seeks to get back to where it was before the change.
2018-07-21Revert "Remove join function; the code is long and I don't think anybody"Carl Hetherington
It turns out Carsten uses it :) This reverts commit bd5e8b83a3a18787241982efdae809d4db21f65d.
2018-07-20Remove join function; the code is long and I don't think anybodyCarl Hetherington
uses it.
2018-04-17Use round rather than ceil when putting positions and start trimsCarl Hetherington
onto frame boundaries. ceil() can creep upwards with rounding error, which I have seen happen over a save/load.
2018-01-05Add simple copy and paste for content settings (#1051).Carl Hetherington
2018-01-05s/use_template/take_settings_from/gCarl Hetherington