DS Image

Audialab - EDM Elements 2024

Introduction

This model specializes in generating high quality key-locked and tempo synced samples to support granular music production workflows. It features high musicality, robust Audio-to-Audio capabilities and is capable of generating several effects with each sample. The model can generate an infinite variety of musical components with a specialization in supersaw chord progressions, top line melody leads, bell plucks, and bass pluck riffs. All output is BPM-synced and key-locked to any note within the 12-tone chromatic scale, in both major and minor keys. Developed over several weeks, this model was trained on a custom internal dataset and features several distinct sound types:
Sound Description Audio
1. Sine / Bell Plucks
2. Lead Square Legato Synth
3. Lead Square Warm Synth
4. Bass Plucks
5. Supersaw Leads & Chord Progressions

Furthermore, the model is capable of generating multiple post-processing effects, with several different levels of control based on the prompt alone. All effects can be prompted individually or together.

  • 1. Reverb - Small Reverb, Medium Reverb, High Reverb
  • 2. EQ Sweeps - Rising Low-Pass, Falling High-Cut
  • 3. Gate Effect - Quarter-Beat gate, Half-Beat Gate

The model has high Audio-To-Audio / Style Transfer capabilities. For example you can upload a .wav sample and have the model turn the sample into say a Supersaw version with a rising low-pass.

Prompt Settings Before After
Supersaw, high reverb, rising low-pass CFG: 10.0 / Noise: 1.29

Model Features

  • Multiple Types of Sample Generation: - Outputs multiple types of high quality EDM-Centric samples with several variations on melody and chord progressions.
  • Dynamic FX Chain: - Add multiple effects based on prompt alone (prompts above) - i.e add "Medium Reverb" for a medium reverb effect on the output.
  • Tonal Versatility: - Generates stems in any key across the 12-tone chromatic scale, in both major and minor scales.
  • Triplet Time Signature Support: - Add "triplets" to any prompt and get triplet outputs.
  • AI Style Trasnfer / Audio to Audio: - The model has robust AI Style Transfer capabilities.
  • Speed Controls Independent of BPM: - The model can be prompted with "Slow Speed", "Medium Speed" & "Fast Speed" that is independent of BPM. i.e. ask for an arp at a "Fast speed" at 140BPM vs "slow speed" at 140BPM and the model will subdivide the notes accordingly while staying within the same bpm.
  • Simplified Scale Notation: - Scales are written using sharps only in the following format:
Minor Scales
A minor, A# minor, B minor, C minor, C# minor, D minor, D# minor,
E minor, F minor, F# minor, G minor, G# minor

Major Scales
A major, A# major, B major, C major, C# major, D major, D# major,
E major, F major, F# major, G major, G# major

Training Methodology

This model was designed to understand and generate several types of samples:

  1. Chord Progression Samples
  2. Chord Progression with Melody Samples
  3. Melody Only Samples
  4. Supersaw Dance Chord Progressions
  5. Bass Plucks / Riffs
  6. Arps

By exposing the model to various musical motifs and distinct sample differences, it has SOTA musicality and melody structure with output samples ready to use in music production.

Prompt Structure

Both the Audialab Engine (VST) and RC Github fork are best used when working with this model. The RC Github also features a randomized prompt button tuned to this models metadata.

If you wish to prompt outside of these interfaces - then to ensure the best results use the following format for your prompts:


[Sound Type], [Modifier][Chord Progression], [Modifier][Melody Type], [Key], [FX], [BPM], [Bar Count]

[Sound Type Prompts]

  • 1. Bell Plucks: - 'Pluck, Sine, Bright, Clean, Bell'
  • 2. Lead Square Legato Synth - 'Lead, Square, Synth, Buzzy, Legato'
  • 3. Lead Square Warm Synth - 'Lead, Saw, Synth, Warm, Supersaw'
  • 4. Pluck Bass - 'Bass, Punchy, Pluck, Clean, Sub, Sine'
  • 5. Supersaw Leads & Chord Progressions 'Supersaw, Synth, Warm, Saw'

Major prompt terms and their effects

  • Chord Progression - produces chord progressions
  • Arp - produces arps
  • Melody - adds melodies
  • Triplets - outputs triplet time
  • Bounce - more syncopassion/ off beat rhythm
  • Epic - encourages more interesting melodic output
  • Simple - slower / simpler melodies / chord progressions
  • Slow speed - slower chord progressions, arps and melodies
  • Medium speed - encouraged 4/4 chord changes or melodies
  • Fast speed - higher subdivisions / faster arps and melodies
  • Complex - adds complex melodies or chord structure.
  • Rising - encourages rising arps / melodies
  • Falling - encourages falling arps / melodies
  • See random prompt document for further terms / examples HERE

Prompt Examples with Audio

