Alex Xu (Hello71)
3a84725d31
use __linux/__unix instead of CMAKE_C(XX)_FLAGS
...
this allows the user-specified CFLAGS/CXXFLAGS to take effect.
assume that all platforms supporting C++ in 2021 also support stdbool.h.
2021-11-20 10:30:19 -05:00
Christian Schneider
19e6f3ab94
bump copyright year
2021-03-27 11:55:42 +01:00
Christian Schneider
cba2b2bc09
fix latest commit (didn't work for large streams that weren't held in memory); fixes #109
2020-07-20 13:28:29 +02:00
Christian Schneider
97c84feea3
don't write tempfile when not entering recursion
...
- this was always done for deflate type streams, decompressed stream was written to disk even if not used by recursion later
2020-05-24 19:19:16 +02:00
Christian Schneider
b3103e383b
removed zerr method
...
method isn't used anymore
2020-05-23 12:06:48 +02:00
Christian Schneider
dba1f69e23
Bump copyright year
2020-03-11 12:23:48 +01:00
Christian Schneider
06b3257bf8
added switch to disable packJPG fallback
2019-11-08 10:49:41 +01:00
Christian Schneider
7fc569949e
Increase JPG/MP3 in-memory threshold
...
- maximum size 512 MB instead of 64 MB
- verbose output if JPGs are too large for in-memory (and packJPG is used as fallback)
2019-11-07 00:14:21 +01:00
Christian Schneider
95816e2366
brunsli JPG decompression
2019-11-06 18:22:02 +01:00
Christian Schneider
9ebb249375
[WIP] brunsli compression of MJPEG data
...
- TODO brunsli decompression
2019-11-06 17:50:44 +01:00
Christian Schneider
b9481dcb92
fix packJPG fallback message
2019-11-06 17:15:09 +01:00
Christian Schneider
ec5d6f702a
[WIP] using brunsli for JPG compression
...
- basic brunsli compression works
- TODO motion JPG using brunsli
- TODO brunsli decompression
- fix command line switches (brunsli/brotli instead of jpgbrunsli/jpgbrotli)
2019-11-06 16:59:49 +01:00
Christian Schneider
162c84e5b1
fix source
2019-11-06 14:55:57 +01:00
Christian Schneider
ba5822c471
Brunsli and brotli use flags and switches
...
- not used for JPG recompression yet
- only command line/INI file parsing
2019-11-06 14:52:07 +01:00
Christian Schneider
90f2353425
Change order of allocation and image descriptor check in GIF code
...
- Fixes #100
- Improves speed when processing invalid GIF files or false positives
2019-05-15 07:59:05 +02:00
Christian Schneider
7ebe71c421
Another fix for MP3 slowdown
...
- Error message "inconsistent original bit"
2019-04-09 15:07:27 +02:00
Christian Schneider
9704aa35f2
Fix format string warning
2019-03-07 10:11:18 +01:00
Christian Schneider
6640d50575
Starting v0.4.8 development
2019-02-22 15:28:12 +01:00
Christian Schneider
31b693d843
Version 0.4.7 release
2019-02-22 15:12:14 +01:00
Christian Schneider
138c107543
Discard insufficient partial bZip2 matches
...
- Use the ratio that was used before for partial zLib matches
- Related: #95
2019-02-22 10:48:32 +01:00
Christian Schneider
3e66fbc340
Obsolete boolean removed
...
Was used in old zLib code and is useless in bZip2 mode where only one compression level is tested
2019-02-22 10:38:18 +01:00
Christian Schneider
d658324ef7
Bump copyright year
2019-02-21 17:25:33 +01:00
Christian Schneider
73aefffc45
Update precomp.cpp
...
Replacing CopyLine with memcpy, fixes #94
2019-02-21 17:14:45 +01:00
Christian Schneider
c72b94a9b1
Fix for MP3 slowdowns
...
- fixes #91 and #92
2018-12-20 12:39:49 +01:00
Christian Schneider
7be858bd41
Merge preflate 0.3.5 changes
...
- fixes #88 and #89
2018-09-30 10:08:45 +02:00
Gavin Gao
2384fc36d8
Fix MSVC (x64)build
...
Add missing preflate source files
2018-09-27 18:22:52 +08:00
Christian Schneider
f5f6171574
Improve stability of multiple precomp instances
...
- first two digits of temporary file number is an "instance" count, determined once at start
- other digits are still used in recursion
- should fix #87
2018-09-23 11:02:45 +02:00
Christian Schneider
37dceb6b6e
Fix MSVC 32-bit truncation
...
- MSVC builds used _chsize which only supports 32-bit file sizes and truncates files too much when processing deflate streams >4 GB
- using _chsize_s fixes this
- good test file: Raspbian Stretch, desktop version: https://www.raspberrypi.org/downloads/raspbian/
2018-09-20 08:16:39 +02:00
Christian Schneider
191ff35999
Fix -pdfbmp+ statistics
...
- if 8-bit image size didn't match, don't count the stream as PDF 8-bit
- fixes #27
2018-09-19 07:28:00 +02:00
Christian Schneider
05340bf9f6
-pdfbmp+ functionality restored
...
stopped working due to preflate changes
2018-09-19 07:11:37 +02:00
Christian Schneider
7160fd82cb
Don't ignore ZIP streams with "faked" sizes
...
- for some ZIP files, compressed size = decompressed size = 0, although data is valid
- fixes #84
2018-09-18 11:47:03 +02:00
Christian Schneider
4f02842ae3
Fixed bZip2 recompression
...
Fixes #82
2018-09-17 08:19:40 +02:00
Christian Schneider
f93d95b7ae
Version is 0.4.7dev
...
removing "experimental" from copyright message
2018-09-15 10:15:43 +02:00
Christian Schneider
b61cdc6efe
Fix for FreeBSD build
...
this change leads to a successful build on FreeBSD 11.0-RELEASE-p16 (cmake 3.12.1, g++ 7.3.0)
2018-09-15 09:58:53 +02:00
Christian Schneider
a255854c1a
Adjust CMakeLists.txt for Linux (should fix #83 )
2018-09-14 06:20:27 +00:00
Deus Libri
14a80f60be
Fixed memory leaks in file recursion, and a crash-bug in the GIF decoder in precomp.
...
The worst leak was caused by filesize64, which cost around 8k per
non-PNG deflate stream.
Also reduced memory usage when reconstructing a deflate stream:
instead of loading the whole data into memory, stream it as required.
preflate could already do that. The preflate support in precomp just
didn't use the feature yet.
2018-07-02 23:08:48 +02:00
Deus Libri
041d6b28e7
Update preflate to v0.3.4 which adds a task pool to give nice speedups
...
for large deflate streams.
However, preflate hogs much more memory now than anticipated. Needs to
be investigated.
2018-07-01 01:45:06 +02:00
Deus Libri
43fd8d82be
Fix for multiPNG handling.
...
If the last IDAT block had a length of exactly 4, containing only the
deflate CRC, the PNG would be badly reconstructed from the PCF.
2018-06-24 02:44:06 +02:00
Deus Libri
78b918dc18
- update to preflate v0.3.2 (bug fix)
...
- add switch -pfverify to force preflate to verify its result and store
mishandled deflate streams in files
2018-05-09 23:13:13 +02:00
Deus Libri
c48a0b5c4c
Add command line options to set LZMA literal compression flags (-llc,
...
-llp, -lpb) and preflate meta block size (-pfmeta).
2018-04-30 21:50:37 +02:00
Deus Libri
4772a9c37b
Update to preflate v0.3.1
...
Splits up large deflate streams to blocks responsible for ~2MiB of
uncompressed data each. This reduces memory pressure a LOT.
2018-04-30 08:27:18 +02:00
Deus Libri
0cdefd8561
Update preflate to v0.2.1
2018-04-28 23:51:25 +02:00
Deus Libri
48b114b1ef
Update preflate
2018-04-22 11:20:52 +02:00
Deus Libri
eccd92f8c0
Initial commit.
...
This contains the needed sources, and some executables for testing.
The build files are not yet up-to-date.
2018-04-14 22:05:37 +02:00
Márcio Pais
d802de0e88
Fix copy-paste error
2018-03-16 12:03:19 +01:00
Márcio Pais
d0baa634a2
Improve JPEG parsing
...
- Require a DQT (Define Quantization Table) marker to accept a valid detection
- Perform some light validation of DQT and DHT markers
2018-03-16 11:42:44 +01:00
Christian Schneider
4e49476b53
Fix for PNG multi
...
Was introduced in commit 74a4313 , looks like a copy paste error
2018-02-24 08:15:48 +01:00
Christian Schneider
2f48166bb5
Fixed incorrect bzip2 -v output
...
Compressed size of bzip2 streams was incorrectly printed as -1
2018-02-23 15:56:37 +01:00
Christian Schneider
27053a43bc
[WIP] Support zlib streams over 2 GB
...
Final occurences, starting testing
2018-02-23 14:58:23 +01:00
Christian Schneider
10a3854a23
[WIP] Support zlib streams over 2 GB
...
bzip2 routines
2018-02-23 14:43:55 +01:00