The simage library
Coin uses a library called simage, which is a 1st part library since we have written it ourselves. Simage is a thin wrapper library over a huge set of graphics and audio libraries, to provide Coin with a unified API for loading images (textures), audio, and animations, regardless of which image file format it is stored as. The simage library can in other words pull in another set of 3rd party libraries. All 3rd party libraries to simage are optional. Simage is loaded at runtime or (if specified) linked at linktime with Coin.
Simage can use QImage from Qt to add support for the file formats Qt supports.
Simage can use GDI+ (gdiplus) under MS Windows to add support for the file formats supported by GDI+.
Simage can use QuickTime under Mac OS X to add support for the file formats QuickTime supports.
Simage can use libungif or giflib for GIF file support.
Simage can use libjpeg for JPEG file support.
Simage can use libpng for PNG file support. This will also require that zlib is used.
Simage can use libtiff for TIFF file support.
Simage can use JASPER support for JPEG 2000 file support.
Simage can use mpeg2enc for MPEG2 encoding.
Simage can use vfw (Video for Windows) for AVI video encoding.
Simage can use libogg, libvorbis and libvorbisfile for Ogg Vorbis support. This is for VRML97 sound support in Coin.
Simage can use libsndfile for VRML97 sound support in Coin.
Simage can use libguile for a Guile (Scheme) binding for the Simage library API.