a cross-plataform, easy-to-use, non-intrusive C++ GUI library that runs on top of SDL, providing themeable widgets without learning Yet Another API
AeonWave is a cross platform, hardware accelerated, multi-threaded, and versatile stereo and 4D audio mixing library.
alogg offers facilities to decode, stream, and encode Ogg/Vorbis streams, and integrates those facilities with Allegro's datafile and sample loading routines.
amrwb is a shared library wrapper for the 3GPP AMR Adaptive Multi-Rate - Wideband (AMR-WB) Speech Codec (3GPP TS 26.204).
ATS is a library of Lisp functions for spectral Analysis, Transformation, and Synthesis of sound based on a sinusoidal plus critical-band noise model.
for audio labelling. Features include onset detection (the complex task of labelling the beginning of notes and other sound events), silence detection (an easier but very useful task) and pitch detection (the estimation of the fundamental frequency of the sound)
Audio File Library
provides a uniform programming interface to standard digital audio file formats
av_convert is a C++ API for accessing audio/video files (AVI, Quicktime, YUV4MPEG stream, WAV, etc.). This functionality is provided by a library and a set of plugin modules for I/O backends and audio/video codecs.
Avifile is a library that allows you to read and write compressed AVI files in most common video & audio formats (Indeo® Video, DivX, etc.) under x86 Linux.
Bellagio OpenMAX IL Implementation
Bellagio is a sample implementation of OpenMAX IL for Linux. It enables software developers and ISVs to familiarize themselves with the OpenMAX IL API and to develop their own OpenMAX multimedia and streaming media components for mobile devices, including codecs, video I/O, and audio mixers. Included sample components comply with the OpenMAX base and interoperability profiles and can be tunnelled together.
biTStream is a set of C headers allowing simpler access to binary structures such as those specified by MPEG, DVB, IETF, etc.
Cardio is a simple to use library for playing various audio files. It includes support for a number of audio formats and is extensible via plugins.
a simple, highly portable, stand-alone, C++-based framework for manipulation of audio data
C++ Library for Audio and Music: to offer a complete, flexible and platform independent Sound Analysis/Synthesis C++ platform to meet current and future needs of all MTG projects
some C++ Classes handling graphs for amplitude and frequency and generating wavfiles out of these graphs. You can use a graphical user interface to generate these graphs. There is a little program to play the sounds with a midi-keyboard and some other tools
DromeAudio is a small audio manipulation and playback library. It features a simple API for loading, generating, processing, and playing audio. Some of its features include loading and saving WAV sounds, loading Ogg Vorbis sounds, audio mixing/playback, and dynamic audio processing effects such as pitch shifting and echo.
Drumstick is a C++ wrapper around the ALSA library sequencer interface using Qt4 objects, idioms, and style.
EiffelMedia is a multimedia library for Eiffel.
EMIPLIB is a library to facilitate the development of programs that need to stream several kinds of media over IP. The library consists of several kinds of components that can be linked together in various ways, thereby providing a flexible framework.
a set of object oriented APIs to deal with media. It relies in the ffmpeg library, but provides developers with a much simpler programming interface
Freedaisy is a free implementation of Daisy book standard used to index MP3 files using XHTML and SMIL. Daisy is very used by visually impaired users, so they can listen a book with chapter in MP3.
Freeverb3 is a sound processing library which includes sampling rate scaling enabled version of freeverb with some fixes, extended implemantation of N Reverb by CCRMA and implementation of impulse response convolution reverb. This library's oversampling feature may provide higher quality of audio processing.
Gavl is a library for handling uncompressed audio and video data. It provides commonly used conversions like video scaling, colorspace conversion, audio resampling, and more. Many routines are available in multiple versions optimized for either high speed or better accuracy. Gavl is compatible with all major multimedia and codec APIs. The supported audio and video formats include low-end legacy formats as well as high definition formats for professional editing.
GD-Octave is a simple binding package that allows us to access the GD-Library from within the walls of Octave.
Gnonlin is a library for creating non-linear video editors. It works together with the GStreamer multimedia framework to give developers a powerful and flexible set of tools for quickly assembling applications which needs to handle non-linear video editing. Gnonlin is released under the LGPL.
GridFlow is a multi-dimensional data processing library for jMax, specialized in pictures and video.
The GUASI library implements a thread based generic asyncronous execution engine, to be used to give otherwise synchronous calls an asynchronous behavior. It can be used to wrap any synchronous call so that it can be scheduled for execution and whose result can be fetched at a later time (hence not blocking the submitter thread). The GUASI library can be used as a complement to standard event retrieval interfaces like poll(2), select(2), or epoll(4).
libh264bitstream provides a complete set of functions to read and write video streams conforming to the ITU H264 (MPEG4-AVC) video standard.
an open-source, cross-platform software development library for reading, writing, and manipulating ID3v1 and ID3v2 tags. It is an on-going project whose primary goals are full compliance with the ID3v2 standard, portability across several platforms, and providing a powerful and feature-rich API with a highly stable and efficient implementation
IEEE1394 IIDC Digital Camera Control Library
a library API for controlling an IEEE1394 camera compliant with the IIDC specifications. It also provides higher level functions for image capture
rrKlang is a free high level 2D and 3D cross platform sound engine and audio library which plays WAV, MP3, OGG and more file formats, written and usable in C++. It has all the features known from low level audio libraries as well as lots of useful features like a sophisticated streaming engine, extendable audio reading, single and multithreading modes, 3d audio emulation for low end hardware, a plugin system, multiple rolloff models and more.
a stream-oriented sound processing library. It has been designed around small DSP units that can be chained together to operate on the sound data stream
JBIG-KIT implements a highly effective data compression algorithm for bi-level high-resolution images such as fax pages or scanned documents. It provides a portable C library of compression and decompression functions with a documented interface that can easily be included into image or document processing software. In addition, JBIG-KIT provides ready-to-use compression and decompression programs with a simple command line interface (similar to the converters found in netpbm). It implements the specification ISO 11544 and ITU-T T.82, which is commonly referred to as the "JBIG1 standard".
libacarsd translates sound signals from aircrafts into human readable format.
libalinga is a C++ implementation of a multi-stream codec for the ALingA (Aligned Linguistic Annotation) format. It makes use of libogg++. Each ALingA stream holds at least one stream of annotation data, which is in the LingA format.
libao-pulse is a libao driver for the PulseAudio sound server.
libavg is a high-level multimedia platform with a focus on interactive installations. It is meant to pick up where Macromedia Director leaves off and gives you high-quality hardware-accelerated visuals as well as easy and flexible authoring, testing and deployment. libavg integrates well with other open-source solutions for sound, networking and hardware device support, resulting in a complete and well-integrated package. It uses an xml-based layout language for screen design and python as scripting language.
libcdaudio is a multi-platform CD player development library which works with Linux, FreeBSD, OpenBSD, Solaris, and Irix. It includes a basic command set for controlling the
operation of the CD-ROM drive as well as functions for accessing both the CDDB, CD Index, and Cover Art Index.
implements the different protocols (CDDBP, HTTP, SMTP) to access data on a CDDB server. It tries to be as cross-platform as possible
GNU Compact Disc Input and Control Library
libCVD is a very portable and high performance C++ library for computer vision, image, and video processing.
libdce is a library to remotely invoke the hw accellerated codecs on IVA-HD via a syslink/rcm shim layer.
libdiscmage is a lib to rip/convert single tracks from proprietary image formats (like DiscJuggler or Nero ) for burning 'em with cdrecord. Example apps are included.
libdvbcsa is a free implementation of the DVB Common Scrambling Algorithm with encryption and decryption capabilities.
libdvbpsi is a very simple and fully portable library designed for MPEG TS and DVB PSI table decoding and generation.
libdvbsi is a library for controlling a DVB SI stream.
libdvdplay is a cross-platform layer over libdvdread that provides low-level functions for DVD reading and seeking, as well as access to the DVD data (subtitles, languages, chapters).
provides a simple foundation for reading DVD video disks
libflv is able to create FLV streams for use with Flash/SWF movies. Currently libflv is only capable of creating video-streams with Screen Video Format codec (since SWF version 7) and MP3 audio streams.
libgpod is a shared library to access the contents of an iPod. It supports playlists, smart playlists, playcounts, skipcounts, ratings, podcasts, and cover art. Audio and video are supported, as well as the photo database.
for parsing ID3 tags from files or sections of memory
libid3v1 is a C library for parsing ID3v1 and ID3v1.1 tags.
libipod is a lightweight library written in C for the management of the Apple iPod. The library includes bindings for C++ and Python, with other languages to be added. The code has very few dependencies, and can be cross-compiled for embedded solutions. libipod is licensed under the Lesser GNU Public License (LGPL).
Written in C, for manipulating the International Press Telecommunications Council (IPTC) metadata stored within multimedia files such as images. This metadata can include captions and keywords, often used by popular photo management applications.
libiriverdb is a library for iRiver H300 and H100 series Hard Disk-based models that require a database of the audio metadata to be created on the device before allowing it to be used for selecting tracks to play.
libjdkmidi was originally a collection of utility functions for MIDI written for the Atari ST computer. It has since evolved into a fairly powerful C++ MIDI library. It features MIDI parsing, MIDI Show Control message creation and handling, Standard MIDI File type 0 and type 1 reading and writing, timestamped MIDI message and System Exclusive encapsulation, Efficient MIDI Track objects for sequencing, MIDI Track objects for editing MIDI events, MIDI message process chains, containers for multiple MIDI Tracks with iterators, and much more.
libkarma is a C library for managing the Rio Karma via TCP/IP. It supports all basic protocol commands and some advanced functions on top of these, like caching of the Rio database.
Kate is a codec for karaoke and text encapsulation for Ogg. Most of the time, this would be multiplexed with audio/video to carry subtitles, song lyrics (with or without karaoke data), etc, but it doesn't have to be. A possible use of a lone Kate stream would be an e-book. Moreover, the motion feature gives Kate a powerful means to describe arbitrary curves, so hand drawing of shapes can be achieved. This was originally meant for karaoke use, but can be used for any purpose. Motions can be attached to various semantics, like position or color, so scrolling or fading text can be defined.
a library that implements all the features any application will ever need to play MIDI events on MIDI devices
liblo is an implementation of the Open Sound Control protocol for POSIX systems.
libmikmod is a portable sound library. It can play samples and module files, using the OSS driver for output, as well as Alsa and EsounD.
a multi platform library that you can use to measure frequency response of a loudspeaker or a room using your computer and an ordinary soundcard. With libmls you can do both MLS (Maximum Length Sequence) and Sinus sweep measurements
libmms implemetns the MMS streaming protocol, used by most Windows Media streams. It is used by the GStreamer MMS plugin, but is not tied to GStreamer or any other project.
a real live, reentrant library for decoding MPEG-1 Layer II Audio, MPEG-1 Layer III Audio, MPEG-2 Layer III Audio, AC3 Audio, MPEG-2 Video, MPEG-1 Video, and DVD files
libmtag's objective is to create the most simple yet useful tagging library for music. It uses taglib as a backend, but provides a more generic API. As taglib, it supports: ID3v1, ID3v2 for MP3 files, Ogg Vorbis and FLAC files.
libneuro implements a simple codec for a single stream signal data in the Neuro format, a PCM data format for 1+ dimensional signals. The signal stream is serialized as an Ogg bit stream for transport. It is currently the only codec that is designed to work with libalinga.
libogg++ is a C++ library implementing the multi-stream transport format of Ogg (developed at xith.org). It is designed to be independent of the specific codecs for the interleaved data streams, and to be thread-safe in a threading model in which each codec runs its own thread.
Oggz provides a simple programming interface for reading and writing Ogg files and streams. liboggz supports the flexibility afforded by the Ogg file format.
a library written in C which enables applications to discover, and connect to, iTunes® music shares. Unlike all other daap implementations, this library is able to connect to recent iTunes shares which require a special authentication algorithm
libpac is a library to decode SBStudio PAC music modules into a stream of PCM audio data. It also includes plugins for XMMS and Winamp. SBStudio is a music tracker for MS-DOS written by Henning Hellstroem in the early 1990s.
a library for reading and writing quicktime files. It is based on the quicktime4linux library
a small, simple C library to control FM Tuner Cards supported by the Video for Linux API
Librem is a portable audio and video processing media library. It comes with several modules, including audio buffer, audio mixer, audio resampler, audio tone generator, G.711 audio codec, video pixel converter and scaler, and video mixer.
a library to save realplay output
LibSound77 is a library for producing sound data in FORTRAN77 programs compiled with g77. It provides a small usable, interface for outputting sound to speakers or .wav files.
libSpiff is a C++ library for reading and writing XSPF playlists. Both version 0 and 1 are supported. It is the official reference implementation for XSPF of the Xiph.Org Foundation.
a simple cross-platform audio library designed primarily for games on portable devices such as smart phones, PDAs, and hand-helds
libtiger is a rendering library for Kate streams using Pango and Cairo.
libtsmux is a C library for muxing files into the MPEG Transport Stream container format. It can be used to quickly add MPEG Transport Stream muxing capabilities to any application or framework. A GStreamer plugin using the library is available.
libv4l is a collection of libraries that adds a thin abstraction layer on top of video4linux2 (V4L2) devices. The purpose of this layer is to make it easy for application writers to support a wide variety of devices without having to write separate code for different devices in the same class. It consists of 3 different libraries.
libvalhalla is a library written in C. It is a media scanner, that stores various information in an SQLite database and relies on FFmpeg (libavformat and libavutil) and libcurl. It features many Internet grabbers that allows automatic download of covers, lyrics, informations on media files, tags retrival in video and music files and so on.
libvcvideo is targeted as a super-simple cross platform video device library. It's starting with the most basic features and building up, all while keeping a simple API and strong documentation for beginners.
libxmp is a module player library which supports many mainstream and obscure module formats, including Protracker MOD, Scream Tracker III S3M, and Impulse Tracker IT.
an Open Source C++ class library implementing analysis, manipulation, and synthesis of digitized sounds using the Reassigned Bandwidth-Enhanced Additive Sound Model. Loris supports modified resynthesis and manipulations of the model data, such as time- and frequency-scale modification and sound morphing. Loris includes support and wrapper code for building extension modules for various scripting languages (Python, Tcl, Perl)
lv2-c++-tools is a software package containing static libraries and programs that should make it easier to write LV2 plugins.
Mediastreamer is a library written in C that allows you to create and run audio and video streams. It is designed for any kind of voice over IP applications. It features RTP connectivity, audio codecs (Speex, iLBC, G711, GSM), video codecs (MPEG4, H263, Theora), I/O from soundcards, wav files, webcams, echo-cancelation, conferencing, and various other utilities. It has a modular design that makes it extensible through plugins. This is the media-streaming component of linphone, a GPL SIP video phone.
MFFM 3D Audio
MFFM 3d Audio
for driving 3D speaker arrays.This library will specify the amplifier gains (volumes) required to perceptually place a sound source at a particular location in space. Allows speakers and sources to move in real time
midilib is a pure Ruby MIDI library useful for reading and writing standard MIDI files and manipulating MIDI event data. Classes include MIDI::Sequence, MIDI::Track, MIDI::Event, and MIDI::IO::MIDIFile and its subclasses MIDI::IO::SeqReader and MIDI::IO::SeqWriter.
midillo is a library and a set of tools for MIDI file manipulation. At this point, utilities included only do MIDI filtering, conversion to SMF (Standard MIDI File) format 0, and a diagnostic dump.
a multi-threaded C library for streaming MP3 data to a SHOUTcast or Icecast server
Maaate (pronounce: ma:a:it) is a set of libraries that enable audio signal analysis and feature calculation in the compressed/frequency domain. Its design allows to support any kind of sound file, compressed or not. The current release handles only MPEG-1 compressed audio files - other formats will be plugged in.
a mp3 and mpeg I video/audio library for linux
A small and fast C library for parsing MPEG2 files. This library can be used to split video and audio streams, extract DVD SPUs, and generally analyze MPEG2 file structures.
mpgedit Software Development Toolkit (SDK) is a library exporting core editing, playback and indexing functionality.
a library that handles ID3 tags id3v1 and v2
namingmuse is a library and application that accesses freedb.org and MusicBrainz (PUID), and renames and tags music albums with information from the site (such as year, genre, album name, title, and artist).
Network Audio Tuning Language is a decentralized system for describing, locating, and organizing audio content on the Internet.
octave-ann is a set of bindings that allow one to use the ANN library from within Octave in a natural way. The ANN (Approximate Nearest Neighbor) library has some nice data structures and algorithms for computing exact or approximate nearest neighbors on an arbitrarily high-dimensional point set.
octave-g2 bindings is a set of Octave bindings for the G2 library. It can have multiple target graphic devices. You can draw once and get your image as PNG, JPEG, PS, EPS, and X11 screens.
Open Source Audio Library Project
Open Source Audio Library Project is a project designed to implement a world class set of classes in C++ that will handle all of the audiofunctions one would like. It is designed to be multi-platform with UNIX based platforms as the base. This project is still in the design phase but an alpha version that will illustrate the power and flexibility is now available. This initial version will support the Linux (OSS) audio device, WAV, and MP3 formats.
OpenH323 is an Open Source H.323 protocol stack. H.323 is the name given to a set of communications protocol is used by programs such as Microsoft NetMeeting to transmit audio and video information over the Internet. It was developed by the ITU (http://www.itu.org).
The OpenInput library is intended as a free (libre), easy-to-use, cross-platform input handler library. The goal is to provide an SDL-like interface to input devices such as keyboards, mice, and joysticks while keeping the dependencies for the library at a bare minimum and making it simple to integrate in existing projects.
OpenVDB is an open source C++ library comprising a novel hierarchical data structure and a suite of tools for the efficient storage and manipulation of sparse volumetric data discretized on three-dimensional grids.
PenguinSound is a cross platform audio library. The intension was to make it easier to develop audio applications.
PKAudio is a high performance audio/signal processing library that allows stream objects to be created and mixed without interrupting the main stream of audio.
PowerTab Tools contains a library for accessing PowerTab Tablature files (*.ptb) and utilities for converting .ptb files to ASCII and GNU LilyPond files.
py-libmpdclient2 is a Python library for making [WWW] MPD (Music Player Daemon) clients. It replaces py-libmpdclient and is completely redesigned and written from the ground up. The result is a much smaller, simpler, more reliable, and more dynamic library.
PyChoReLib is a Python library which transforms lists of notenames to a chordname.
a python library and script for managing iPod metadata. It is similar in scope the gnupod (written in perl) and is designed to work well with other programs that generate iPod metadata
Reindeer is a C library for the rendering of virtual scenes, mainly in three dimensions. The library dynamically loads backend modules to do the rendering.
Really Easy Video Encoding Library: a C/C++ library designed to be the shortest, simplest path between your application and high-quality well-compressed video
ScriptSWF is a C and C++ library plus a compiler to create Adobe Flash SWF movies up to version 9 (v1.8.1).
a sample multi-channel audio mixer library. It supports any number of simultaneously playing channels of 16 bit stereo audio, plus a single channel of music, mixed by the popular MikMod MOD, Timidity MIDI and SMPEG MP3 libraries
a library that handles the decoding of several popular sound file formats, such as .WAV and .MP3. It is meant to make the programmer's sound playback tasks simpler
SDLucid is a C++ wrapper library for the Simple Direct Media Layer by Sam Latinga. It aims to not only be a wrapper, but also to offer a cleaner interface than the original SDL as well as more functionality.
seek-1f42 is a library for reading 1f42 H262 maps. The 1f42 H262 maps are H262 (or MPEG if you very much prefer) stream descriptions containing information such as stream frame rate, stream duration and number of frames, file position of stream frames, and so forth.
Sig++ is a set of C++ classes for use in creating sound synthesis/filtering programs -- primarily for the uninterpreted elegant environment of a Unix command line.
SkySOUND is a free audio library build on top of common audio library like MIDAS or SEAL, but that will have its own system-dependant driver.
an open-source library that can automatically identify any piece of music. It does this by determining a song's unique audio
Sonic Flow is a set of C++ libraries and C wrappers for dataflow-inspired audio signal processing. Sonic Flow consists of a feature-rich synchronous dataflow (SDF) library, a set of elementary signal processing blocks and a set of ready-made example applications. The examples illustrate implementing high-quality digital effects utilizing the SDF dataflow library and the signal processing blocks.
Sound Processing Kit
Sound Processing Kit is an object-oriented class library for audio signal processing. Sound Processing Kit (abbreviated as SPKit) includes classes for various signal processing tasks, but most importantly, it introduces a way of implementing sound processing algorithms in a simple object-oriented manner.
provides a library to enable real-time streaming applications (such as streaming MPEG-4 video) to cope with packet loss, variable bandwidth, and variable delay on the Internet
SubLib is a library for managing movie subtitles. It's being built to support numerous subtitle formats and includes error correction and subtitle editing, conversion and synchronization.
Synthesis ToolKit (STK)
Synthesis ToolKit is a set of audio signal processing C++ classes and instruments for music synthesis.
TV Application Layer
The TV Application Layer (TAL) is an open source library for building applications for Connected TV devices. TAL was developed internally within the BBC as a way of vastly simplifying TV application development whilst increasing the reach of BBC TV applications such as iPlayer. Today all of the BBC?s HTML-based TV applications are built using TAL.
Vortex Library is a BEEP Core protocol implementation, following the standard definitions in RFC 3080 and RFC 3081. It has a clean and easy-to-use API that allows you to write new protocols or user applications. Vortex Library has been developed within the Af-Arch project, and it is being used at the data transport layer. However, Vortex Library can be used independently of Af-Arch.
WaveTools is a library consisting of 8 programs for manipulating mono WAV Files.
wxMusik is a full featured multimedia library application supporting specifically mp3 and ogg files. wxMusik functions as a player, tagger, and organizer modeled loosely on iTunes.
a C++ library and a simple text frontend that can manage files on a Samsung Yepp-NEU Usb Mp3 player
Zapping VBI library
provides functions to capture and decode VBI data. It is written in plain ANSI C with few dependencies on other tools and libraries