forked from alex-berman/sonotopy
Library for perceptually analyzing an acoustic signal in real time
License
gaborpapp/sonotopy
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
SONOTOPY Original author: Alexander Berman (see http://nimations.com) Github repo: https://github.com/alex-berman/sonotopy Contact: alex@nimations.com ////////////////////////////////////////////////////////////////////////////// Sonotopy: the mapping of sound (from Latin sonus for sound, topica for place) Sonotopy is a C++ library for perceptually analyzing the contents of an acoustic signal in real time. Its primary use is to map sound streams such as music or voice to a visual or other kind of output. The library consists of novel techniques to extract high-level features from an acoustic waveform. These numeric feature values can be interpreted as e.g. shapes, colors or motion parameters. The library also gives access to lower levels of processing such as spectral distribution. Typical uses: - visualization of music, beat-sensitive visuals - dancing toys and robots - artistic explorations of interactions between sound and other senses Key features: - implements a simple psychoacoustic model of the human hearing system, resulting in a natural response - autonomy: continuous adaption using biologically inspired algorithms (neural networks) eliminates the need of offline training or manual user adjustments - efficient implementation in C++, supporting real-time processing - high-level API: complex processing and large parameter sets are hidden behind simple abstractions - cross-platform: the library compiles and runs on Linux, Mac OS X and Windows - noise robustness: the adaptivity and psychoacoustic modelling limit the effects of noise in the signal ////////////////////////////////////////////////////////////////////////////// EXAMPLE VIDEOS Example videos with different feature types can be found at http://vimeo.com/channels/206361 ////////////////////////////////////////////////////////////////////////////// ROADMAP (preliminary) - Integrate with Fluxus (http://www.pawfal.org/fluxus/) - Integrate with Pure Data (http://puredata.info/) - Integrate with Max (http://cycling74.com/products/maxmspjitter/) - Integrate with Processing (http://processing.org/) ////////////////////////////////////////////////////////////////////////////// CONTRIBUTING Anyone is welcome to contribute to the project. Currently, the main areas where contributions are requested are: - Using the library and providing feedback to further development - Building demos and applications - Integration with other software (see the roadmap above) - Developments of the library core (ideas and/or implementation) But this list can easily be extended; if you have other ideas, get in touch. ////////////////////////////////////////////////////////////////////////////// REQUIREMENTS Sonotopy is built using Scons: http://www.scons.org/ (or: apt-get install scons) Sonotopy requires FFTW3: http://www.fftw.org/ (or: apt-get install libfftw3-dev) ////////////////////////////////////////////////////////////////////////////// INSTALLATION To build the library, run "scons" in the root directory. To install the library and header files, run "sudo scons install". ////////////////////////////////////////////////////////////////////////////// RUNTIME EXAMPLES Sonotopy is bundled with a demo. To build the demo, run "scons examples". To execute the demo, run "build/release/examples/Demo". For usage instructions, run Demo with the -h flag.
About
Library for perceptually analyzing an acoustic signal in real time
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
Languages
- C++ 95.3%
- Python 4.7%