summaryrefslogtreecommitdiff
path: root/test/image_test.cc
AgeCommit message (Collapse)Author
2023-09-29Support alpha blending 64-bit RGB onto things.Carl Hetherington
2023-09-29Rename alpha_blend_test_one -> alpha_blend_test_bgra_onto.Carl Hetherington
2022-09-10Support YUV444P10LE in make_part_black().Carl Hetherington
2022-08-11Lower some error thresholds now that check_image() actually works in these ↵Carl Hetherington
cases.
2022-08-09Fix lines down the right-hand-side of exports in some cases.Carl Hetherington
2022-06-20Remove some debug output.Carl Hetherington
2022-06-10Fix incorrect burnt-in subtitle colours when burning into a DCP source (#2261).Carl Hetherington
dcp::combined_rgb_to_xyz was changed in libdcp (the values are no longer scaled by 65535) but DoM wasn't changed, and there was no test to catch it.
2022-04-29Add image_as_jpeg()Carl Hetherington
2022-04-29Move Image::as_png() out to image_as_png().Carl Hetherington
2021-09-27Test fixes.better-glCarl Hetherington
2021-09-27Replace aligned bool with enum Alignment.Carl Hetherington
2021-09-27Various alignment adjustments.Carl Hetherington
2021-05-25Move video level conversion for RGB from FFmpegImageProxy to Image.Carl Hetherington
Since FFmpeg does not do video level conversion for RGB sources when we (sort of) ask it to in Image::crop_scale_window() it seems to make more sense to compensate for that by calling full_to_video_range() in the same place (rather than in FFmpegImageProxy).
2021-05-03Add pixel format 0 (AV_PIX_FMT_YUV420P) to make_part_black().Carl Hetherington
Remainder of fix for #1984.
2021-05-03Test output tweaks.Carl Hetherington
2021-05-03Add pixel format 66 (AV_PIX_FMT_YUV422P10LE) to make_part_black().Carl Hetherington
Part of fix for #1984.
2021-05-03C++11 tidying.Carl Hetherington
2021-01-27Use enum class for VideoRange.Carl Hetherington
2021-01-21Adapt for libdcp use of enum class.Carl Hetherington
2021-01-07std::shared_ptrCarl Hetherington
2020-11-29Move some test references into test-private.Carl Hetherington
2020-11-25Fix corrupted image when over-cropping black filler frames.Carl Hetherington
FFmpegDecoder can emit small black frames (128x128 pixels) when it wants to fill in a gap. Image::crop_scale_window would do the wrong thing if we then applied a crop of greater than 128 in either direction; though cropped_size is correctly clamped, the crop value itself was not and is used to calculate the input data pointers. This would result in random frames, usually at the end of DCPs, often made up of blurry colour washes.
2020-11-20Move make_black_test into image_test.Carl Hetherington
2020-11-17Fix cropping of subsampled images.Carl Hetherington
The calculations for how to crop subsampled components of YUV images were wrong, causing strange effects like misregistration of colour components in cropped images. Should fix #1872.
2020-11-17Use 64-byte alignment for aligned image memory.Carl Hetherington
FFmpeg uses this values if AVX512 is available, and with only 32-byte alignment I am seeing strange scaling effects whereby crop_scale_window_test7 gives black bars down the right side of cropped images (when run on an i7 7700).
2020-11-16Make 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-16Obey requests to change the video range of RGB content.Carl Hetherington
Video that comes in with RGB pixels will not have its video level ranges changed by libswscale (it only does this for YUV and greyscale). Here we add code to do it ourselves for RGB content coming in via image files (e.g. PNG/DPX etc). Part of #1851.
2020-10-13Fix use of DCPOMATIC_TEST_PRIVATE variable to specify whereCarl Hetherington
test private data is.
2020-10-12Remove Image/GraphicsMagick dependency.Carl Hetherington
2020-04-14Use a struct rather than a std::pair as the return type from ImageProxy::image.Carl Hetherington
2020-03-11Move private_data into TestPathsCarl Hetherington
2019-11-05Provide some test references.Carl Hetherington
2019-11-04Fix incorrect images when cropping without stretch.Carl Hetherington
Always overallocate images so that Image::crop_scale_window is always safe from over-reading buffers. Relates to #1654 and probably #1653.
2019-11-04Fix out-of-bounds read when cropping JPEG2000 images (#1654).Carl Hetherington
2019-11-04Add a test to expose #1654, on valgrind at least.Carl Hetherington
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-04-25Fix or remove several broken pixel formats in Image::fade and addCarl Hetherington
unit tests for the remainder. Fixes #1532.
2019-03-12Fix R/B swap with as_png(); support as_png() for any pixel format.v2.13.129Carl Hetherington
2018-10-12Change MagickImageProxy to FFmpegImageProxy and make it use FFmpegCarl Hetherington
to decode images. Hence remove {Image,Graphics}Magick.
2018-04-13Account for J2K decoding at lower-than-maximum resolution when croppingv2.13.14Carl Hetherington
the resulting images; fixes #1274.
2018-02-02A number of unit test fixes.Carl Hetherington
2018-01-11Harden alpha blend tests and fix alpha_blend again.Carl Hetherington
2018-01-10Fix yet more pixel order confusions.Carl Hetherington
2018-01-02Add convert_pixel_format convenience function.Carl Hetherington
2017-12-30Add new test.Carl Hetherington
2017-05-25More tests; fix blend for YUV420P10LE.Carl Hetherington
2017-05-24Implement alpha_blend for YUV420P and YUV420P10. Improve unit test.Carl Hetherington
2017-04-19Doxygen tweaks.Carl Hetherington
2016-06-21Revert "Use make_shared<>."Carl Hetherington
Support for this seems to vary wildly across DoM's build targets. Stuff that builds on 16.04 won't build on 14.04, for example. Seems to not be worth the hassle now. This reverts commit 5a5324ed3a381a86dfe0a6e3932c1d58fdcd596f.
2016-06-21Use make_shared<>.Carl Hetherington