Prompt Example 1 Example 2 Example 3
Bell pluck, chord progression, top catchy melody, E major, high reverb, 8 bars, 100BPM
Saw, supersaw, chord progression, top melody, E minor, rising low-pass, 4 bars, 128BPM
Sine, Bass, Bounce, Catchy Melody, G minor, 8 bars, 110BPM
Sine, Bell, Pluck, chord progression with slow melody, B minor, high reverb, rising low-pass, 8 bars, 140BPM
Supersaw, dance chord progression, top triplet melody, F# minor, medium reverb, 8 bars, 130BPM
Synth, saw, fast speed, falling arp, medium reverb, falling high-cut, C major, 4 bars, 150 BPM
legato, square, catchy melody, high reverb, E minor, 8 bars, 130PM
supersaw, complex, epic, arp, D# minor, 8 bars, 140BPM

Audio to Audio / Style Transfer Showcase

Prompt Settings Before After
supersaw, medium reverb CFG: 9.0 / Noise: 1.16
Pluck Bell, Medium Reverb CFG: 8.2 / Noise: 1.21
Supersaw, high reverb, rising low-pass CFG: 10 / Noise: 1.29

Prompt Examples

You can find a handy list of starter prompts HERE

BPMs/Bars:

The BPMs ranged from as low as 100BPM up to 150BPM. The main denominations are 100BPM, 110BPM, 120BPM, 128BPM, 130BPM, 140BPM, 150BPM.

There are 2 bar settings: 4 bars and 8 bars.

Useage Guide

VST Support

This model has direct VST compatibility in Audialab Engine.

DS Image

Gradio Interfaces

You can find a direct link to a custom GitHub interface here.

If you wish to use the original Stable Audio Github then you can follow this link.

You will find 2 checkpoints files in the repo:
Audialab_EDM_Elements.ckpt - Full 32 bit model
and
Audialab_EDM_Elements_Small.ckpt - 16-bit low VRAM version
along with the associated config file - model_config.json

To use the model you would choose either the full model or the 16-bit quantized model. Once chosen place the .ckpt file and the config .json inside their own sub-folder in the "models" folder and launch the gradio.

Dataset Breakdown

Overview

  • Total .wav files: 606,976
  • Total Size: 58.03 GB (pre-encode)
  • Sample Rate: 44100 Hz

    Sample Breakdown

Sound Type Sample Count
Bell Pluck 100,553
Warm Supersaw 100,320
Square Lead 54,475
Square Buzzy Lead 54,845
Pluck Bass 54,732

Augment Breakdown

Augment Category File Count
Low Cut Rise w/ Half Gate 22,763
High Cut Faller w/ Half Gate 22,849
Reverb Augments 90,180
Gate Augments 30,045
High Cut Faller Quarter Bar Gate 22,703
Low Cut Rise w/ Quarter Gate 22,589
High Cut & Low Cut Augments 30,922

While the dataset appears quite large it featured heavy augmentation. For example a single melody could be stretched into multiple keys and multiple tempos with slight changes for variance. This means the training time must be carefully watched to ensure it doesn't overfit to specific melodic patterns.

Further the FX augments used the original stem but with only say a "high reverb" preset applied. This stretches the data further and lets the model hone in one this specific component of the sound (as it's seen both no-FX versions along with identical FX applied versions)

Technical Specifications

  • Platform: Runpod
  • Monitoring Tool: Weights and Biases
  • Total Steps: 33,436
  • Final Checkpoint Step: 28,452
  • Learning Rate: 5e-5
  • Dataset type: Pre-encode
  • Optimizer: AdamW
  • Scheduler: InverseLR
  • Batch Size: 32
  • Hardware: 2x NVIDIA A40 GPUs

See config file for further details.

Limitations and Biases

The model itself has very high musicality and can essentialy be used as an infinite sample + melody generator. A limitation however of the model is since it was created using our own dataset it is not set up for genre prompting and/or sound types outside of the ones mentioned above. i.e. A prompt like "House, Pad, Guitar" would not produce such samples.

In the future with scale - genre prompting and additional sound types can be released in future models.

Lastly as mentioned it has very robust audio-to-audio capabilities however the input audio should be within a similiar frequency space as the desired output. For example if you had a piano progression and wanted to change it to a supersaw then it will do very well. But if you put a bass sample as the input (which usually falls within the lower frequency spectrum) and ask for a supersaw version (which falls within the mid-to high frequency) then the model will struggle with the conversion. A workaround is to pitch the input sample up or down to get near to the desired output frequency range. i.e. if you wanted to AI style transfer a piano melody to a bass pluck then pitching the input piano sample down a few semitones and then converting to bass will have better results.

Additional details

  • Dataset: Internal IP + Tooling
  • Gate Module: Custom NumPy FX
  • Reverb Effect Solaris Reverb
  • EQ: Simple EQ Effect (riser/faller)

License

This model is licensed under the Stability AI Community License. It is available for non-commercial use or limited commercial use by entities with annual revenues below USD $1M. For revenues exceeding USD $1M, please refer to the LICENSE for detailed terms.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference API
Unable to determine this model's library. Check the docs .

Model tree for adlb/Audialab_EDM_Elements

Finetuned
(5)
this model