DDSP: Differentiable Digital Signal Processing
Demos | Tutorials | Installation | Overview | Blog Post | Papers
DDSP是常见DSP函数(如合成器、波形整形器和滤波器等)的微分版本库。这允许这些可解释的元素被用作深度学习模型的一部分,尤其是作为音频生成的输出层。
DDSP is a library of differentiable versions of common DSP functions (such as synthesizers, waveshapers, and filters). This allows these interpretable elements to be used as part of an deep learning model, especially as the output layers for audio generation.
Getting Started
First, follow the steps in the Installation section to install the DDSP package and its dependencies. DDSP modules can be used to generate and manipulate audio from neural network outputs as in this simple example:
import ddsp
Get synthesizer parameters from a neural network.
outputs = network(inputs)
Initialize signal processors.
harmonic = ddsp.synths.Harmonic()
Generates audio from harmonic synthesizer.
audio = harmonic(outputs[‘amplitudes’],
outputs[‘harmonic_distribution’],
outputs[‘f0_hz’])
Links
Check out the blog post 💻
Read the original paper 📄
Listen to some examples 🔈Try out the timbre transfer dem
Tutorials
To introduce the main concepts of the library, we have step-by-step colab tutorials for all the major library components ddsp/colab/tutorials.
0_processor: Introduction to the Processor class.
1_synths_and_effects: Example usage of processors.
2_processor_group: Stringing processors together in a ProcessorGroup.
3_training: Example of training on a single sound.
4_core_functions: Extensive examples for most of the core DDSP functions.
Modules
The DDSP library consists of a core library (ddsp/) and a self-contained training library (ddsp/training/). The core library is split up into into several modules:
Core: All the differentiable DSP functions.
Processors: Base classes for Processor and ProcessorGroup.
Synths: Processors that generate audio from network outputs.
Effects: Processors that transform audio according to network outputs.
Losses: Loss functions relevant to DDSP applications.
Spectral Ops: Helper library of Fourier and related transforms.
Besides the tutorials, each module has its own test file that can be helpful for examples of usage.
更多精彩文章请关注公众号: