jsummers / bmpsuite

A set of Windows BMP image files, for testing purposes
https://entropymine.com/jason/bmpsuite/
GNU General Public License v3.0
55 stars 16 forks source link

Some suggestions #3

Closed frank-e closed 7 years ago

frank-e commented 8 years ago

Hi,

  1. Your two LINK + MBED examples are hard to judge. The LINK example might be broken; a relative or absolute path on your system, not working in a downloaded test suite.
  2. The LINK + MBED examples should be obvious. There are nice public profiles swapping RGB ending up as BRG, together with something like the FFmpeg rgbtestsrc it should be obious if this works as expected. It didn't for me, maybe I got it wrong (trying your interpretation of the specification.) If you don't find this profile on the ICC site holler, I could send it in a mail, put it in Google docs, or similar (credits: Adobe).
  3. The BMP page on Wikipedia mentions 5-5-5-1 (1 bit transparency) as Bibitfield case with a name. An example where it's obvious what tools actually do (ignore the bit or treat it as transparency) would be nice.
  4. Likewise there are two named 10-10-10-2 RGBA variants, and no clear specification what 10 and 01 are supposed to do, 33% and 66% transparency would be plausible. That also deserves two or three examples.
  5. I have not yet tested the mobile phone format number for RGBA (or rather ARGB, the alpha bits at the begin, but the alpha mask at the end). and you also skipped that.
  6. With mspaint, Chrome, and XnView on my Windows 7 box I think the 56 bytes header is okay, you could remove the confirmation request for q/rgba32h56.bmp (but I dare not mention it on Wikipedia, the spec. does not really cover it.) OTOH the 52 bytes header is rather dubious, BiBitfields without alpha.

Now checking the new examples in version 2.4, thanks, also for imageworsener, its excellent docu, and tweakpng. If you get around it please check the color profile import/export in tweakpng, I think it's broken (no big issue, adding sRGB chunks works like a cHRm or CHRm or whatever ;-)

jsummers commented 7 years ago
  1. In my opinion, nothing should support LINKed profiles. That's just asking for a security vulnerability.
  2. Good idea. I only added a BMP file with an ICC profile in the interest of completeness, but it would be better to test whether it actually works. I'll try to find a sufficiently-free channel-swapping profile, or something like that.
  3. Agreed.
  4. I know there are some Direct3D 10-10-10-2 formats. I don't know if they are found in BMP files, but I'll add examples to bmpsuite.
  5. (?) I don't think I understand this suggestion.
  6. I'm reluctant to call it "good" without official documentation. All I have is third-hand information that implies that both 52- and 56-byte headers are essentially abbreviated 108-byte headers.
jsummers commented 7 years ago

This is substantially complete. Closing.