|
|
|
@ -146,10 +146,11 @@ namespace SixLabors.ImageSharp.Tests.Formats.Webp |
|
|
|
using System.Buffers.IMemoryOwner<byte> uBuffer = memoryAllocator.Allocate<byte>(uvWidth * image.Height); |
|
|
|
using System.Buffers.IMemoryOwner<byte> vBuffer = memoryAllocator.Allocate<byte>(uvWidth * image.Height); |
|
|
|
|
|
|
|
// Make the image completely transparent.
|
|
|
|
// Make half of the the image transparent.
|
|
|
|
image.Mutate(c => c.ProcessPixelRowsAsVector4(row => |
|
|
|
{ |
|
|
|
for (int x = 0; x < row.Length; x++) |
|
|
|
int halfWidth = row.Length / 2; |
|
|
|
for (int x = 0; x < halfWidth; x++) |
|
|
|
{ |
|
|
|
row[x] = new Vector4(row[x].X, row[x].Y, row[x].Z, 0.0f); |
|
|
|
} |
|
|
|
@ -206,42 +207,42 @@ namespace SixLabors.ImageSharp.Tests.Formats.Webp |
|
|
|
}; |
|
|
|
byte[] expectedU = |
|
|
|
{ |
|
|
|
128, 128, 128, 128, 128, 128, 128, 133, 240, 139, 240, 139, 240, 139, 240, 139, 128, 128, 128, 128, |
|
|
|
128, 128, 128, 133, 240, 139, 240, 139, 240, 139, 240, 139, 128, 128, 128, 128, 128, 128, 128, 134, |
|
|
|
240, 139, 240, 139, 240, 139, 240, 139, 128, 128, 128, 128, 128, 128, 128, 134, 240, 139, 240, 139, |
|
|
|
240, 139, 240, 139, 128, 128, 128, 128, 128, 128, 128, 134, 240, 139, 240, 139, 240, 139, 240, 139, |
|
|
|
128, 128, 128, 128, 128, 128, 128, 133, 240, 139, 240, 139, 240, 139, 240, 139, 128, 128, 128, 128, |
|
|
|
128, 128, 128, 133, 240, 139, 240, 139, 240, 139, 240, 139, 112, 112, 108, 106, 106, 112, 112, 115, |
|
|
|
174, 157, 172, 129, 191, 129, 204, 112, 90, 90, 90, 90, 90, 90, 90, 95, 155, 95, 116, 142, 98, 155, |
|
|
|
105, 97, 90, 90, 90, 90, 90, 90, 90, 127, 151, 114, 172, 123, 133, 129, 115, 171, 96, 96, 96, 96, |
|
|
|
96, 96, 96, 116, 93, 131, 127, 112, 139, 93, 160, 87, 91, 91, 91, 91, 91, 91, 91, 100, 129, 135, |
|
|
|
110, 148, 107, 139, 136, 110, 91, 91, 91, 91, 91, 91, 91, 96, 164, 116, 147, 131, 127, 165, 107, |
|
|
|
128, 159, 159, 159, 159, 159, 159, 159, 162, 120, 114, 140, 86, 143, 112, 105, 161, 240, 240, 240, |
|
|
|
240, 240, 240, 240, 191, 112, 160, 110, 140, 158, 103, 159, 138, 240, 240, 240, 240, 240, 240, 240, |
|
|
|
175, 141, 114, 140, 159, 81, 158, 136, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
128, 128, 128, 128, 128, 128, 128, 139, 240, 139, 240, 139, 240, 139, 240, 139, 128, 128, 128, 128, |
|
|
|
128, 128, 128, 139, 240, 139, 240, 139, 240, 139, 240, 139, 128, 128, 128, 128, 128, 128, 128, 139, |
|
|
|
240, 139, 240, 139, 240, 139, 240, 139, 128, 128, 128, 128, 128, 128, 128, 139, 240, 139, 240, 139, |
|
|
|
240, 139, 240, 139, 128, 128, 128, 128, 128, 128, 128, 139, 240, 139, 240, 139, 240, 139, 240, 139, |
|
|
|
128, 128, 128, 128, 128, 128, 128, 139, 240, 139, 240, 139, 240, 139, 240, 139, 128, 128, 128, 128, |
|
|
|
128, 128, 128, 139, 240, 139, 240, 139, 240, 139, 240, 139, 112, 112, 108, 106, 106, 112, 112, 139, |
|
|
|
229, 146, 204, 132, 199, 131, 204, 135, 90, 90, 90, 90, 90, 90, 90, 100, 161, 92, 116, 141, 99, 155, |
|
|
|
113, 97, 90, 90, 90, 90, 90, 90, 90, 173, 145, 114, 173, 122, 133, 127, 96, 170, 96, 96, 96, 96, 96, |
|
|
|
96, 96, 148, 98, 134, 122, 113, 139, 93, 169, 85, 91, 91, 91, 91, 91, 91, 91, 108, 134, 130, 112, |
|
|
|
149, 105, 139, 146, 110, 91, 91, 91, 91, 91, 91, 91, 107, 164, 117, 149, 127, 128, 166, 107, 129, |
|
|
|
159, 159, 159, 159, 159, 159, 159, 161, 112, 113, 138, 87, 143, 112, 88, 161, 240, 240, 240, 240, |
|
|
|
240, 240, 240, 137, 110, 162, 110, 140, 158, 104, 159, 137, 240, 240, 240, 240, 240, 240, 240, 109, |
|
|
|
150, 108, 140, 161, 80, 157, 162, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 |
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 |
|
|
|
}; |
|
|
|
byte[] expectedV = |
|
|
|
{ |
|
|
|
128, 128, 128, 128, 128, 128, 128, 153, 110, 189, 110, 189, 110, 189, 110, 189, 128, 128, 128, 128, |
|
|
|
128, 128, 128, 153, 110, 189, 110, 189, 110, 189, 110, 189, 128, 128, 128, 128, 128, 128, 128, 157, |
|
|
|
110, 189, 110, 189, 110, 189, 110, 189, 128, 128, 128, 128, 128, 128, 128, 160, 110, 189, 110, 189, |
|
|
|
110, 189, 110, 189, 128, 128, 128, 128, 128, 128, 128, 160, 110, 189, 110, 189, 110, 189, 110, 189, |
|
|
|
128, 128, 128, 128, 128, 128, 128, 153, 110, 189, 110, 189, 110, 189, 110, 189, 128, 128, 128, 128, |
|
|
|
128, 128, 128, 153, 110, 189, 110, 189, 110, 189, 110, 189, 175, 175, 186, 193, 193, 175, 175, 173, |
|
|
|
110, 151, 106, 153, 122, 146, 92, 195, 240, 240, 240, 240, 240, 240, 240, 181, 122, 125, 144, 134, |
|
|
|
109, 92, 151, 114, 240, 240, 240, 240, 240, 240, 240, 184, 124, 151, 137, 112, 159, 155, 124, 130, |
|
|
|
155, 155, 155, 155, 155, 155, 155, 135, 134, 96, 89, 142, 135, 106, 144, 118, 81, 81, 81, 81, 81, |
|
|
|
81, 81, 109, 103, 150, 150, 111, 138, 127, 124, 142, 81, 81, 81, 81, 81, 81, 81, 71, 153, 129, 119, |
|
|
|
140, 165, 126, 129, 172, 101, 101, 101, 101, 101, 101, 101, 114, 107, 128, 118, 124, 108, 107, 131, |
|
|
|
137, 110, 110, 110, 110, 110, 110, 110, 113, 135, 151, 127, 115, 133, 139, 123, 118, 110, 110, 110, |
|
|
|
110, 110, 110, 110, 125, 156, 124, 141, 164, 141, 150, 123, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
128, 128, 128, 128, 128, 128, 128, 189, 110, 189, 110, 189, 110, 189, 110, 189, 128, 128, 128, 128, |
|
|
|
128, 128, 128, 189, 110, 189, 110, 189, 110, 189, 110, 189, 128, 128, 128, 128, 128, 128, 128, 189, |
|
|
|
110, 189, 110, 189, 110, 189, 110, 189, 128, 128, 128, 128, 128, 128, 128, 189, 110, 189, 110, 189, |
|
|
|
110, 189, 110, 189, 128, 128, 128, 128, 128, 128, 128, 189, 110, 189, 110, 189, 110, 189, 110, 189, |
|
|
|
128, 128, 128, 128, 128, 128, 128, 189, 110, 189, 110, 189, 110, 189, 110, 189, 128, 128, 128, 128, |
|
|
|
128, 128, 128, 189, 110, 189, 110, 189, 110, 189, 110, 189, 175, 175, 186, 193, 193, 175, 175, 188, |
|
|
|
109, 172, 108, 164, 119, 152, 92, 189, 240, 240, 240, 240, 240, 240, 240, 104, 121, 131, 142, 135, |
|
|
|
109, 92, 146, 115, 240, 240, 240, 240, 240, 240, 240, 122, 136, 148, 137, 113, 157, 155, 121, 130, |
|
|
|
155, 155, 155, 155, 155, 155, 155, 109, 135, 96, 88, 142, 136, 105, 138, 116, 81, 81, 81, 81, 81, |
|
|
|
81, 81, 143, 104, 148, 150, 111, 138, 128, 116, 141, 81, 81, 81, 81, 81, 81, 81, 63, 147, 133, 119, |
|
|
|
141, 165, 126, 147, 173, 101, 101, 101, 101, 101, 101, 101, 135, 109, 129, 122, 124, 107, 108, 128, |
|
|
|
138, 110, 110, 110, 110, 110, 110, 110, 117, 137, 151, 127, 114, 131, 139, 142, 120, 110, 110, 110, |
|
|
|
110, 110, 110, 110, 142, 156, 119, 137, 167, 141, 151, 66, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|