NASH 2021 project... this may or may not end up working 🤷‍♂️

Overview

wavespace synthesiser

this is my NASH 2021 project, which may or may not end up working 🤷‍♂️

what is going on?

imagine you have a big folder of audio samples. wouldn't it be cool if you could seamlessly morph between them according to some axes of control you define?

that's the idea here: to have a synthesiser which encodes the timbral characteristics of all your audio. it works by learning continuous representations of the harmonic and aperiodic components of the audio signals using conditional neural fields.

what on earth are neural fields?

first, fields. in the sense the term is used in physics, a field is some quantity (a measurement of some physical quantity, for example) that has values across some system of spatiotemporal co-ordinates. a neural field is simply a neural network that parameterises a field. you can think of it like a network that takes in co-ordinates and outputs the value you're interested in. for example, you might pass in spatial (x, y) co-ordinates and get out the pixel values (r, g, b) of an image. or, you might pass in temporal co-ordinates (t) and get out the amplitude value (a) of an audio signal.

there are a few ways to achieve this with a neural network. the most successful recent methods use periodic nonlinearities or basis functions, such as SIREN, multiplicative filter networks, and MLPs with Fourier features. here, we use SIRENs, but there is no reason other methods wouldn't work.

here we stretch the definition of a neural field slightly. our co-ordinate systems are not always spatiotemporal, and our measurements are not always physical quantities. we use two neural fields for the model in this repo:

  1. one which learns a continuous space of perfectly looping waveforms (kind of like a bank of wavetables, but without the table and without the bank, hence wavespace) as a function of time and phase
  2. one which learns a continuous space of zero-phase FIR filter magnitude responses as a function of time and frequency bin

in theory, these continuous representations should allow us to do fun things like sampling at multiple resolutions.

ok, sure. but what is a conditional neural field?

well, typically you fit a neural field to a single signal. there is some work looking at learning priors over the space of weights of neural fields to allow them to generalise, but it's quite hard to do (i will be releasing a paper soon on some reasons for this). in our scenario, though, we want to be able to represent all the sounds in our dataset continuously, which a single neural field lacks the capacity to do.

so, we turn to our trusty friend FiLM conditioning for help. we use a separate network to generate the FiLM parameters which are inserted between the layers of our neural field, subtly shifting the activations to achieve vastly different results, whilst hopefully allowing the shared weights to learn a convenient general representation. i'm not the first to consider this approach for audio synthesis: a recent paper on FiLM conditioned SIRENs for audio synthesis had promising results. however, synthesising audio samples directly is hard. imposing useful priors like the harmonicity of wavetable synthesis, along with a harmonic-plus-noise signal decomposition, allows us to reduce the complexity of the network's task.

how does it sound?

more soon!

and what is the model architecture?

also more soon!

Owner
Ben Hayes
AI & Music PhD researcher @ Centre for Digital Music, QMUL
Ben Hayes
Q-Tracker is originally a High School Project created by Admins of Cirus Lab.

Q-Tracker is originally a High School Project created by Admins of Cirus Lab. It's completly coded in python along with mysql.(Tkinter For GUI)

Adithya Krishnan 2 Nov 14, 2022
A platform for developers 👩‍💻 who wants to share their programs and projects.

Fest-Practice-2021 This project is excluded from Hacktoberfest 2021. Please use this as a testing repo/project. A platform for developers 👩‍💻 who wa

Mayank Choudhary 40 Nov 07, 2022
Remote execution of a simple function on the server

FunFetch Remote execution of a simple function on the server All types of Python support objects.

Decave 4 Jun 30, 2022
A simple single-color identicon generator

Identicons What are identicons? Setup: git clone https://github.com/vjdad4m/identicons.git cd identicons pip3 install -r requirements.txt chmod +x

Adam Vajda 1 Oct 31, 2021
A python module for DeSo

DeSo.py A python package for DeSo. Developed by ItsAditya Run pip install deso to install the module! Examples of How To Use DeSo.py Getting $DeSo pri

ItsAditya 0 Jun 30, 2022
🦕 Compile Deno executables and compress them for all platforms easily

Denoc Compile Deno executables and compress them for all platforms easily. Install You can install denoc from PyPI like any other package: pip install

Eliaz Bobadilla 8 Apr 04, 2022
A professional version for LBS

呐 Yuki Pro~ 懒兵服御用版本,yuki小姐觉得没必要单独造一个仓库,但懒兵觉得有必要并强制执行 将na-yuki框架抽象为模块,功能拆分为独立脚本,使用脚本注释器使其作为py运行 文件结构: na_yuki_pro_example.py 是一个说明脚本,用来直观展示na,yuki! Pro

1 Dec 21, 2021
An application for automation of the mining function in the game Alienworlds.IO

alienautomation A Python script made to automate the tidious job of mining on AlienWorlds This script: Automatically opens the browser Automatically l

anonieXdev 42 Dec 03, 2022
A basic layout of atm working of my local database

Software for working Banking service 😄 This project was developed for Banking service. mysql server is required To have mysql server on your system u

satya 1 Oct 21, 2021
Biohacking con Python honeycon21

biohacking-honeycon21 This repository includes the slides of the public presentation 'Biohacking con Python' in the Hack&Beers of HoneyCON21 (PPTX and

3 Nov 13, 2021
Test for using pyIIIFpres for rara magnetica project

raramagnetica_pyIIIFpres Test for using pyIIIFpres for rara magnetica project. This test show how to use pyIIIFpres for creating mannifest compliant t

Giacomo Marchioro 1 Dec 03, 2021
My qtile config with a fresh-looking bar and pywal support

QtileConfig My qtile config with a fresh-looking bar and pywal support. Note: This is my first rice and first github repo. Please excuse my poor codin

Eden 4 Nov 10, 2021
dynamically create __slots__ objects with less code

slots_factory Factory functions and decorators for creating slot objects Slots are a python construct that allows users to create an object that doesn

Michael Green 2 Sep 07, 2021
Мой первый калькулятор!!!!!!

my_first_calculator Первый калькулятор созданный мною на питоне Версия калькулятора: 0.0.4 Как скачать? TERMUX Для скрипта нужен питон, скачиваем pkg

Lesha Russkiyov 2 Dec 29, 2021
Todo-backend - Todo backend with python

Todo-backend - Todo backend with python

Julio C. Diaz 1 Jan 07, 2022
Make dbt docs and Apache Superset talk to one another

dbt-superset-lineage Make dbt docs and Apache Superset talk to one another Why do I need something like this? Odds are rather high that you use dbt to

Slido 81 Jan 06, 2023
A calculator to test numbers against the collatz conjecture

The Collatz Calculator This is an algorithm custom built by Kyle Dickey, used to test numbers against the simple rules of the Collatz Conjecture.

Kyle Dickey 2 Jun 14, 2022
Simple Denial of Service Program yang di bikin menggunakan bahasa pemograman Python,

Peringatan Tujuan kami share code Indo-DoS hanya untuk bertujuan edukasi / pembelajaran! Dilarang memperjual belikan source ini / memperjual-belikan s

SonLyte 8 Nov 07, 2021
Este script añade la config de s4vitar a bspwm automaticamente!

Se ha testeado este script en ParrotOS, Kali y Ubuntu. Funciona para todos los sistemas operativos basados en Debian. Instalación git clone https://gi

yorkox 201 Dec 30, 2022
Async timeit - Async version of python's timeit

Async Timeit Replica of default python timeit module with small changes to allow

Raghava G Dhanya 3 Apr 13, 2022