Factorsynth is an experimental tool for sound modification and cross-synthesis based on matrix factorization. The input sounds are decomposed into a set of spectra and a set of temporal functions, which can be then recombined in several ways to obtain the output sound.

It can be understood as a spectral editing tool in which the elements to be manipulated are of a relatively high abstraction level, compared to analysis/resynthesis systems based on manipulating individual time-frequency bins, such as those based on the spectrogram or phase vocoder. In Factorsynth, the elements to be manipulated can be, for instance, entire musical notes, attack portions, inharmonic structures, impulsive events ...

Two usage modes are possible: modification of a single sound, and cross-synthesis of two sounds. In the first scenario, the temporal functions and spectral components of a sound can be freely manipulated and recombined so that a new sound is created with a similar structure but different timbre. It can also be used for remixing elements of the input sound, or for simple source separation tasks.

In cross-synthesis, temporal elements of one sound can be combined with spectral elements of the other.

Factorsynth is currently implemented as a project for the Max 7 platform and distributed as freeware (previous versions are available as command-line executables). It is still an unstable prototype, so feedback and suggestions are more than welcome!

Sound examples
Timbre randomization
Scrambling of all temporal/spectral pairs, except noisy ones.
input: output:
Fully random scramble.
input: output:
Random cross-synthesis, example 1.
input 1: input 2: 1->2 x-synth:
Random cross-synthesis, example 2.
input 1: input 2: 1->2 x-synth: 2->1 x-synth:
Random cross-synthesis, example 3: cross-synthesis and scramble of sound 2
input 1: input 2: 1->2 x-synth: 1->2 x-syn. + scr.:
Manual remix.
input: output:
Random remix.
input: mix 1:
Source separation
Drums isolation.
input: output:
Factorsynth is currently available as a Max project (developed and tested in Max 7), distributed as freeware for non-commercial use under the Creative Commons BY-NC-ND license, version 4.0 (International). Max by Cycling '74 has to be installed.

Current Max version (Mac OS):
v0.4 3/3/2017

Old Max versions (Mac OS):
v0.3 30/8/2016

Old versions (Mac OS command-line executables):
v0.22 7/6/2016
v0.21 31/5/2016
v0.2 19/5/2015
v0.1 30/8/2014

J.J. Burred, Factorsynth: a Max tool for sound analysis and resynthesis based on matrix factorization
Sound and Music Computing Conference (SMC), Hamburg, Germany, August 2016

J.J. Burred, A Framework for Music Analysis/Resynthesis Based on Matrix Factorization
International Computer Music Conference (ICMC), Athens, Greece, September 2014

J.J. Burred, Cross-Synthesis Based on Spectrogram Factorization
Proc. International Computer Music Conference (ICMC), Perth, Australia, August 2013
For feedback and bug reports, please contact the author.

To be notified about new releases, send an email with the subject "subscribe" to