10 projects tagged "C99"
pngquant is a batch conversion utility to quantize and dither truecolor PNG images, especially those with a full alpha channel, down to "RGBA-palette" PNGs (i.e., PLTE + tRNS in PNG parlance). Such images are usually two to four times smaller than the full 32-bit versions, and partial transparency is preserved quite nicely. This makes pngquant especially useful both for Web sites and for PlayStation 2 development, where one of the texture formats is RGBA-palette-based (though not PNG-compressed).
Little CMS intends to be a small-footprint color management engine, with special focus on accuracy and performance. It uses the International Color Consortium standard (ICC), which is the modern standard when regarding to color management. The ICC specification is widely used and is referred to in many International and other de-facto standards.
Potamus is a lightweight GTK+-based audio player with a simple interface and an emphasis on high audio quality. It tries to make it as easy as possible to use your file manager to locate and play music. Potamus can play a wide range of audio formats, works with ALSA, JACK,and other audio systems, and supports 24-bit audio and gapless playback.
Concurrency Kit provides a plethora of concurrency primitives and lock-less and lock-free data structures designed to aid in the design and implementation of high performance scalable concurrent systems. It was designed to minimize dependencies on operating system-specific interfaces, and most of the interface relies only on a strict subset of the standard library and more popular compiler extensions.
bcg729 is an Open Source implementation of both the encoder and decoder of the ITU G729 Annex A speech codec. It is written in C 99, is fully portable, and can be executed on many platforms, including both ARM and x86. libbcg729 supports concurrent channel encoding/decoding for multi-call applications such as conferencing. This project was initially developed as part of Mediastreamer2, Linphone's media processing engine, so it contains the glue to be integrated into Linphone/Mediastreamer2.
MMLi is a simple Music Macro Language interpreter written in ISO C99. The Music Macro Language originated in 8-bit BASIC implementations (as part of the “PLAY” command), and can still be found in modern BASICs (like QB64) and in system software (like FreeBSD's spkr.c driver.) This interpreter features an example "mmlitest" program which can be used to translate MML sequences into beep(1) commandline arguments.
giflib is a library for rendering and generating GIF image files. This is the GIF service code in C used for over two decades by graphics applications, Web browsers, game consoles, ATMs, and pretty much anything else that throws pixels on a display. It is simple, stable, and bulletproof.
The ExaScale IO (ESIO) library provides simple, high throughput input and output of structured data sets using parallel HDF5. It is designed to support reading and writing of turbulence simulation restart files, but it may be useful in other contexts. The library is written in C99 and may be used by C89 or C++ applications. A Fortran API built atop the F2003 standard ISO_C_BINDING is also available.
The underling library provides simple, scalable means to manipulate MPI-parallel, three dimensional pencil decompositions using FFTW. Pencil decompositions are a natural way to distribute O(n^3) data across O(n^2) processors and are well-suited for memory-intensive, structured spectral turbulence simulations and postprocessing codes. It may be useful in other domains as well. The library is written in C99 and may be used by C89 or C++ applications.