winscripter
9b58f4b9d5
Implement spline abstractions
Implementation of spline.h
4 days ago
winscripter
85812226b6
It's Jxl not Jpeg
4 days ago
winscripter
ac1c866e5a
Add xorshift implemetation
4 days ago
winscripter
487410e55f
Implement field encodings, move IJxlFields
This is an implementation of field_encodings.h.
Note that I avoided implementing EnumValid() and Values() functions, as we have dedicated methods in .NET to do exactly that (Enum.IsDefined, Enum.GetValues)
4 days ago
winscripter
762edd1ec1
Add headers & aspect ratio helpers
4 days ago
winscripter
6fea920e7f
Add metadata models
4 days ago
winscripter
21ff33f23c
Implement image and memory buffers
Implementation of image.h and image.c; AC strategy implementation was slightly adjusted to reduce errors.
4 days ago
winscripter
31b5505d89
Implement JxlMemoryManager
For now JxlMemoryManager will be a wrapper around MemoryPool<T>.
4 days ago
winscripter
1ac6140535
Implement AC strategy
Implementation of ac_strategy.h and ac_strategy.c
4 days ago
winscripter
d87178fd37
Implemented frame_dimensions.h plus part of ac_strategy.h
5 days ago
winscripter
996e93dba2
Implement ac_context.h
5 days ago
winscripter
85c851b137
Add JPEG XL format
5 days ago
James Jackson-South
0b685ab034
Fix convolution sampling for bounds smaller than the kernel radius
KernelSamplingMap.CorrectBorder sliced the offset span by
radius * kernelSize, so bounds narrower than the kernel radius threw
ArgumentOutOfRangeException (GaussianBlur of a 130x8 region with
sigma 10, for example), and bounds exactly equal to the radius let
Bounce offsets escape the sampling range by folding an overshoot of a
full extent to min - 1.
Route bounds no larger than the radius through an exact per-mode
correction that folds each offset into range: clamp for Repeat,
periodic reflection for Mirror and Bounce, and true modulo for Wrap.
The single-pass corrections are unchanged for larger bounds.
1 week ago
James Jackson-South
eb4bfc95ea
Add BlendWithCoverage overloads. Optimize Rgba32 compatible shuffling.
1 week ago
James Jackson-South
e5ca2782e6
Fix GIF transparency handling and dither
1 month ago
James Jackson-South
a3e9cc6fd4
Fix in-place shuffles and vectorize PNG CgBI transform
2 months ago
Erik White
4f85600cb8
Improve ApplyCgbiTransform
2 months ago
Erik White
3e843a06a2
Implement CgBI support
2 months ago
James Jackson-South
8e6cab957b
Validate PBM max pixel value
2 months ago
James Jackson-South
8f2716b567
GIF: background handling & quantizer overflow fix ( #3133 )
* GIF: background handling & quantizer overflow fix
* Fix tests
2 months ago
James Jackson-South
ff36e83c74
Add AllocationTrackedMemoryManager and refactor allocators ( #3120 )
* Add AllocationTrackedMemoryManager and refactor allocators
* Add AllocationTrackingState and refactor tracking
* Cleanup
* Address feedback
* Introduce ApplyOptions and use in allocators
* Propagate allocation tracking to lifetime guards
* Address Copilot feedback
* Fix multi-buffer group tracking and enforce limits
* Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
* Fix override accesibility
---------
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2 months ago
Sven Claesson
c795d81404
Fix integer overflow and bounds-checking vulnerabilities in EXR decoder ( #3126 )
* Fix integer overflow and bounds-checking vulnerabilities in EXR decoder
Use ulong arithmetic in CalculateBytesPerRow and block size calculations
to prevent integer overflow. Add validation for DataWindow dimensions,
block size limits, and row offsets outside stream bounds.
* Harden EXR row offset validation
* EXR: validate sizes, prevent overflows, dispose image
---------
Co-authored-by: James Jackson-South <james_south@hotmail.com>
2 months ago
James Jackson-South
1e65e08fc1
Add additional unit tests to improve code coverage. Update licensing version
2 months ago
Brian Popow
c1de5b61d3
Fix mistake in inflateStream.AllocateNewBytes: Use compressedBytes instead of uncompressedBytes
3 months ago
James Jackson-South
37f534ea5d
Add ImageFrame visitor; use Buffer2D Size/Bounds + expose subregion extensions
3 months ago
Brian Popow
7ad873aaf3
Fix stylecop warnings
3 months ago
Brian Popow
2bf2e95638
Move rowsPerBlock to base compression class
3 months ago
Brian Popow
a85fe63d31
Move undoing zip compression into base class
3 months ago
Brian Popow
e917fd317a
Fix issues with pxr and pixel type uint and float
3 months ago
Brian Popow
95ee73e241
Implement pxr decompression for pixel type uint and float
3 months ago
Brian Popow
344d49d86f
Use Width Property from ExrBaseDecompressor
3 months ago
Brian Popow
39b13a46c6
Initial version decode Pxr24 compression
3 months ago
James Jackson-South
c470a9a05a
Revert "Merge pull request #3056 from SixLabors/js/accumulative-memory-limit"
This reverts commit c5624b534e , reversing
changes made to b3f37932b6 .
3 months ago
James Jackson-South
67b9713ae0
Rename params
3 months ago
James Jackson-South
4abf307ca6
Potential fix for pull request finding 'Poor error handling: empty catch block'
Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com>
3 months ago
James Jackson-South
9304b57022
Use ColdPath for Block8x8F
3 months ago
James Jackson-South
66671a0e9f
Implement proper segment integrity handling & tolerant parsing
3 months ago
James Jackson-South
3b1b8956cf
Stop parsing after SOS in JPEG decoder in ProcessStartOfFrameMarker
3 months ago
James Jackson-South
ac0adfccac
Optimize Block8x8F ScaledCopy for common scales
3 months ago
James Jackson-South
cde366b5cd
Remove premature rounding during normalization
3 months ago
James Jackson-South
420ae7444c
Optimize ScaledCopyTo for common scale factors
3 months ago
James Jackson-South
6998d43c61
Update Convolution2PassProcessor{TPixel}.cs
3 months ago
James Jackson-South
dd395e1c03
Enhance metadata conversion
3 months ago
James Jackson-South
0390442fee
Fix ColorNumerics and FromVector4
3 months ago
James Jackson-South
3a879338c6
Cleanup
3 months ago
James Jackson-South
03670ab032
Revert some convolution processors
3 months ago
Brian Popow
00db2e9256
Actually use pixel type from encoder in ExrEncoderCore constructor
3 months ago
Brian Popow
ce545b7892
Fix stylecop complains
3 months ago
Brian Popow
1e69aa45ab
Add additional doc strings
3 months ago
James Jackson-South
656f53d052
Remove not-needed validate method and tests
3 months ago