From 1b889b1b4b30b21409ae269f36220bdf7acc0557 Mon Sep 17 00:00:00 2001 From: Will Ezell Date: Fri, 23 Jan 2026 03:40:06 -0500 Subject: [PATCH] Fixes Lossless Alpha Channel WebP (#1243) * Fix alpha channel dimensions in WebP lossless decoding Use the expected width and height values instead of tempRaster.getWidth()/getHeight() when creating the alpha channel's writable child raster. This ensures the alpha channel is correctly sized when the temp raster dimensions differ from the expected dimensions. * Fixes Lossless Huffman table based on libwebp * Remove redundant flush call in image reader test Removed unnecessary image.flush() call in WebPImageReaderTest. * adding code to generate good hash for reproducability --- .../imageio/plugins/webp/WebPImageReader.java | 2 +- .../plugins/webp/lossless/HuffmanTable.java | 92 ++++++++++-------- .../plugins/webp/lossless/VP8LDecoder.java | 11 +++ .../plugins/webp/WebPImageReaderTest.java | 75 ++++++++++++++ .../resources/webp/lossless.transparent.webp | Bin 0 -> 64306 bytes 5 files changed, 137 insertions(+), 43 deletions(-) create mode 100644 imageio/imageio-webp/src/test/resources/webp/lossless.transparent.webp diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java index 7446611b..bb794554 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java @@ -565,7 +565,7 @@ final class WebPImageReader extends ImageReaderBase { readVP8Lossless(tempRaster, null, width, height); // Copy from green (band 1) in temp to alpha in destination - WritableRaster alphaChannel = tempRaster.createWritableChild(0, 0, tempRaster.getWidth(), tempRaster.getHeight(), 0, 0, new int[]{1}); + WritableRaster alphaChannel = tempRaster.createWritableChild(0, 0, width, height, 0, 0, new int[]{1}); alphaFilter(alphaChannel, filtering); copyIntoRasterWithParams(alphaChannel, alphaRaster, param); break; diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/HuffmanTable.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/HuffmanTable.java index a1909278..21a81276 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/HuffmanTable.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/HuffmanTable.java @@ -166,73 +166,81 @@ final class HuffmanTable { if (numPosCodeLens == 1) { // Length is 0 so mask to clear length bits Arrays.fill(level1, lengthsAndSymbols[0] & 0xffff); + return; } // Due to the layout of the elements this effectively first sorts by length and then symbol. Arrays.sort(lengthsAndSymbols); + int[] count = new int[16]; + for (int lengthAndSymbol : lengthsAndSymbols) { + count[lengthAndSymbol >>> 16]++; + } + // The next code, in the bit order it would appear on the input stream, i.e. it is reversed. // Only the lowest bits (corresponding to the bit length of the code) are considered. // Example: code 0..010 (length 2) would appear as 0..001. int code = 0; + int step = 2; + index = 0; - // Used for level2 lookup + for (int length = 1; length <= LEVEL1_BITS; length++, step <<= 1) { + for (; count[length] > 0; count[length]--) { + int lengthAndSymbol = lengthsAndSymbols[index++]; + + for (int j = code; j < level1.length; j += step) { + level1[j] = lengthAndSymbol; + } + + code = nextCode(code, length); + } + } + + int rootMask = (1 << LEVEL1_BITS) - 1; int rootEntry = -1; int[] currentTable = null; - for (int i = 0; i < lengthsAndSymbols.length; i++) { - int lengthAndSymbol = lengthsAndSymbols[i]; + step = 2; + for (int length = LEVEL1_BITS + 1; length <= 15; length++, step <<= 1) { + for (; count[length] > 0; count[length]--) { + int lengthAndSymbol = lengthsAndSymbols[index++]; - int length = lengthAndSymbol >>> 16; + if ((code & rootMask) != rootEntry) { + int level2Bits = nextTableBitSize(count, length, LEVEL1_BITS); + int level2Size = 1 << level2Bits; - if (length <= LEVEL1_BITS) { - for (int j = code; j < level1.length; j += 1 << length) { - level1[j] = lengthAndSymbol; - } - } - else { - // Existing level2 table not fitting - if ((code & ((1 << LEVEL1_BITS) - 1)) != rootEntry) { - // Figure out needed table size. - // Start at current symbol and length. - // Every symbol uses 1 slot at the current bit length. - // Going up 1 bit in length multiplies the slots by 2. - // No more open slots indicate the table size to be big enough. - int maxLength = length; - - for (int j = i, openSlots = 1 << (length - LEVEL1_BITS); - j < lengthsAndSymbols.length && openSlots > 0; - j++, openSlots--) { - - int innerLength = lengthsAndSymbols[j] >>> 16; - - while (innerLength != maxLength) { - maxLength++; - openSlots <<= 1; - } - } - - int level2Size = maxLength - LEVEL1_BITS; - - currentTable = new int[1 << level2Size]; - rootEntry = code & ((1 << LEVEL1_BITS) - 1); + currentTable = new int[level2Size]; + rootEntry = code & rootMask; level2.add(currentTable); // Set root table indirection - level1[rootEntry] = (LEVEL1_BITS + level2Size) << 16 | (level2.size() - 1); + level1[rootEntry] = (LEVEL1_BITS + level2Bits) << 16 | (level2.size() - 1); } - // Add to existing (or newly generated) 2nd level table - for (int j = (code >>> LEVEL1_BITS); j < currentTable.length; j += 1 << (length - LEVEL1_BITS)) { - currentTable[j] = (length - LEVEL1_BITS) << 16 | (lengthAndSymbol & 0xffff); + int value = (length - LEVEL1_BITS) << 16 | (lengthAndSymbol & 0xffff); + for (int j = (code >>> LEVEL1_BITS); j < currentTable.length; j += step) { + currentTable[j] = value; } + + code = nextCode(code, length); } - - code = nextCode(code, length); - } } + private static int nextTableBitSize(int[] count, int length, int rootBits) { + int left = 1 << (length - rootBits); + while (length < 15) { + left -= count[length]; + if (left <= 0) { + break; + } + length++; + left <<= 1; + } + + return length - rootBits; + } + /** * Computes the next code * diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java index 73a8695d..97adfb72 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java @@ -276,6 +276,12 @@ public final class VP8LDecoder { private int decodeBwRef(WritableRaster raster, ColorCache colorCache, int width, HuffmanCodeGroup curCodeGroup, byte[] rgba, short code, int x, int y) throws IOException { int length = lz77decode(code - 256); + int remaining = width * raster.getHeight() - (y * width + x); + if (length > remaining) { + throw new IIOException("Corrupt WebP stream, backward reference exceeds image bounds: length=" + length + + ", remaining=" + remaining + ", x=" + x + ", y=" + y); + } + short distancePrefix = curCodeGroup.distanceCode.readSymbol(lsbBitReader); int distanceCode = lz77decode(distancePrefix); @@ -302,6 +308,11 @@ public final class VP8LDecoder { ySrc++; } + if (ySrc < 0 || ySrc >= raster.getHeight()) { + throw new IIOException("Corrupt WebP stream, backward reference outside image: distance=" + distanceCode + + ", x=" + x + ", y=" + y + ", xSrc=" + xSrc + ", ySrc=" + ySrc); + } + for (int l = length; l > 0; x++, l--) { // Check length and xSrc, ySrc not falling outside raster? (Should not occur if image is correct) if (x == width) { diff --git a/imageio/imageio-webp/src/test/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReaderTest.java b/imageio/imageio-webp/src/test/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReaderTest.java index a27951ce..3c920a1c 100644 --- a/imageio/imageio-webp/src/test/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReaderTest.java +++ b/imageio/imageio-webp/src/test/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReaderTest.java @@ -1,3 +1,4 @@ + package com.twelvemonkeys.imageio.plugins.webp; import com.twelvemonkeys.imageio.util.ImageReaderAbstractTest; @@ -11,6 +12,8 @@ import javax.imageio.stream.MemoryCacheImageInputStream; import java.awt.*; import java.awt.image.*; import java.io.IOException; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; import java.util.List; import static java.util.Arrays.asList; @@ -266,4 +269,76 @@ public class WebPImageReaderTest extends ImageReaderAbstractTest{@code + * dwebp imageio/imageio-webp/src/test/resources/webp/lossless.transparent.webp -o /tmp/lossless.transparent.png + * magick /tmp/lossless.transparent.png -alpha extract -depth 8 gray:/tmp/lossless.transparent-alpha.raw + * shasum -a 256 /tmp/lossless.transparent-alpha.raw + * } + * + * @throws IOException + */ + @Test + public void testReadWriteTransparentWebP() throws IOException { + WebPImageReader reader = createReader(); + + try (ImageInputStream stream = ImageIO.createImageInputStream(getClassLoaderResource("/webp/lossless.transparent.webp"))) { + reader.setInput(stream); + + // Read dimensions + int width = reader.getWidth(0); + int height = reader.getHeight(0); + assertEquals(1920, width, "Expected width of 1920"); + assertEquals(1477, height, "Expected height of 1477"); + + // Read the full image and validate alpha output (exercises long LZ77 back-references). + BufferedImage image = reader.read(0); + assertNotNull(image, "Image should not be null"); + assertEquals(width, image.getWidth(), "Image width should match"); + assertEquals(height, image.getHeight(), "Image height should match"); + assertTrue(image.getColorModel().hasAlpha(), "Image should have alpha channel"); + assertEquals("79ffff20392a9cef308b317cbac9d3e57f78e26a4f49fb38b3f3b4dbc4e63c50", + sha256Alpha(image), "Alpha plane hash mismatch"); + } + finally { + reader.dispose(); + } + } + + private static String sha256Alpha(BufferedImage image) { + WritableRaster alphaRaster = image.getAlphaRaster(); + assertNotNull(alphaRaster, "Image should have alpha raster"); + + int width = alphaRaster.getWidth(); + int height = alphaRaster.getHeight(); + int[] samples = alphaRaster.getSamples(0, 0, width, height, 0, (int[]) null); + + MessageDigest digest; + try { + digest = MessageDigest.getInstance("SHA-256"); + } + catch (NoSuchAlgorithmException e) { + throw new AssertionError("SHA-256 not available", e); + } + + for (int sample : samples) { + digest.update((byte) sample); + } + + return toHex(digest.digest()); + } + + private static String toHex(byte[] bytes) { + StringBuilder builder = new StringBuilder(bytes.length * 2); + for (byte b : bytes) { + builder.append(Character.forDigit((b >>> 4) & 0x0f, 16)); + builder.append(Character.forDigit(b & 0x0f, 16)); + } + return builder.toString(); + } } diff --git a/imageio/imageio-webp/src/test/resources/webp/lossless.transparent.webp b/imageio/imageio-webp/src/test/resources/webp/lossless.transparent.webp new file mode 100644 index 0000000000000000000000000000000000000000..218d996ed493c4d03db9d7f1553212726b262da8 GIT binary patch literal 64306 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 literal 0 HcmV?d00001