lifning
312227220e
allow LZW to be done at Frame time rather than Encoder time
2022-07-01 22:36:12 -07:00
HeroicKatora
c4f91b5286
Merge pull request #132 from image-rs/release-0.11.4
...
Release notes for version 0.11.4
2022-06-27 08:26:24 +02:00
Andreas Molzer
e070cfb4f4
Release notes for version 0.11.4
2022-06-26 14:20:05 +02:00
HeroicKatora
ed1d8d7799
Merge pull request #131 from image-rs/issue-130-superfluous-data
...
Fix: stale data across next frame
2022-06-25 18:35:29 +02:00
Andreas Molzer
cb3b0e39e5
Fix: stale data across next frame
...
This fixes a decoding error where superfluous image data bytes decoded
in one frame are still present for the next frame. The result is a
pretty corrupt image, if the next frame has a local color matrix then it
appears pretty glitchy, too.
2022-06-25 18:18:41 +02:00
HeroicKatora
f05cd52226
Merge pull request #127 from jdm/patch-1
...
Update minimum weezl version.
2022-03-31 10:02:45 +02:00
Josh Matthews
a41613dfe7
Update minimum weezl version.
2022-03-30 22:47:34 -04:00
HeroicKatora
0bd83c5ee4
Merge pull request #126 from andylizi/get-writer-ref
...
Add `Encoder::{get_ref, get_mut}`
2022-02-20 18:47:08 +01:00
andylizi
e03205c4b3
Add warning for `Encoder::get_mut` docs
2022-02-20 08:43:05 +08:00
andylizi
39c2a017a4
Add `Encoder::{get_ref, get_mut}`
2022-02-19 11:16:55 +08:00
Jonathan Behrens
94a26746cc
Merge pull request #124 from andylizi/fix-tests-windows
...
Make tests work on Windows
2022-02-10 12:30:25 -05:00
andylizi
69da38496e
Make tests work on Windows
2022-02-10 14:38:46 +08:00
HeroicKatora
a7449af65c
Merge pull request #122 from image-rs/regression-test-117
...
Add regression test for issue 117
2021-12-23 16:27:39 +01:00
Andreas Molzer
7f84847a31
Add regression test for issue 117
2021-12-23 16:22:32 +01:00
HeroicKatora
fca7964771
Merge pull request #116 from image-rs/fuzz
...
Add fuzzing code for cargo-fuzz
2021-12-23 16:19:10 +01:00
Andreas Molzer
34a56ecd61
Add explicit stall test
2021-12-23 16:07:03 +01:00
Andreas Molzer
64293103e2
Avoid allocation in empty max_bytes case
2021-12-23 14:31:24 +01:00
Andreas Molzer
0de672cee5
Fix infinite loop during decoding
...
In frames with empty image data it was possible to trigger a condition
where decoding would be stuck, neither reading any part of the data nor
producing any LZW decoded data. The outer loop expects to make progress
and odes not have any alternative stop condition. This was an infinite
blocking loop.
2021-12-23 14:23:16 +01:00
Andreas Molzer
28199644ee
Add fuzz code for decode
2021-12-23 14:23:16 +01:00
Andreas Molzer
01e673f09b
Add fuzzing code for cargo-fuzz
2021-12-23 14:23:16 +01:00
HeroicKatora
64b1b182ef
Merge pull request #121 from fintelia/safe-into-inner
...
Implement Encoder::into_inner without unsafe
2021-12-23 14:20:04 +01:00
Jonathan Behrens
706ba43b5a
Implement Encoder::into_inner without unsafe
2021-12-18 13:07:48 -05:00
HeroicKatora
167bc0f856
Merge pull request #120 from kornelski/writerback
...
Ability to recover the writer
2021-12-18 17:26:56 +01:00
Kornel
605d1cb1e6
Ability to recover the writer
2021-12-17 16:16:37 +00:00
HeroicKatora
c69b66b69f
Merge pull request #119 from foopub/master
...
Benchmark for `common::Frame::from_rgba_speed`
2021-10-19 19:22:52 +02:00
foopub
14467b6319
Dependency in the wrong place
2021-10-19 09:58:07 +01:00
foo
b832a3ddbd
A bad sample image
2021-10-19 01:36:19 +01:00
foo
0bb84a5944
Frame from rgb(a) bench
2021-10-19 01:22:38 +01:00
HeroicKatora
a319c9996e
Merge pull request #118 from kornelski/patch-1
...
Crates.io release
2021-10-14 18:22:11 +02:00
Andreas Molzer
1df06bb047
Add changelog for 0.11.3
2021-10-14 18:11:05 +02:00
Kornel
f71ccf3e1a
Bump version
2021-10-14 14:28:18 +01:00
HeroicKatora
a9f6ab5906
Merge pull request #115 from image-rs/version-and-polish
...
Version and polish
2021-09-18 16:24:37 +02:00
Andreas Molzer
39b91c7233
Fix typos spotted by review
2021-09-18 15:53:02 +02:00
Andreas Molzer
5d357863eb
Change check example to be permissive
2021-09-18 01:12:11 +02:00
Andreas Molzer
7a6f443fb0
Polish documentation of MemoryLimits
2021-09-17 22:10:15 +02:00
Andreas Molzer
74fa5fe5a9
Make version number available in interface
2021-09-17 22:05:30 +02:00
Andreas Molzer
b893af5fa8
Add a simple decode-check program
2021-09-17 21:59:47 +02:00
Jonathan Behrens
8cae31cf6e
Merge pull request #114 from andylizi/reuse-buffer
...
Avoid allocating 16MB buffer for every frame
2021-09-13 15:13:53 -04:00
andylizi
b6bba74e81
Switch to `into_vec` in LZW encoding for better performance
2021-09-14 01:01:00 +08:00
andylizi
ffcc3d3106
Avoid allocating 16MB buffer for every frame
2021-09-13 23:22:15 +08:00
HeroicKatora
5410cb32f6
Merge pull request #112 from okaneco/decode-block-uknown-blocks
...
Fix DecodeSubBlock bytes returned, add allow_unknown_blocks decoding option
2021-09-05 01:15:32 +02:00
HeroicKatora
a645a35303
Merge pull request #111 from okaneco/rgba_speed_zip_panic
...
Fix panic for Frame::from_rgb* methods when there are exactly 256 colors
2021-09-05 01:14:40 +02:00
okaneco
3f42ecc317
Fix DecodeSubBlock bytes returned, add allow_unknown blocks decoding option
...
`StreamingDecoder::next_state` could return a byte offset that was
larger than the current buffer. This could result in a panic on the
next loop iteration while indexing into the buffer with the offset.
Add an option to DecodeOptions for allowing the processing of unknown
blocks in `BlockStart`. Previously, all unknown blocks would return an
error if the `BlockStart` was not `Image`, `Extension`, or `Trailer`.
2021-09-04 08:35:33 -04:00
okaneco
0215cf2210
Fix panic for Frame::from_rgb* methods when there are exactly 256 colors
...
- Change u8 zip iterator to use `0..=255` instead of `0..`
- Add test
The creation of the `colors_lookup` hashmap panics in debug when it
bypasses the NeuQuant algorithm and has exactly 256 colors.
2021-09-04 04:04:11 -04:00
Jonathan Behrens
033353951d
Merge pull request #110 from simon-frankau/exact-quantize
...
Add support for exact quantisation of images with <= 256 colors
2021-08-14 17:02:40 -04:00
Simon Frankau
8eed179ed7
Try inlining quantisation code
2021-07-27 14:52:01 +01:00
Simon Frankau
f1e82c6f07
Improve matches based on code review
2021-07-27 13:06:28 +01:00
Simon Frankau
d8aa21241d
Add support for exact quantisation of images with <= 256 colors. Closes #109
...
We detect if an image has <= 256 colors, and if so bypass NeuQuant and
generate a palette directly from those colors.
2021-07-22 00:47:53 +01:00
Jonathan Behrens
a4477de006
Merge pull request #105 from okaneco/frame-cleanup
...
Avoid reassignments to Frame fields after initializing with default
2021-06-06 13:29:49 -04:00
okaneco
aef41862ef
Avoid reassignments to Frame fields after initializing with default
...
Use chunks_exact in Frame::from_[rgb|rgba]_speed
Use [copy|extend]_from_slice instead of manual operations
Correct overlapping range patterns in match statement
Remove unnecessary semicolon in benchmark
Remove unnecessary & in if let statement
Remove unnecessary statement in reader::fill_reader
2021-05-01 13:43:09 -04:00