From 541ab35b4b819152af10f0d9bce31a226422c47b Mon Sep 17 00:00:00 2001 From: Ynse Hoornenborg Date: Mon, 15 Jul 2024 18:56:13 +0200 Subject: [PATCH] Fix issue in Transform Unit Count --- src/ImageSharp/Formats/Heif/Av1/Tiling/Av1TileDecoder.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/ImageSharp/Formats/Heif/Av1/Tiling/Av1TileDecoder.cs b/src/ImageSharp/Formats/Heif/Av1/Tiling/Av1TileDecoder.cs index bcb082a721..10fdcdf6cf 100644 --- a/src/ImageSharp/Formats/Heif/Av1/Tiling/Av1TileDecoder.cs +++ b/src/ImageSharp/Formats/Heif/Av1/Tiling/Av1TileDecoder.cs @@ -1357,14 +1357,18 @@ internal class Av1TileDecoder : IAv1TileDecoder } } - this.transformUnitCount[(int)Av1Plane.U][forceSplitCount] = lumaTransformUnitCount; - this.transformUnitCount[(int)Av1Plane.V][forceSplitCount] = lumaTransformUnitCount; + this.transformUnitCount[(int)Av1Plane.U][forceSplitCount] = chromaTransformUnitCount; + this.transformUnitCount[(int)Av1Plane.V][forceSplitCount] = chromaTransformUnitCount; } } // Cr Transform Info Update from Cb. if (totalChromaTransformUnitCount != 0) { + DebugGuard.IsTrue( + (transformInfoUvIndex - totalChromaTransformUnitCount) == + partitionInfo.ModeInfo.FirstTransformLocation[(int)Av1PlaneType.Uv], + nameof(totalChromaTransformUnitCount)); int originalIndex = transformInfoUvIndex - totalChromaTransformUnitCount; for (int i = 0; i < totalChromaTransformUnitCount; i++) {