DDSP components in TorchAudio
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 2.9k
- Forks
- 799
- Avg merge
- 58m
- Merged PRs (30d)
- 3
Description
Differential Digital Signal Processing (DDSP) is a technique proposed by the Google Magenta team. [repo, papers].
It provides powerful generative methods that take advantage of the structure of sound based on Fourier analysis.
The paper has over 200 citations and is being applied to different tasks like speech synthesis and source separation.
TorchAudio is looking to support DDSP-based modeling methods by adding basic components.
We would like to hear and get help from the community on this work stream.
Initial Goal
To support DDSP-based generative modeling.
New Components / APIs
- Harmonic Synthesizer / Additive Synthesis
- Differentiable harmonic synthesizer
- Oscillator bank #2848
- Harmonic overtones #2863
- ADSR envelope #2859
- Differentiable harmonic synthesizer
- Subtractive Synthesis
- Filter design functions
- windowed-sinc filter #2875
- frequency method #2879
- filter function #2928
- Filter design functions
Components for DDSP Modeling from [1]
- Multi-scale mel spectrogram loss
Used to train models. Compare the melspectrogram of the original waveform and synthesized waveform at multiple scales. [reference impl] - exp_sigmoid
Modified sigmoid function used to ensure that model output is in the value range expected by synthesizers [reference impl] - [Nice to have] Dataset
- NSynth
- Solo Violin
- [Stretch] DDSP Model from [1]
- AutoEncoder model for Timbre transfer
- [Stretch] Training Script and pre-trained model
Script to train models for- LJSpeech
- Solo violin
Existing Components / Workstream
- convolve and fftconvolve will be the basis for filter application.
- RIR simulation can be used for reverb.
Existing Tutorials
References
and some random papers moto found interesting
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the DDSP paper, the Magenta reference implementations, and TorchAudio's existing convolve, fftconvolve, RIR simulation, and synthesis tutorials. The issue lists several completed components alongside broad, unchecked modeling, dataset, and training goals, so a contributor needs a maintainer to define one concrete scope and acceptance criteria before work can be considered done.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, pytorch
- Domain
- audio-video-rtc, machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100