Merge tag 'v0.4.0'
libwebp 0.4.0
- 12/19/13: version 0.4.0
* improved gif2webp tool
* numerous fixes, compression improvement and speed-up
* dither option added to decoder (dwebp -dither 50 ...)
* improved multi-threaded modes (-mt option)
* improved filtering strength determination
* New function: WebPMuxGetCanvasSize
* BMP and TIFF format output added to 'dwebp'
* Significant memory reduction for decoding lossy images with alpha.
* Intertwined decoding of RGB and alpha for a shorter
time-to-first-decoded-pixel.
* WebPIterator has a new member 'has_alpha' denoting whether the frame
contains transparency.
* Container spec amended with new 'blending method' for animation.
* tag 'v0.4.0':
update ChangeLog
update NEWS description with new general features
gif2webp: don't use C99 %zu
cwebp: fix metadata output w/lossy+alpha
makefile.unix: clean up libgif2webp_util.a
update Changelog
bump version to 0.4.0
update AUTHORS & .mailmap
update NEWS for 0.4.0
Change-Id: I6df1b512fe0b697192f1f9b29431cd59aa6063d1
This commit is contained in:
@@ -497,6 +497,7 @@ static int WriteWebPWithMetadata(FILE* const out,
|
||||
if (has_vp8x) { // update the existing VP8X flags
|
||||
webp[kChunkHeaderSize] |= (uint8_t)(flags & 0xff);
|
||||
ok = ok && (fwrite(webp, kVP8XChunkSize, 1, out) == 1);
|
||||
webp += kVP8XChunkSize;
|
||||
webp_size -= kVP8XChunkSize;
|
||||
} else {
|
||||
const int is_lossless = !memcmp(webp, "VP8L", kTagSize);
|
||||
|
||||
@@ -58,7 +58,7 @@ static void SanitizeKeyFrameIntervals(size_t* const kmin_ptr,
|
||||
kmin = kmax - 1;
|
||||
if (print_warning) {
|
||||
fprintf(stderr,
|
||||
"WARNING: Setting kmin = %zu, so that kmin < kmax.\n", kmin);
|
||||
"WARNING: Setting kmin = %d, so that kmin < kmax.\n", (int)kmin);
|
||||
}
|
||||
} else if (kmin < (kmax / 2 + 1)) {
|
||||
// This ensures that cache.keyframe + kmin >= kmax is always true. So, we
|
||||
@@ -66,8 +66,8 @@ static void SanitizeKeyFrameIntervals(size_t* const kmin_ptr,
|
||||
kmin = (kmax / 2 + 1);
|
||||
if (print_warning) {
|
||||
fprintf(stderr,
|
||||
"WARNING: Setting kmin = %zu, so that kmin >= kmax / 2 + 1.\n",
|
||||
kmin);
|
||||
"WARNING: Setting kmin = %d, so that kmin >= kmax / 2 + 1.\n",
|
||||
(int)kmin);
|
||||
}
|
||||
}
|
||||
// Limit the max number of frames that are allocated.
|
||||
@@ -75,8 +75,8 @@ static void SanitizeKeyFrameIntervals(size_t* const kmin_ptr,
|
||||
kmin = kmax - MAX_CACHE_SIZE;
|
||||
if (print_warning) {
|
||||
fprintf(stderr,
|
||||
"WARNING: Setting kmin = %zu, so that kmax - kmin <= 30.\n",
|
||||
kmin);
|
||||
"WARNING: Setting kmin = %d, so that kmax - kmin <= 30.\n",
|
||||
(int)kmin);
|
||||
}
|
||||
}
|
||||
*kmin_ptr = kmin;
|
||||
|
||||
Reference in New Issue
Block a user