| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2025-09-23 | Return quite close to original approach for "no colour conversion". | Carl Hetherington | |
| There's a few things going on here: 1. Improve the regression test for 3042. Previously we made a DCP from the reporter's _original_ prores file (before they converted it to XYZ) and compared the result to a reference J2K file of uncertain origin. This seems wrong because: a) We never got confirmation from the reporter that the fix worked for them, so any arbitrary reference is dubious. b) It doesn't seem to reflect their actual complaint, which was that they got a different result when making a DCP from XYZ TIFFs compared to their "XYZ" Prores. The new test makes a DCP from their TIFFs and "XYZ" Prores and compares the result. 2. Revert to the old approach to "no conversion" handling. In the good old days we did everything -> RGB48LE except XYZ12LE -> XYZ12LE, and that's what we do again here. 3. Change the YUV->RGB conversion from Rec.601 to Rec.709 for the "no conversion" case. This fixes the 3042 regression test. The supposed "XYZ" Prores is yuv444p12le according to ffprobe. So I think what we have here is actually a file that was converted to XYZ and then back to YUV by Resolve. I experimented with using the raw YUV values and considering them as XYZ but this was clearly wrong. I think 3 is probably what I should have done in the first place. | |||
| 2025-08-12 | New/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-12 | Replace 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-07-10 | Remove 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-10 | Replace 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-26 | Remove functors for choosing pixel format output from make_image(). | Carl Hetherington | |
| 2025-05-26 | Remove last use of keep_xyz_or_rgb. | Carl Hetherington | |
| 2025-05-26 | Ensure that XYZ data is not passed to rgb_to_xyz() when using Grok. | Carl Hetherington | |
| 2025-05-26 | Fix incorrect colours with "no colourspace conversion" sources that are not ↵ | Carl Hetherington | |
| AV_PIX_FMT_XYZ12LE. Prepare the image for where it is going to next. I don't understand the difference in this situation between XYZ12LE and RGB48LE (it seems they are both 16-bit-per-channel) but there you go. | |||
| 2025-04-25 | White space: dcp_video.{cc,h} | Carl Hetherington | |
| 2025-03-22 | Make the Socket connect() call a little friendlier. | Carl Hetherington | |
| This avoids some boilerplate. | |||
| 2025-01-05 | Bump 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-04-21 | Rename j2k_bandwidth -> video_bit_rate. | Carl Hetherington | |
| 2024-03-20 | Remove all use of add_child() from xmlpp. | Carl Hetherington | |
| 2024-01-28 | Formatting, variable name tidying and some const correctness. | Carl Hetherington | |
| 2024-01-28 | Patch from Aaron Boxer adding initial support for GPU-powered J2K encoding ↵ | Carl Hetherington | |
| via his tool "grok". | |||
| 2023-10-28 | Use updated libdcp, including an optimisation for rgb-onto-xyz12. | Carl Hetherington | |
| 2023-05-13 | Remove unused define. | Carl Hetherington | |
| 2023-04-23 | Fix length()/bytes() mismatch on XML string. | Carl Hetherington | |
| 2022-08-15 | Set the send buffer size to 512k for sending things to encode servers (#2206). | Carl Hetherington | |
| 2022-05-26 | Lower the level of some log messages. | Carl Hetherington | |
| 2022-04-22 | Use libdcp's warnings.h | Carl Hetherington | |
| 2022-04-03 | C++11 and whitespace cleanups. | Carl Hetherington | |
| 2021-09-27 | Various alignment tidying/fixups. | Carl Hetherington | |
| 2021-09-27 | Replace aligned bool with enum Alignment. | Carl Hetherington | |
| 2021-04-22 | Remove configuration option for minimum frame size. | Carl Hetherington | |
| Replace it with a fixed 16KB as per #1902. | |||
| 2021-02-24 | Fix config.xml corruption when it contains multi-byte UTF8 characters. | Carl Hetherington | |
| 2021-02-11 | Test: smaller steps when adding noise.v2.15.128 | Carl Hetherington | |
| 2021-02-07 | Fix libdcp include. | Carl Hetherington | |
| 2021-02-05 | Testing: add minimum frame size configuration option.v2.15.126 | Carl Hetherington | |
| 2021-02-01 | Use a predictable RNG when adding noise to low-bitrate images. | Carl Hetherington | |
| The recovery code assumes that encoding a given frame from the same data will always give the same output; it always encodes frame 0 again to set things up properly and if that frame is a different size to the previous run everything breaks. | |||
| 2021-02-01 | Fix build error thinko. | Carl Hetherington | |
| 2021-02-01 | Fix hang when trying to assure minimum bitrate. | Carl Hetherington | |
| 2021-02-01 | Add noise to very small J2K frames (#1902). | Carl Hetherington | |
| 2021-01-31 | More enum class additions. | Carl Hetherington | |
| 2021-01-27 | Use enum class for VideoRange. | Carl Hetherington | |
| 2021-01-07 | std::shared_ptr | Carl Hetherington | |
| 2020-11-16 | Make sure we use limited ("video") range data when exporting. | Carl Hetherington | |
| Our export formats all currently use limited range but we weren't making sure data fed to the encoders was limited range. Should fix #1832. | |||
| 2020-11-02 | Replace dcp::Data with dcp::ArrayData | Carl Hetherington | |
| 2020-09-01 | Build fixes for Boost >= 1.73 | Carl Hetherington | |
| Forward-ported-from: d1e9749ca290673639a49d693a8fe5c6557cc2de | |||
| 2020-07-26 | Ignore libxml++ warnings in a nicer way. | Carl Hetherington | |
| 2020-06-17 | Allow more complete control over the libdcp/DCP-o-matic metadata written to ↵ | Carl Hetherington | |
| various places. | |||
| 2020-04-17 | Checksum network encode requests and replies to protect against | Carl Hetherington | |
| network corruption (#1381). | |||
| 2020-04-17 | Rename send_binary -> write_to_socket. | Carl Hetherington | |
| 2018-11-21 | Tidy and fix logging. | Carl Hetherington | |
| 2018-11-06 | Remove some unused parameters. | Carl Hetherington | |
| 2017-06-23 | Attempts to simplify black-filling logic in Player. | Carl Hetherington | |
| 2017-04-27 | Move ports around to allow master/server to coexist (#962). | Carl Hetherington | |
| 2017-04-19 | Various Doxygen fixes. | Carl Hetherington | |
| 2017-02-12 | Remove some out-of-date includes. | Carl Hetherington | |
