PrincetonComputer SciencePIXL GroupPublications → [Yang et al. 2023] Local Access
White Box Search over Audio Synthesizer Parameters

The 24th International Society for Music Information Retrieval Conference (ISMIR), November 2023

Yuting Yang, Zeyu Jin,
Connelly Barnes, Adam Finkelstein
Abstract

Synthesizer parameter inference searches for a set of patch connections and parameters to generate audio that best matches a given target sound. Such optimization tasks benefit from access to accurate gradients. However, typical audio synths incorporate components with discontinuities -- such as sawtooth or square waveforms, or a categorical search over discrete parameters like a choice among such waveforms -- that thwart conventional automatic differentiation (AD). AD libraries in frameworks like TensorFlow and PyTorch typically ignore discontinuities, providing incorrect gradients at such locations. Thus, SOTA parameter inference methods avoid differentiating the synth directly, and resort to workarounds such as genetic search or neural proxies. Instead, we adapt and extend recent computer graphics methods for differentiable rendering to directly differentiate the synth as a white box program, and thereby optimize its parameters using gradient descent. We evaluate our framework using a generic FM synth with ADSR, noise, and IIR filters, adapting its parameters to match a variety of target audio clips. Our method outperforms baselines in both quantitative and qualitative evaluations.
Files
Citation

Yuting Yang, Zeyu Jin, Connelly Barnes, and Adam Finkelstein.
"White Box Search over Audio Synthesizer Parameters."
The 24th International Society for Music Information Retrieval Conference (ISMIR), November 2023.

BibTeX

@inproceedings{Yang:2023:WBS,
   author = "Yuting Yang and Zeyu Jin and Connelly Barnes and Adam Finkelstein",
   title = "White Box Search over Audio Synthesizer Parameters",
   booktitle = "The 24th International Society for Music Information Retrieval
      Conference (ISMIR)",
   year = "2023",
   month = nov
}