All Projects β†’ dariosanfilippo β†’ edgeofchaos

dariosanfilippo / edgeofchaos

Licence: GPL-2.0 license
This repository is not maintained anymore. If I have any significant contributions, I usually do a PR for the Faust libraries. This repository contains the Faust libraries for sound and information processing that I use to implement my music complex adaptive systems.

Projects that are alternatives of or similar to edgeofchaos

Moogladders
πŸ”‰ Collected C++ implementations of the classic 4-pole moog ladder filter
Stars: ✭ 211 (+313.73%)
Mutual labels:  dsp
lsp-dsp-lib
DSP library for signal processing
Stars: ✭ 37 (-27.45%)
Mutual labels:  dsp
AdaptationAndroidP
适配AndroidP、Qη‰ˆζœ¬ηš„demo
Stars: ✭ 17 (-66.67%)
Mutual labels:  adaptation
Renderman
Command line C++ and Python VSTi Host library with MFCC, FFT, RMS and audio extraction and .wav writing.
Stars: ✭ 225 (+341.18%)
Mutual labels:  dsp
voder
An emulation of the Voder Speech Synthesizer.
Stars: ✭ 19 (-62.75%)
Mutual labels:  dsp
gensound
Pythonic audio processing and generation framework
Stars: ✭ 69 (+35.29%)
Mutual labels:  dsp
Red Pitaya Notes
Notes on the Red Pitaya Open Source Instrument
Stars: ✭ 205 (+301.96%)
Mutual labels:  dsp
FFTVisualizer
This project demonstrates DSP capabilities of Terasic DE2-115
Stars: ✭ 17 (-66.67%)
Mutual labels:  dsp
concatenative granulation
Live concatenative granular processing for click-free looping, complex wavetable oscillation, and non-overlapping granulation with rectangular windowing.
Stars: ✭ 35 (-31.37%)
Mutual labels:  dsp
bcgov-data-science-cop
A repository to house bcgov Data Science CoP materials
Stars: ✭ 22 (-56.86%)
Mutual labels:  dsp
Dsp.jl
Filter design, periodograms, window functions, and other digital signal processing functionality
Stars: ✭ 226 (+343.14%)
Mutual labels:  dsp
Formula-Student-Driverless-Simulator
A virtual world where Autonomous Systems from different Formula Student teams can compete in time-trial challenges
Stars: ✭ 144 (+182.35%)
Mutual labels:  autonomous-systems
Apollo
Apollo is a Open-Source music player for playback and organization of audio files on Microsoft Windows, built using Python.
Stars: ✭ 13 (-74.51%)
Mutual labels:  dsp
Mimium
mimium (MInimal Musical medIUM) a programming language as an infrastructure for sound and music.
Stars: ✭ 212 (+315.69%)
Mutual labels:  dsp
Pitch-Tracking
Pitch tracking in real-time with the Kalman filter
Stars: ✭ 78 (+52.94%)
Mutual labels:  dsp
Fourier
Fast Fourier transforms (FFTs) in Rust
Stars: ✭ 206 (+303.92%)
Mutual labels:  dsp
ooura
Javascript port of Ooura FFT implementation
Stars: ✭ 23 (-54.9%)
Mutual labels:  dsp
SpleeterRT
Real time monaural source separation base on fully convolutional neural network operates on Time-frequency domain.
Stars: ✭ 111 (+117.65%)
Mutual labels:  dsp
DSP-Testbench
A DSP Testbench for users of the JUCE framework
Stars: ✭ 40 (-21.57%)
Mutual labels:  dsp
awesome-mobile-robotics
Useful links of different content related to AI, Computer Vision, and Robotics.
Stars: ✭ 243 (+376.47%)
Mutual labels:  autonomous-systems

Edge of Chaos

Introduction

This repository contains libraries including some essential building blocks for the implementation of musical complex adaptive systems in the Faust programming environment. (https://faust.grame.fr.)

It includes a set of time-domain algorithms, some of which are original, for the processing of low-level and high-level information as well as the processing of sound using standard and non-conventional techniques. It also includes functions for the realisation of networks with different topologies, linear and nonlinear mapping strategies to render positive and negative feedback relationships, and different kinds of energy-preserving techniques for the stability of self-oscillating systems.

Edge of Chaos is being developed and maintained by Dario Sanfilippo, and it is the library through which he creates his music.

http://dariosanfilippo.com

Overview of the library modules

allEOC.lib:         access to all Edge of Chaos library modules from a 
                    single point.

auxiliaryEOC.lib:   auxiliary functions library for testing, analysis, 
                    inspection, and debugging.

delaysEOC.lib:      delay line functions library with 
                    samplerate-independent delay parameters based on 
                    aust's delay lines for integer and fractional delays.

edgeofchaos.lib:    this file provides access to all the Edge of Chaos 
                    library modules through a series of environments.

filtersEOC.lib:     filters library containing bilinear transform and 
                    topology preserving transform implementations 
                    (zero-delay feedback) of allpass, lowpass, highpass, 
                    bandpass, bandstop, shelving, and state-variable 
                    filters. Furthermore, there are implementations of 
                    crossovers, comb-integrator circuits, analytic filters, 
                    and integrators, among others.

informationEOC.lib: information processing functions library including 
                    low-level and high-level algorithms both based on 
                    hard-coded and adaptive mechanisms. The low-level 
                    functions provide time-domain techniques for feature 
                    extraction that are normally based on FFT processing, 
                    such as spectral centroid and spectral flatness 
                    (noisiness). The high-level functions provide an 
                    analysis of the state space of low-level information 
                    signals to determine, based on notions of complexity 
                    theory and music perception, characteristics such as 
                    dynamicity, heterogeneity, and complexity of audio 
                    streams.

mathsEOC.lib:       math library containing functions for statistics, 
                    linear and nonlinear fuzzy logic, interpolators, 
                    network topologies, matrices, linear and nonlinear 
                    mapping, windowing functions, hysteresis, angular 
                    frequency, and several time constants for exponential 
                    decays in one-pole systems.

oscillatorsEOC.lib: mainly oscillators based on band-limited impulse 
                    trains and an excellent recursive quadrature
                    oscillator.

outformationEOC.lib:audio processing library containing standard and 
                    original techniques for audio transformations.
                    The functions include delay-line granulators with 
                    non-homogenous windowing, windowless granulation 
                    through zero-crossing detection, modulations, 
                    FDN-based processes, and time-variant transfer 
                    functions. The library also includes dynamical
                    systems such as chaotic systems and cellular
                    automata.

stabilityEOC.lib:   stability processing functions including standard 
                    dynamics processing as well as self-regulating designs.

Coding conventions

– 80 characters per line.

– Infix syntax should be used when possible to increace conciseness.

– Spacing should be used between operands and operators to increase readability.

– Spacing should be used between operators and arguments for partial application with infix operators (see the Faust manual for a complete list of such operators).

– No spacing should be used between operators and arguments for partial application with functions.

– Spacing should be used between the first operand and the parallel composition operator (comma operator), while the second operand should be on a new line indented with the first one.

– When separating arguments, there should be no spacing between the comma and the argument on its left to distinguish it from the parallel composition operator (comma).

– The recursive composition operator and its right-operand should be on a new line and indented with the operator where the recursion is connected.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].