Table of Contents
Fetching ...

GRAFX: An Open-Source Library for Audio Processing Graphs in PyTorch

Sungho Lee, Marco Martínez-Ramírez, Wei-Hsiang Liao, Stefan Uhlich, Giorgio Fabbro, Kyogu Lee, Yuki Mitsufuji

TL;DR

GRAFX, an open-source library designed for handling audio processing graphs in PyTorch, is presented and its example use under a music mixing scenario is shown, where parameters of every differentiable processor in a large graph are optimized via gradient descent.

Abstract

We present GRAFX, an open-source library designed for handling audio processing graphs in PyTorch. Along with various library functionalities, we describe technical details on the efficient parallel computation of input graphs, signals, and processor parameters in GPU. Then, we show its example use under a music mixing scenario, where parameters of every differentiable processor in a large graph are optimized via gradient descent. The code is available at https://github.com/sh-lee97/grafx.

GRAFX: An Open-Source Library for Audio Processing Graphs in PyTorch

TL;DR

GRAFX, an open-source library designed for handling audio processing graphs in PyTorch, is presented and its example use under a music mixing scenario is shown, where parameters of every differentiable processor in a large graph are optimized via gradient descent.

Abstract

We present GRAFX, an open-source library designed for handling audio processing graphs in PyTorch. Along with various library functionalities, we describe technical details on the efficient parallel computation of input graphs, signals, and processor parameters in GPU. Then, we show its example use under a music mixing scenario, where parameters of every differentiable processor in a large graph are optimized via gradient descent. The code is available at https://github.com/sh-lee97/grafx.
Paper Structure (21 sections, 15 equations, 4 figures, 1 algorithm)

This paper contains 21 sections, 15 equations, 4 figures, 1 algorithm.

Figures (4)

  • Figure 1: Various schedules for batched node processing. For each schedule, the processing orders are shown inside the nodes.
  • Figure 2: Example usage of GRAFX for a music mixing scenario.
  • Figure 3: Speed benchmark results of various scheduling methods.
  • Figure : Batch computation of audio processing graphs.