davidbyttow / govips

A lightning fast image processing and resizing library for Go
MIT License
1.31k stars 203 forks source link

Using correct ICC profile while exporting Webp Images #410

Closed prashik-s closed 8 months ago

prashik-s commented 8 months ago

closes #384

tonimelisma commented 8 months ago

I'm sorry @prashik-s but the test seems to be failing

tonimelisma commented 8 months ago

Sorry for the hassle. I had to revert the merge

prashik-s commented 8 months ago

I'm not sure what's wrong but the test didn't even execute. It failed even before this step

image

@tonimelisma Have you seen similar issues in the past?

tonimelisma commented 8 months ago

Can you resubmit the PR? You can see the failed test in the main branch commit, not on your PR

tonimelisma commented 8 months ago

you can see test run #560:

`vips cac image_test.go:75: Error Trace: image_test.go:75 Error: Not equal: expected: []byte{0x0, 0x0, 0xc, 0x48, 0x4c, 0x69, 0x6e, 0x6f, 0x2, 0x10, 0x0, 0x0, 0x6d, 0x6e, 0x74, 0x72, 0x52, 0x47, 0x42, 0x20, 0x58, 0x59, 0x5a, 0x20, 0x7, 0xce, 0x0, 0x2, 0x0, 0x9, 0x0, 0x6, 0x0, 0x31, 0x0, 0x0, 0x61, 0x63, 0x73, 0x70, 0x4d, 0x53, 0x46, 0x54, 0x0, 0x0, 0x0, 0x0, 0x49, 0x45, 0x43, 0x20, 0x73, 0x52, 0x47, 0x42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0xf6, 0xd6, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0xd3, 0x2d, 0x48, 0x50, 0x20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x11, 0x63, 0x70, 0x72, 0x74, 0x0, 0x0, 0x1, 0x50, 0x0, 0x0, 0x0, 0x33, 0x64, 0x65, 0x73, 0x63, 0x0, 0x0, 0x1, 0x84, 0x0, 0x0, 0x0, 0x6c, 0x77, 0x74, 0x70, 0x74, 0x0, 0x0, 0x1, 0xf0, 0x0, 0x0, 0x0, 0x14, 0x62, 0x6b, 0x70, 0x74, 0x0, 0x0, 0x2, 0x4, 0x0, 0x0, 0x0, 0x14, 0x72, 0x58, 0x59, 0x5a, 0x0, 0x0, 0x2, 0x18, 0x0, 0x0, 0x0, 0x14, 0x67, 0x58, 0x59, 0x5a, 0x0, 0x0, 0x2, 0x2c, 0x0, 0x0, 0x0, 0x14, 0x62, 0x58, 0x59, 0x5a, 0x0, 0x0, 0x2, 0x40, 0x0, 0x0, 0x0, 0x14, 0x64, 0x6d, 0x6e, 0x64, 0x0, 0x0, 0x2, 0x54, 0x0, 0x0, 0x0, 0x70, 0x64, 0x6d, 0x64, 0x64, 0x0, 0x0, 0x2, 0xc4, 0x0, 0x0, 0x0, 0x88, 0x76, 0x75, 0x65, 0x64, 0x0, 0x0, 0x3, 0x4c, 0x0, 0x0, 0x0, 0x86, 0x76, 0x69, 0x65, 0x77, 0x0, 0x0, 0x3, 0xd4, 0x0, 0x0, 0x0, 0x24, 0x6c, 0x75, 0x6d, 0x69, 0x0, 0x0, 0x3, 0xf8, 0x0, 0x0, 0x0, 0x14, 0x6d, 0x65, 0x61, 0x73, 0x0, 0x0, 0x4, 0xc, 0x0, 0x0, 0x0, 0x24, 0x74, 0x65, 0x63, 0x68, 0x0, 0x0, 0x4, 0x30, 0x0, 0x0, 0x0, 0xc, 0x72, 0x54, 0x52, 0x43, 0x0, 0x0, 0x4, 0x3c, 0x0, 0x0, 0x8, 0xc, 0x67, 0x54, 0x52, 0x43, 0x0, 0x0, 0x4, 0x3c, 0x0, 0x0, 0x8, 0xc, 0x62, 0x54, 0x52, 0x43, 0x0, 0x0, 0x4, 0x3c, 0x0, 0x0, 0x8, 0xc, 0x74, 0x65, 0x78, 0x74, 0x0, 0x0, 0x0, 0x0, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28, 0x63, 0x29, 0x20, 0x31, 0x39, 0x39, 0x38, 0x20, 0x48, 0x65, 0x77, 0x6c, 0x65, 0x74, 0x74, 0x2d, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x72, 0x64, 0x20, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x0, 0x0, 0x64, 0x65, 0x73, 0x63, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x12, 0x73, 0x52, 0x47, 0x42, 0x20, 0x49, 0x45, 0x43, 0x36, 0x31, 0x39, 0x36, 0x36, 0x2d, 0x32, 0x2e, 0x31, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x12, 0x73, 0x52, 0x47, 0x42, 0x20, 0x49, 0x45, 0x43, 0x36, 0x31, 0x39, 0x36, 0x36, 0x2d, 0x32, 0x2e, 0x31, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x58, 0x59, 0x5a, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf3, 0x51, 0x0, 0x1, 0x0, 0x0, 0x0, 0x1, 0x16, 0xcc, 0x58, 0x59, 0x5a, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x58, 0x59, 0x5a, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6f, 0xa2, 0x0, 0x0, 0x38, 0xf5, 0x0, 0x0, 0x3, 0x90, 0x58, 0x59, 0x5a, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x62, 0x99, 0x0, 0x0, 0xb7, 0x85, 0x0, 0x0, 0x18, 0xda, 0x58, 0x59, 0x5a, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24, 0xa0, 0x0, 0x0, 0xf, 0x84, 0x0, 0x0, 0xb6, 0xcf, 0x64, 0x65, 0x73, 0x63, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x16, 0x49, 0x45, 0x43, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x65, 0x63, 0x2e, 0x63, 0x68, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x16, 0x49, 0x45, 0x43, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x65, 0x63, 0x2e, 0x63, 0x68, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x64, 0x65, 0x73, 0x63, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2e, 0x49, 0x45, 0x43, 0x20, 0x36, 0x31, 0x39, 0x36, 0x36, 0x2d, 0x32, 0x2e, 0x31, 0x20, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x52, 0x47, 0x42, 0x20, 0x63, 0x6f, 0x6c, 0x6f, 0x75, 0x72, 0x20, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x2d, 0x20, 0x73, 0x52, 0x47, 0x42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2e, 0x49, 0x45, 0x43, 0x20, 0x36, 0x31, 0x39, 0x36, 0x36, 0x2d, 0x32, 0x2e, 0x31, 0x20, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x52, 0x47, 0x42, 0x20, 0x63, 0x6f, 0x6c, 0x6f, 0x75, 0x72, 0x20, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x2d, 0x20, 0x73, 0x52, 0x47, 0x42, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x64, 0x65, 0x73, 0x63, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2c, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x56, 0x69, 0x65, 0x77, 0x69, 0x6e, 0x67, 0x20, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x49, 0x45, 0x43, 0x36, 0x31, 0x39, 0x36, 0x36, 0x2d, 0x32, 0x2e, 0x31, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2c, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x56, 0x69, 0x65, 0x77, 0x69, 0x6e, 0x67, 0x20, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x49, 0x45, 0x43, 0x36, 0x31, 0x39, 0x36, 0x36, 0x2d, 0x32, 0x2e, 0x31, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x76, 0x69, 0x65, 0x77, 0x0, 0x0, 0x0, 0x0, 0x0, 0x13, 0xa4, 0xfe, 0x0, 0x14, 0x5f, 0x2e, 0x0, 0x10, 0xcf, 0x14, 0x0, 0x3, 0xed, 0xcc, 0x0, 0x4, 0x13, 0xb, 0x0, 0x3, 0x5c, 0x9e, 0x0, 0x0, 0x0, 0x1, 0x58, 0x59, 0x5a, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4c, 0x9, 0x56, 0x0, 0x50, 0x0, 0x0, 0x0, 0x57, 0x1f, 0xe7, 0x6d, 0x65, 0x61, 0x73, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x8f, 0x0, 0x0, 0x0, 0x2, 0x73, 0x69, 0x67, 0x20, 0x0, 0x0, 0x0, 0x0, 0x43, 0x52, 0x54, 0x20, 0x63, 0x75, 0x72, 0x76, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x5, 0x0, 0xa, 0x0, 0xf, 0x0, 0x14, 0x0, 0x19, 0x0, 0x1e, 0x0, 0x23, 0x0, 0x28, 0x0, 0x2d, 0x0, 0x32, 0x0, 0x37, 0x0, 0x3b, 0x0, 0x40, 0x0, 0x45, 0x0, 0x4a, 0x0, 0x4f, 0x0, 0x54, 0x0, 0x59, 0x0, 0x5e, 0x0, 0x63, 0x0, 0x68, 0x0, 0x6d, 0x0, 0x72, 0x0, 0x77, 0x0, 0x7c, 0x0, 0x81, 0x0, 0x86, 0x0, 0x8b, 0x0, 0x90, 0x0, 0x95, 0x0, 0x9a, 0x0, 0x9f, 0x0, 0xa4, 0x0, 0xa9, 0x0, 0xae, 0x0, 0xb2, 0x0, 0xb7, 0x0, 0xbc, 0x0, 0xc1, 0x0, 0xc6, 0x0, 0xcb, 0x0, 0xd0, 0x0, 0xd5, 0x0, 0xdb, 0x0, 0xe0, 0x0, 0xe5, 0x0, 0xeb, 0x0, 0xf0, 0x0, 0xf6, 0x0, 0xfb, 0x1, 0x1, 0x1, 0x7, 0x1, 0xd, 0x1, 0x13, 0x1, 0x19, 0x1, 0x1f, 0x1, 0x25, 0x1, 0x2b, 0x1, 0x32, 0x1, 0x38, 0x1, 0x3e, 0x1, 0x45, 0x1, 0x4c, 0x1, 0x52, 0x1, 0x59, 0x1, 0x60, 0x1, 0x67, 0x1, 0x6e, 0x1, 0x75, 0x1, 0x7c, 0x1, 0x83, 0x1, 0x8b, 0x1, 0x92, 0x1, 0x9a, 0x1, 0xa1, 0x1, 0xa9, 0x1, 0xb1, 0x1, 0xb9, 0x1, 0xc1, 0x1, 0xc9, 0x1, 0xd1, 0x1, 0xd9, 0x1, 0xe1, 0x1, 0xe9, 0x1, 0xf2, 0x1, 0xfa, 0x2, 0x3, 0x2, 0xc, 0x2, 0x14, 0x2, 0x1d, 0x2, 0x26, 0x2, 0x2f, 0x2, 0x38, 0x2, 0x41, 0x2, 0x4b, 0x2, 0x54, 0x2, 0x5d, 0x2, 0x67, 0x2, 0x71, 0x2, 0x7a, 0x2, 0x84, 0x2, 0x8e, 0x2, 0x98, 0x2, 0xa2, 0x2, 0xac, 0x2, 0xb6, 0x2, 0xc1, 0x2, 0xcb, 0x2, 0xd5, 0x2, 0xe0, 0x2, 0xeb, 0x2, 0xf5, 0x3, 0x0, 0x3, 0xb, 0x3, 0x16, 0x3, 0x21, 0x3, 0x2d, 0x3, 0x38, 0x3, 0x43, 0x3, 0x4f, 0x3, 0x5a, 0x3, 0x66, 0x3, 0x72, 0x3, 0x7e, 0x3, 0x8a, 0x3, 0x96, 0x3, 0xa2, 0x3, 0xae, 0x3, 0xba, 0x3, 0xc7, 0x3, 0xd3, 0x3, 0xe0, 0x3, 0xec, 0x3, 0xf9, 0x4, 0x6, 0x4, 0x13, 0x4, 0x20, 0x4, 0x2d, 0x4, 0x3b, 0x4, 0x48, 0x4, 0x55, 0x4, 0x63, 0x4, 0x71, 0x4, 0x7e, 0x4, 0x8c, 0x4, 0x9a, 0x4, 0xa8, 0x4, 0xb6, 0x4, 0xc4, 0x4, 0xd3, 0x4, 0xe1, 0x4, 0xf0, 0x4, 0xfe, 0x5, 0xd, 0x5, 0x1c, 0x5, 0x2b, 0x5, 0x3a, 0x5, 0x49, 0x5, 0x58, 0x5, 0x67, 0x5, 0x77, 0x5, 0x86, 0x5, 0x96, 0x5, 0xa6, 0x5, 0xb5, 0x5, 0xc5, 0x5, 0xd5, 0x5, 0xe5, 0x5, 0xf6, 0x6, 0x6, 0x6, 0x16, 0x6, 0x27, 0x6, 0x37, 0x6, 0x48, 0x6, 0x59, 0x6, 0x6a, 0x6, 0x7b, 0x6, 0x8c, 0x6, 0x9d, 0x6, 0xaf, 0x6, 0xc0, 0x6, 0xd1, 0x6, 0xe3, 0x6, 0xf5, 0x7, 0x7, 0x7, 0x19, 0x7, 0x2b, 0x7, 0x3d, 0x7, 0x4f, 0x7, 0x61, 0x7, 0x74, 0x7, 0x86, 0x7, 0x99, 0x7, 0xac, 0x7, 0xbf, 0x7, 0xd2, 0x7, 0xe5, 0x7, 0xf8, 0x8, 0xb, 0x8, 0x1f, 0x8, 0x32, 0x8, 0x46, 0x8, 0x5a, 0x8, 0x6e, 0x8, 0x82, 0x8, 0x96, 0x8, 0xaa, 0x8, 0xbe, 0x8, 0xd2, 0x8, 0xe7, 0x8, 0xfb, 0x9, 0x10, 0x9, 0x25, 0x9, 0x3a, 0x9, 0x4f, 0x9, 0x64, 0x9, 0x79, 0x9, 0x8f, 0x9, 0xa4, 0x9, 0xba, 0x9, 0xcf, 0x9, 0xe5, 0x9, 0xfb, 0xa, 0x11, 0xa, 0x27, 0xa, 0x3d, 0xa, 0x54, 0xa, 0x6a, 0xa, 0x81, 0xa, 0x98, 0xa, 0xae, 0xa, 0xc5, 0xa, 0xdc, 0xa, 0xf3, 0xb, 0xb, 0xb, 0x22, 0xb, 0x39, 0xb, 0x51, 0xb, 0x69, 0xb, 0x80, 0xb, 0x98, 0xb, 0xb0, 0xb, 0xc8, 0xb, 0xe1, 0xb, 0xf9, 0xc, 0x12, 0xc, 0x2a, 0xc, 0x43, 0xc, 0x5c, 0xc, 0x75, 0xc, 0x8e, 0xc, 0xa7, 0xc, 0xc0, 0xc, 0xd9, 0xc, 0xf3, 0xd, 0xd, 0xd, 0x26, 0xd, 0x40, 0xd, 0x5a, 0xd, 0x74, 0xd, 0x8e, 0xd, 0xa9, 0xd, 0xc3, 0xd, 0xde, 0xd, 0xf8, 0xe, 0x13, 0xe, 0x2e, 0xe, 0x49, 0xe, 0x64, 0xe, 0x7f, 0xe, 0x9b, 0xe, 0xb6, 0xe, 0xd2, 0xe, 0xee, 0xf, 0x9, 0xf, 0x25, 0xf, 0x41, 0xf, 0x5e, 0xf, 0x7a, 0xf, 0x96, 0xf, 0xb3, 0xf, 0xcf, 0xf, 0xec, 0x10, 0x9, 0x10, 0x26, 0x10, 0x43, 0x10, 0x61, 0x10, 0x7e, 0x10, 0x9b, 0x10, 0xb9, 0x10, 0xd7, 0x10, 0xf5, 0x11, 0x13, 0x11, 0x31, 0x11, 0x4f, 0x11, 0x6d, 0x11, 0x8c, 0x11, 0xaa, 0x11, 0xc9, 0x11, 0xe8, 0x12, 0x7, 0x12, 0x26, 0x12, 0x45, 0x12, 0x64, 0x12, 0x84, 0x12, 0xa3, 0x12, 0xc3, 0x12, 0xe3, 0x13, 0x3, 0x13, 0x23, 0x13, 0x43, 0x13, 0x63, 0x13, 0x83, 0x13, 0xa4, 0x13, 0xc5, 0x13, 0xe5, 0x14, 0x6, 0x14, 0x27, 0x14, 0x49, 0x14, 0x6a, 0x14, 0x8b, 0x14, 0xad, 0x14, 0xce, 0x14, 0xf0, 0x15, 0x12, 0x15, 0x34, 0x15, 0x56, 0x15, 0x78, 0x15, 0x9b, 0x15, 0xbd, 0x15, 0xe0, 0x16, 0x3, 0x16, 0x26, 0x16, 0x49, 0x16, 0x6c, 0x16, 0x8f, 0x16, 0xb2, 0x16, 0xd6, 0x16, 0xfa, 0x17, 0x1d, 0x17, 0x41, 0x17, 0x65, 0x17, 0x89, 0x17, 0xae, 0x17, 0xd2, 0x17, 0xf7, 0x18, 0x1b, 0x18, 0x40, 0x18, 0x65, 0x18, 0x8a, 0x18, 0xaf, 0x18, 0xd5, 0x18, 0xfa, 0x19, 0x20, 0x19, 0x45, 0x19, 0x6b, 0x19, 0x91, 0x19, 0xb7, 0x19, 0xdd, 0x1a, 0x4, 0x1a, 0x2a, 0x1a, 0x51, 0x1a, 0x77, 0x1a, 0x9e, 0x1a, 0xc5, 0x1a, 0xec, 0x1b, 0x14, 0x1b, 0x3b, 0x1b, 0x63, 0x1b, 0x8a, 0x1b, 0xb2, 0x1b, 0xda, 0x1c, 0x2, 0x1c, 0x2a, 0x1c, 0x52, 0x1c, 0x7b, 0x1c, 0xa3, 0x1c, 0xcc, 0x1c, 0xf5, 0x1d, 0x1e, 0x1d, 0x47, 0x1d, 0x70, 0x1d, 0x99, 0x1d, 0xc3, 0x1d, 0xec, 0x1e, 0x16, 0x1e, 0x40, 0x1e, 0x6a, 0x1e, 0x94, 0x1e, 0xbe, 0x1e, 0xe9, 0x1f, 0x13, 0x1f, 0x3e, 0x1f, 0x69, 0x1f, 0x94, 0x1f, 0xbf, 0x1f, 0xea, 0x20, 0x15, 0x20, 0x41, 0x20, 0x6c, 0x20, 0x98, 0x20, 0xc4, 0x20, 0xf0, 0x21, 0x1c, 0x21, 0x48, 0x21, 0x75, 0x21, 0xa1, 0x21, 0xce, 0x21, 0xfb, 0x22, 0x27, 0x22, 0x55, 0x22, 0x82, 0x22, 0xaf, 0x22, 0xdd, 0x23, 0xa, 0x23, 0x38, 0x23, 0x66, 0x23, 0x94, 0x23, 0xc2, 0x23, 0xf0, 0x24, 0x1f, 0x24, 0x4d, 0x24, 0x7c, 0x24, 0xab, 0x24, 0xda, 0x25, 0x9, 0x25, 0x38, 0x25, 0x68, 0x25, 0x97, 0x25, 0xc7, 0x25, 0xf7, 0x26, 0x27, 0x26, 0x57, 0x26, 0x87, 0x26, 0xb7, 0x26, 0xe8, 0x27, 0x18, 0x27, 0x49, 0x27, 0x7a, 0x27, 0xab, 0x27, 0xdc, 0x28, 0xd, 0x28, 0x3f, 0x28, 0x71, 0x28, 0xa2, 0x28, 0xd4, 0x29, 0x6, 0x29, 0x38, 0x29, 0x6b, 0x29, 0x9d, 0x29, 0xd0, 0x2a, 0x2, 0x2a, 0x35, 0x2a, 0x68, 0x2a, 0x9b, 0x2a, 0xcf, 0x2b, 0x2, 0x2b, 0x36, 0x2b, 0x69, 0x2b, 0x9d, 0x2b, 0xd1, 0x2c, 0x5, 0x2c, 0x39, 0x2c, 0x6e, 0x2c, 0xa2, 0x2c, 0xd7, 0x2d, 0xc, 0x2d, 0x41, 0x2d, 0x76, 0x2d, 0xab, 0x2d, 0xe1, 0x2e, 0x16, 0x2e, 0x4c, 0x2e, 0x82, 0x2e, 0xb7, 0x2e, 0xee, 0x2f, 0x24, 0x2f, 0x5a, 0x2f, 0x91, 0x2f, 0xc7, 0x2f, 0xfe, 0x30, 0x35, 0x30, 0x6c, 0x30, 0xa4, 0x30, 0xdb, 0x31, 0x12, 0x31, 0x4a, 0x31, 0x82, 0x31, 0xba, 0x31, 0xf2, 0x32, 0x2a, 0x32, 0x63, 0x32, 0x9b, 0x32, 0xd4, 0x33, 0xd, 0x33, 0x46, 0x33, 0x7f, 0x33, 0xb8, 0x33, 0xf1, 0x34, 0x2b, 0x34, 0x65, 0x34, 0x9e, 0x34, 0xd8, 0x35, 0x13, 0x35, 0x4d, 0x35, 0x87, 0x35, 0xc2, 0x35, 0xfd, 0x36, 0x37, 0x36, 0x72, 0x36, 0xae, 0x36, 0xe9, 0x37, 0x24, 0x37, 0x60, 0x37, 0x9c, 0x37, 0xd7, 0x38, 0x14, 0x38, 0x50, 0x38, 0x8c, 0x38, 0xc8, 0x39, 0x5, 0x39, 0x42, 0x39, 0x7f, 0x39, 0xbc, 0x39, 0xf9, 0x3a, 0x36, 0x3a, 0x74, 0x3a, 0xb2, 0x3a, 0xef, 0x3b, 0x2d, 0x3b, 0x6b, 0x3b, 0xaa, 0x3b, 0xe8, 0x3c, 0x27, 0x3c, 0x65, 0x3c, 0xa4, 0x3c, 0xe3, 0x3d, 0x22, 0x3d, 0x61, 0x3d, 0xa1, 0x3d, 0xe0, 0x3e, 0x20, 0x3e, 0x60, 0x3e, 0xa0, 0x3e, 0xe0, 0x3f, 0x21, 0x3f, 0x61, 0x3f, 0xa2, 0x3f, 0xe2, 0x40, 0x23, 0x40, 0x64, 0x40, 0xa6, 0x40, 0xe7, 0x41, 0x29, 0x41, 0x6a, 0x41, 0xac, 0x41, 0xee, 0x42, 0x30, 0x42, 0x72, 0x42, 0xb5, 0x42, 0xf7, 0x43, 0x3a, 0x43, 0x7d, 0x43, 0xc0, 0x44, 0x3, 0x44, 0x47, 0x44, 0x8a, 0x44, 0xce, 0x45, 0x12, 0x45, 0x55, 0x45, 0x9a, 0x45, 0xde, 0x46, 0x22, 0x46, 0x67, 0x46, 0xab, 0x46, 0xf0, 0x47, 0x35, 0x47, 0x7b, 0x47, 0xc0, 0x48, 0x5, 0x48, 0x4b, 0x48, 0x91, 0x48, 0xd7, 0x49, 0x1d, 0x49, 0x63, 0x49, 0xa9, 0x49, 0xf0, 0x4a, 0x37, 0x4a, 0x7d, 0x4a, 0xc4, 0x4b, 0xc, 0x4b, 0x53, 0x4b, 0x9a, 0x4b, 0xe2, 0x4c, 0x2a, 0x4c, 0x72, 0x4c, 0xba, 0x4d, 0x2, 0x4d, 0x4a, 0x4d, 0x93, 0x4d, 0xdc, 0x4e, 0x25, 0x4e, 0x6e, 0x4e, 0xb7, 0x4f, 0x0, 0x4f, 0x49, 0x4f, 0x93, 0x4f, 0xdd, 0x50, 0x27, 0x50, 0x71, 0x50, 0xbb, 0x51, 0x6, 0x51, 0x50, 0x51, 0x9b, 0x51, 0xe6, 0x52, 0x31, 0x52, 0x7c, 0x52, 0xc7, 0x53, 0x13, 0x53, 0x5f, 0x53, 0xaa, 0x53, 0xf6, 0x54, 0x42, 0x54, 0x8f, 0x54, 0xdb, 0x55, 0x28, 0x55, 0x75, 0x55, 0xc2, 0x56, 0xf, 0x56, 0x5c, 0x56, 0xa9, 0x56, 0xf7, 0x57, 0x44, 0x57, 0x92, 0x57, 0xe0, 0x58, 0x2f, 0x58, 0x7d, 0x58, 0xcb, 0x59, 0x1a, 0x59, 0x69, 0x59, 0xb8, 0x5a, 0x7, 0x5a, 0x56, 0x5a, 0xa6, 0x5a, 0xf5, 0x5b, 0x45, 0x5b, 0x95, 0x5b, 0xe5, 0x5c, 0x35, 0x5c, 0x86, 0x5c, 0xd6, 0x5d, 0x27, 0x5d, 0x78, 0x5d, 0xc9, 0x5e, 0x1a, 0x5e, 0x6c, 0x5e, 0xbd, 0x5f, 0xf, 0x5f, 0x61, 0x5f, 0xb3, 0x60, 0x5, 0x60, 0x57, 0x60, 0xaa, 0x60, 0xfc, 0x61, 0x4f, 0x61, 0xa2, 0x61, 0xf5, 0x62, 0x49, 0x62, 0x9c, 0x62, 0xf0, 0x63, 0x43, 0x63, 0x97, 0x63, 0xeb, 0x64, 0x40, 0x64, 0x94, 0x64, 0xe9, 0x65, 0x3d, 0x65, 0x92, 0x65, 0xe7, 0x66, 0x3d, 0x66, 0x92, 0x66, 0xe8, 0x67, 0x3d, 0x67, 0x93, 0x67, 0xe9, 0x68, 0x3f, 0x68, 0x96, 0x68, 0xec, 0x69, 0x43, 0x69, 0x9a, 0x69, 0xf1, 0x6a, 0x48, 0x6a, 0x9f, 0x6a, 0xf7, 0x6b, 0x4f, 0x6b, 0xa7, 0x6b, 0xff, 0x6c, 0x57, 0x6c, 0xaf, 0x6d, 0x8, 0x6d, 0x60, 0x6d, 0xb9, 0x6e, 0x12, 0x6e, 0x6b, 0x6e, 0xc4, 0x6f, 0x1e, 0x6f, 0x78, 0x6f, 0xd1, 0x70, 0x2b, 0x70, 0x86, 0x70, 0xe0, 0x71, 0x3a, 0x71, 0x95, 0x71, 0xf0, 0x72, 0x4b, 0x72, 0xa6, 0x73, 0x1, 0x73, 0x5d, 0x73, 0xb8, 0x74, 0x14, 0x74, 0x70, 0x74, 0xcc, 0x75, 0x28, 0x75, 0x85, 0x75, 0xe1, 0x76, 0x3e, 0x76, 0x9b, 0x76, 0xf8, 0x77, 0x56, 0x77, 0xb3, 0x78, 0x11, 0x78, 0x6e, 0x78, 0xcc, 0x79, 0x2a, 0x79, 0x89, 0x79, 0xe7, 0x7a, 0x46, 0x7a, 0xa5, 0x7b, 0x4, 0x7b, 0x63, 0x7b, 0xc2, 0x7c, 0x21, 0x7c, 0x81, 0x7c, 0xe1, 0x7d, 0x41, 0x7d, 0xa1, 0x7e, 0x1, 0x7e, 0x62, 0x7e, 0xc2, 0x7f, 0x23, 0x7f, 0x84, 0x7f, 0xe5, 0x80, 0x47, 0x80, 0xa8, 0x81, 0xa, 0x81, 0x6b, 0x81, 0xcd, 0x82, 0x30, 0x82, 0x92, 0x82, 0xf4, 0x83, 0x57, 0x83, 0xba, 0x84, 0x1d, 0x84, 0x80, 0x84, 0xe3, 0x85, 0x47, 0x85, 0xab, 0x86, 0xe, 0x86, 0x72, 0x86, 0xd7, 0x87, 0x3b, 0x87, 0x9f, 0x88, 0x4, 0x88, 0x69, 0x88, 0xce, 0x89, 0x33, 0x89, 0x99, 0x89, 0xfe, 0x8a, 0x64, 0x8a, 0xca, 0x8b, 0x30, 0x8b, 0x96, 0x8b, 0xfc, 0x8c, 0x63, 0x8c, 0xca, 0x8d, 0x31, 0x8d, 0x98, 0x8d, 0xff, 0x8e, 0x66, 0x8e, 0xce, 0x8f, 0x36, 0x8f, 0x9e, 0x90, 0x6, 0x90, 0x6e, 0x90, 0xd6, 0x91, 0x3f, 0x91, 0xa8, 0x92, 0x11, 0x92, 0x7a, 0x92, 0xe3, 0x93, 0x4d, 0x93, 0xb6, 0x94, 0x20, 0x94, 0x8a, 0x94, 0xf4, 0x95, 0x5f, 0x95, 0xc9, 0x96, 0x34, 0x96, 0x9f, 0x97, 0xa, 0x97, 0x75, 0x97, 0xe0, 0x98, 0x4c, 0x98, 0xb8, 0x99, 0x24, 0x99, 0x90, 0x99, 0xfc, 0x9a, 0x68, 0x9a, 0xd5, 0x9b, 0x42, 0x9b, 0xaf, 0x9c, 0x1c, 0x9c, 0x89, 0x9c, 0xf7, 0x9d, 0x64, 0x9d, 0xd2, 0x9e, 0x40, 0x9e, 0xae, 0x9f, 0x1d, 0x9f, 0x8b, 0x9f, 0xfa, 0xa0, 0x69, 0xa0, 0xd8, 0xa1, 0x47, 0xa1, 0xb6, 0xa2, 0x26, 0xa2, 0x96, 0xa3, 0x6, 0xa3, 0x76, 0xa3, 0xe6, 0xa4, 0x56, 0xa4, 0xc7, 0xa5, 0x38, 0xa5, 0xa9, 0xa6, 0x1a, 0xa6, 0x8b, 0xa6, 0xfd, 0xa7, 0x6e, 0xa7, 0xe0, 0xa8, 0x52, 0xa8, 0xc4, 0xa9, 0x37, 0xa9, 0xa9, 0xaa, 0x1c, 0xaa, 0x8f, 0xab, 0x2, 0xab, 0x75, 0xab, 0xe9, 0xac, 0x5c, 0xac, 0xd0, 0xad, 0x44, 0xad, 0xb8, 0xae, 0x2d, 0xae, 0xa1, 0xaf, 0x16, 0xaf, 0x8b, 0xb0, 0x0, 0xb0, 0x75, 0xb0, 0xea, 0xb1, 0x60, 0xb1, 0xd6, 0xb2, 0x4b, 0xb2, 0xc2, 0xb3, 0x38, 0xb3, 0xae, 0xb4, 0x25, 0xb4, 0x9c, 0xb5, 0x13, 0xb5, 0x8a, 0xb6, 0x1, 0xb6, 0x79, 0xb6, 0xf0, 0xb7, 0x68, 0xb7, 0xe0, 0xb8, 0x59, 0xb8, 0xd1, 0xb9, 0x4a, 0xb9, 0xc2, 0xba, 0x3b, 0xba, 0xb5, 0xbb, 0x2e, 0xbb, 0xa7, 0xbc, 0x21, 0xbc, 0x9b, 0xbd, 0x15, 0xbd, 0x8f, 0xbe, 0xa, 0xbe, 0x84, 0xbe, 0xff, 0xbf, 0x7a, 0xbf, 0xf5, 0xc0, 0x70, 0xc0, 0xec, 0xc1, 0x67, 0xc1, 0xe3, 0xc2, 0x5f, 0xc2, 0xdb, 0xc3, 0x58, 0xc3, 0xd4, 0xc4, 0x51, 0xc4, 0xce, 0xc5, 0x4b, 0xc5, 0xc8, 0xc6, 0x46, 0xc6, 0xc3, 0xc7, 0x41, 0xc7, 0xbf, 0xc8, 0x3d, 0xc8, 0xbc, 0xc9, 0x3a, 0xc9, 0xb9, 0xca, 0x38, 0xca, 0xb7, 0xcb, 0x36, 0xcb, 0xb6, 0xcc, 0x35, 0xcc, 0xb5, 0xcd, 0x35, 0xcd, 0xb5, 0xce, 0x36, 0xce, 0xb6, 0xcf, 0x37, 0xcf, 0xb8, 0xd0, 0x39, 0xd0, 0xba, 0xd1, 0x3c, 0xd1, 0xbe, 0xd2, 0x3f, 0xd2, 0xc1, 0xd3, 0x44, 0xd3, 0xc6, 0xd4, 0x49, 0xd4, 0xcb, 0xd5, 0x4e, 0xd5, 0xd1, 0xd6, 0x55, 0xd6, 0xd8, 0xd7, 0x5c, 0xd7, 0xe0, 0xd8, 0x64, 0xd8, 0xe8, 0xd9, 0x6c, 0xd9, 0xf1, 0xda, 0x76, 0xda, 0xfb, 0xdb, 0x80, 0xdc, 0x5, 0xdc, 0x8a, 0xdd, 0x10, 0xdd, 0x96, 0xde, 0x1c, 0xde, 0xa2, 0xdf, 0x29, 0xdf, 0xaf, 0xe0, 0x36, 0xe0, 0xbd, 0xe1, 0x44, 0xe1, 0xcc, 0xe2, 0x53, 0xe2, 0xdb, 0xe3, 0x63, 0xe3, 0xeb, 0xe4, 0x73, 0xe4, 0xfc, 0xe5, 0x84, 0xe6, 0xd, 0xe6, 0x96, 0xe7, 0x1f, 0xe7, 0xa9, 0xe8, 0x32, 0xe8, 0xbc, 0xe9, 0x46, 0xe9, 0xd0, 0xea, 0x5b, 0xea, 0xe5, 0xeb, 0x70, 0xeb, 0xfb, 0xec, 0x86, 0xed, 0x11, 0xed, 0x9c, 0xee, 0x28, 0xee, 0xb4, 0xef, 0x40, 0xef, 0xcc, 0xf0, 0x58, 0xf0, 0xe5, 0xf1, 0x72, 0xf1, 0xff, 0xf2, 0x8c, 0xf3, 0x19, 0xf3, 0xa7, 0xf4, 0x34, 0xf4, 0xc2, 0xf5, 0x50, 0xf5, 0xde, 0xf6, 0x6d, 0xf6, 0xfb, 0xf7, 0x8a, 0xf8, 0x19, 0xf8, 0xa8, 0xf9, 0x38, 0xf9, 0xc7, 0xfa, 0x57, 0xfa, 0xe7, 0xfb, 0x77, 0xfc, 0x7, 0xfc, 0x98, 0xfd, 0x29, 0xfd, 0xba, 0xfe, 0x4b, 0xfe, 0xdc, 0xff, 0x6d, 0xff, 0xff} actual : []byte{}

                        Diff:
                        --- Expected
                        +++ Actual
                        @@ -1,199 +1,2 @@
                        -([]uint8) (len=3144) {
                        - 00000000  00 00 0c 48 4c 69 6e 6f  02 10 00 00 6d 6e 74 72  |...HLino....mntr|
                        - 00000010  52 47 42 20 58 59 5a 20  07 ce 00 02 00 09 00 06  |RGB XYZ ........|
                        - 00000020  00 31 00 00 61 63 73 70  4d 53 46 54 00 00 00 00  |.1..acspMSFT....|
                        - 00000030  49 45 43 20 73 52 47 42  00 00 00 00 00 00 00 00  |IEC sRGB........|
                        - 00000040  00 00 00 01 00 00 f6 d6  00 01 00 00 00 00 d3 2d  |...............-|
                        - 00000050  48 50 20 20 00 00 00 00  00 00 00 00 00 00 00 00  |HP  ............|
                        - 00000060  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
                        - 00000070  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
                        - 00000080  00 00 00 11 63 70 72 74  00 00 01 50 00 00 00 33  |....cprt...P...3|
                        - 00000090  64 65 73 63 00 00 01 84  00 00 00 6c 77 74 70 74  |desc.......lwtpt|
                        - 000000a0  00 00 01 f0 00 00 00 14  62 6b 70 74 00 00 02 04  |........bkpt....|
                        - 000000b0  00 00 00 14 72 58 59 5a  00 00 02 18 00 00 00 14  |....rXYZ........|
                        - 000000c0  67 58 59 5a 00 00 02 2c  00 00 00 14 62 58 59 5a  |gXYZ...,....bXYZ|
                        - 000000d0  00 00 02 40 00 00 00 14  64 6d 6e 64 00 00 02 54  |...@....dmnd...T|
                        - 000000e0  00 00 00 70 64 6d 64 64  00 00 02 c4 00 00 00 88  |...pdmdd........|
                        - 000000f0  76 75 65 64 00 00 03 4c  00 00 00 86 76 69 65 77  |vued...L....view|
                        - 00000100  00 00 03 d4 00 00 00 24  6c 75 6d 69 00 00 03 f8  |.......$lumi....|
                        - 00000110  00 00 00 14 6d 65 61 73  00 00 04 0c 00 00 00 24  |....meas.......$|
                        - 00000120  74 65 63 68 00 00 04 30  00 00 00 0c 72 54 52 43  |tech...0....rTRC|
                        - 00000130  00 00 04 3c 00 00 08 0c  67 54 52 43 00 00 04 3c  |...<....gTRC...<|
                        - 00000140  00 00 08 0c 62 54 52 43  00 00 04 3c 00 00 08 0c  |....bTRC...<....|
                        - 00000150  74 65 78 74 00 00 00 00  43 6f 70 79 72 69 67 68  |text....Copyrigh|
                        - 00000160  74 20 28 63 29 20 31 39  39 38 20 48 65 77 6c 65  |t (c) 1998 Hewle|
                        - 00000170  74 74 2d 50 61 63 6b 61  72 64 20 43 6f 6d 70 61  |tt-Packard Compa|
                        - 00000180  6e 79 00 00 64 65 73 63  00 00 00 00 00 00 00 12  |ny..desc........|
                        - 00000190  73 52 47 42 20 49 45 43  36 31 39 36 36 2d 32 2e  |sRGB IEC61966-2.|
                        - 000001a0  31 00 00 00 00 00 00 00  00 00 00 00 12 73 52 47  |1............sRG|
                        - 000001b0  42 20 49 45 43 36 31 39  36 36 2d 32 2e 31 00 00  |B IEC61966-2.1..|
                        - 000001c0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
                        - 000001d0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
                        - 000001e0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
                        - 000001f0  58 59 5a 20 00 00 00 00  00 00 f3 51 00 01 00 00  |XYZ .......Q....|
                        - 00000200  00 01 16 cc 58 59 5a 20  00 00 00 00 00 00 00 00  |....XYZ ........|
                        - 00000210  00 00 00 00 00 00 00 00  58 59 5a 20 00 00 00 00  |........XYZ ....|
                        - 00000220  00 00 6f a2 00 00 38 f5  00 00 03 90 58 59 5a 20  |..o...8.....XYZ |
                        - 00000870  3b aa 3b e8 3c 27 3c 65  3c a4 3c e3 3d 22 3d 61  |;.;.<'<e<.<.="=a|
                        - 00000880  3d a1 3d e0 3e 20 3e 60  3e a0 3e e0 3f 21 3f 61  |=.=.> >`>.>.?!?a|
                        - 00000890  3f a2 3f e2 40 23 40 64  40 a6 40 e7 41 29 41 6a  |?.?.@#@d@.@.A)Aj|
                        - 000008a0  41 ac 41 ee 42 30 42 72  42 b5 42 f7 43 3a 43 7d  |A.A.B0BrB.B.C:C}|
                        - 000008b0  43 c0 44 03 44 47 44 8a  44 ce 45 12 45 55 45 9a  |C.D.DGD.D.E.EUE.|
                        - 000008c0  45 de 46 22 46 67 46 ab  46 f0 47 35 47 7b 47 c0  |E.F"FgF.F.G5G{G.|
                        - 000008d0  48 05 48 4b 48 91 48 d7  49 1d 49 63 49 a9 49 f0  |H.HKH.H.I.IcI.I.|
                        - 000008e0  4a 37 4a 7d 4a c4 4b 0c  4b 53 4b 9a 4b e2 4c 2a  |J7J}J.K.KSK.K.L*|
                        - 000008f0  4c 72 4c ba 4d 02 4d 4a  4d 93 4d dc 4e 25 4e 6e  |LrL.M.MJM.M.N%Nn|
                        - 00000900  4e b7 4f 00 4f 49 4f 93  4f dd 50 27 50 71 50 bb  |N.O.OIO.O.P'PqP.|
                        - 00000910  51 06 51 50 51 9b 51 e6  52 31 52 7c 52 c7 53 13  |Q.QPQ.Q.R1R|R.S.|
                        - 00000920  53 5f 53 aa 53 f6 54 42  54 8f 54 db 55 28 55 75  |S_S.S.TBT.T.U(Uu|
                        - 00000930  55 c2 56 0f 56 5c 56 a9  56 f7 57 44 57 92 57 e0  |U.V.V\V.V.WDW.W.|
                        - 00000940  58 2f 58 7d 58 cb 59 1a  59 69 59 b8 5a 07 5a 56  |X/X}X.Y.YiY.Z.ZV|
                        - 00000950  5a a6 5a f5 5b 45 5b 95  5b e5 5c 35 5c 86 5c d6  |Z.Z.[E[.[.\5\.\.|
                        - 00000960  5d 27 5d 78 5d c9 5e 1a  5e 6c 5e bd 5f 0f 5f 61  |]']x].^.^l^._._a|
                        - 00000970  5f b3 60 05 60 57 60 aa  60 fc 61 4f 61 a2 61 f5  |_.`.`W`.`.aOa.a.|
                        - 00000980  62 49 62 9c 62 f0 63 43  63 97 63 eb 64 40 64 94  |bIb.b.cCc.c.d@d.|
                        - 00000990  64 e9 65 3d 65 92 65 e7  66 3d 66 92 66 e8 67 3d  |d.e=e.e.f=f.f.g=|
                        - 000009a0  67 93 67 e9 68 3f 68 96  68 ec 69 43 69 9a 69 f1  |g.g.h?h.h.iCi.i.|
                        - 000009b0  6a 48 6a 9f 6a f7 6b 4f  6b a7 6b ff 6c 57 6c af  |jHj.j.kOk.k.lWl.|
                        - 000009c0  6d 08 6d 60 6d b9 6e 12  6e 6b 6e c4 6f 1e 6f 78  |m.m`m.n.nkn.o.ox|
                        - 000009d0  6f d1 70 2b 70 86 70 e0  71 3a 71 95 71 f0 72 4b  |o.p+p.p.q:q.q.rK|
                        - 000009e0  72 a6 73 01 73 5d 73 b8  74 14 74 70 74 cc 75 28  |r.s.s]s.t.tpt.u(|
                        - 000009f0  75 85 75 e1 76 3e 76 9b  76 f8 77 56 77 b3 78 11  |u.u.v>v.v.wVw.x.|
                        - 00000a00  78 6e 78 cc 79 2a 79 89  79 e7 7a 46 7a a5 7b 04  |xnx.y*y.y.zFz.{.|
                        - 00000a10  7b 63 7b c2 7c 21 7c 81  7c e1 7d 41 7d a1 7e 01  |{c{.|!|.|.}A}.~.|
                        - 00000a20  7e 62 7e c2 7f 23 7f 84  7f e5 80 47 80 a8 81 0a  |~b~..#.....G....|
                        - 00000a30  81 6b 81 cd 82 30 82 92  82 f4 83 57 83 ba 84 1d  |.k...0.....W....|
                        - 00000a40  84 80 84 e3 85 47 85 ab  86 0e 86 72 86 d7 87 3b  |.....G.....r...;|
                        - 00000a50  87 9f 88 04 88 69 88 ce  89 33 89 99 89 fe 8a 64  |.....i...3.....d|
                        - 00000a60  8a ca 8b 30 8b 96 8b fc  8c 63 8c ca 8d 31 8d 98  |...0.....c...1..|
                        - 00000a70  8d ff 8e 66 8e ce 8f 36  8f 9e 90 06 90 6e 90 d6  |...f...6.....n..|
                        - 00000a80  91 3f 91 a8 92 11 92 7a  92 e3 93 4d 93 b6 94 20  |.?.....z...M... |
                        - 00000a90  94 8a 94 f4 95 5f 95 c9  96 34 96 9f 97 0a 97 75  |....._...4.....u|
                        - 00000aa0  97 e0 98 4c 98 b8 99 24  99 90 99 fc 9a 68 9a d5  |...L...$.....h..|
                        - 00000ab0  9b 42 9b af 9c 1c 9c 89  9c f7 9d 64 9d d2 9e 40  |.B.........d...@|
                        - 00000ac0  9e ae 9f 1d 9f 8b 9f fa  a0 69 a0 d8 a1 47 a1 b6  |.........i...G..|
                        - 00000ad0  a2 26 a2 96 a3 06 a3 76  a3 e6 a4 56 a4 c7 a5 38  |.&.....v...V...8|
                        - 00000ae0  a5 a9 a6 1a a6 8b a6 fd  a7 6e a7 e0 a8 52 a8 c4  |.........n...R..|
                        - 00000af0  a9 37 a9 a9 aa 1c aa 8f  ab 02 ab 75 ab e9 ac 5c  |.7.........u...\|
                        - 00000b00  ac d0 ad 44 ad b8 ae 2d  ae a1 af 16 af 8b b0 00  |...D...-........|
                        - 00000b10  b0 75 b0 ea b1 60 b1 d6  b2 4b b2 c2 b3 38 b3 ae  |.u...`...K...8..|
                        - 00000b20  b4 25 b4 9c b5 13 b5 8a  b6 01 b6 79 b6 f0 b7 68  |.%.........y...h|
                        - 00000b30  b7 e0 b8 59 b8 d1 b9 4a  b9 c2 ba 3b ba b5 bb 2e  |...Y...J...;....|
                        - 00000b40  bb a7 bc 21 bc 9b bd 15  bd 8f be 0a be 84 be ff  |...!............|
                        - 00000b50  bf 7a bf f5 c0 70 c0 ec  c1 67 c1 e3 c2 5f c2 db  |.z...p...g..._..|
                        - 00000b60  c3 58 c3 d4 c4 51 c4 ce  c5 4b c5 c8 c6 46 c6 c3  |.X...Q...K...F..|
                        - 00000b70  c7 41 c7 bf c8 3d c8 bc  c9 3a c9 b9 ca 38 ca b7  |.A...=...:...8..|
                        - 00000b80  cb 36 cb b6 cc 35 cc b5  cd 35 cd b5 ce 36 ce b6  |.6...5...5...6..|
                        - 00000b90  cf 37 cf b8 d0 39 d0 ba  d1 3c d1 be d2 3f d2 c1  |.7...9...<...?..|
                        - 00000ba0  d3 44 d3 c6 d4 49 d4 cb  d5 4e d5 d1 d6 55 d6 d8  |.D...I...N...U..|
                        - 00000bb0  d7 5c d7 e0 d8 64 d8 e8  d9 6c d9 f1 da 76 da fb  |.\...d...l...v..|
                        - 00000bc0  db 80 dc 05 dc 8a dd 10  dd 96 de 1c de a2 df 29  |...............)|
                        - 00000bd0  df af e0 36 e0 bd e1 44  e1 cc e2 53 e2 db e3 63  |...6...D...S...c|
                        - 00000be0  e3 eb e4 73 e4 fc e5 84  e6 0d e6 96 e7 1f e7 a9  |...s............|
                        - 00000bf0  e8 32 e8 bc e9 46 e9 d0  ea 5b ea e5 eb 70 eb fb  |.2...F...[...p..|
                        - 00000c00  ec 86 ed 11 ed 9c ee 28  ee b4 ef 40 ef cc f0 58  |.......(...@...X|
                        - 00000c10  f0 e5 f1 72 f1 ff f2 8c  f3 19 f3 a7 f4 34 f4 c2  |...r.........4..|
                        - 00000c20  f5 50 f5 de f6 6d f6 fb  f7 8a f8 19 f8 a8 f9 38  |.P...m.........8|
                        - 00000c30  f9 c7 fa 57 fa e7 fb 77  fc 07 fc 98 fd 29 fd ba  |...W...w.....)..|
                        - 00000c40  fe 4b fe dc ff 6d ff ff                           |.K...m..|
                        +([]uint8) {
                         }
        Test:           TestImageInbuildIcc_WebP

--- FAIL: TestImageInbuildIcc_WebP (0.38s) `

Auxority commented 8 months ago

Hey, I ran into a similar issue with ICC profiles.

When converting a P3 Display image using the vips CLI command vips copy profile_picture.png x.webp[Q=100,effort=4] the colors stay quite similar (visually the same). However, govips loses quite a lot of color when performing the same operation using the following code:

func convertToWebP(image *vips.ImageRef, quality int) (imageBytes []byte, err error) {
    options := vips.NewWebpExportParams()
    options.ReductionEffort = 4
    options.Quality = quality

    imageBytes, _, err = image.ExportWebp(options)
    if err != nil {
        return nil, fmt.Errorf("error exporting to webp: %w", err)
    }

    return imageBytes, nil
}

Both output images are 1.29MB. afbeelding