Overall idea is - me and users of my engine shouldn't bother about providing textures in different formats and mipmaps in data files in order to support some rare old hardware.
My motto is "Slow, but works in any case". I.e. of curse I can use "lowest common denominator" 32bit RGBA format, that is supported by everything, and not even bother about it. Because I won't support anything below Win2k anyway, so I don't think, that my engine would encounter some old hardware with 16bit support only. But I still want to make sure, that it will work in any conditions. So I need at least some basic texture format conversion features, like RGBA to BGRA, 32bit to 16bit and software mipmap generation. Yeah, it's easily done in software, but I guess, drivers use some hardware acceleration internally. I can't use shaders or something like that, because shader support would most likely mean more or less modern video card, so I wouldn't need conversion in a first place. But detecting some SSE extensions and using them would be nice.
May be there are some open image conversion libraries, where I can look for clues?