Skip to content

Various Jupyter notebooks for (mostly slicing based) audio processing.

Notifications You must be signed in to change notification settings

olaviinha/SloppyButchery

Repository files navigation

Sloppy Butchery

Sloppy Butchery is a collection of Colab notebooks for various audio processing tools.


Sloppy Butcher

Open In Colab

Sloppy Butcher is an audio power-chopper and randomizer. It takes a directory of audio files, chops it, shuffles it, and frankensteins it up into a single audio file according to your BPM, effects and other settings.

Audio demos

Source description Result
Random full length african choir-like songs. MP3
Random clips of Neurofunk tracks. WAV
Random full length songs. MP3
Random full length finnish pop songs. MP3

Autotune

Open In Colab

Autotune, surprisingly enough, autotunes audio files or directories of audio files to a) nearest note, b) a scale, c) another audio file or d) Chords Guru Turbo 100a Deluxe chord progression.

Audio demos

Source description Result
Original WAV
Autotuned flat C WAV
Autotuned to 1994 Nokia Tune WAV
Autotuned to a chord progression WAV

Sloppy Upsampler

Open In Colab

Restores audio quality of a low sample rate audio a tiny bit by traditional methods.

audioldm-demo.mp4

Stuttering Butcher

Open In Colab

Stuttering Butcher applies stutter edits and glitch on an audio file according to settings. Works by repeating N grains of odd zero-crossings of the audio signal — does not account for tempo, rhythmic patterns or "grid".

Audio demos

Original audio Stuttered Glitched
WAV WAV WAV

Poetic Butcher

Open In Colab

Poetic Butcher is a voice isolator and speech-to-words slicer. It isolates voice from audio source using Deezer Spleeter (convolutional neural network) and/or slices it to individual words according to settings using Mozilla Deepspeech (recurrent neural network).


Senior Butcher

Open In Colab

Senior Butcher is a beat-slicer that improves the beat tracking precision of audio analysis libraries such as Librosa, Essentia or Aubio, particularly for the purpose of beat slicing.

Audio demos (audio clip sliced by beat, shuffled, and put back together in random order)

Track Librosa Butcher, ours
Aphex Twin - Windowlicker MP3 MP3
Boards of Canada - Peacock Tail MP3 MP3
2Unlimited - No Limit MP3 MP3

Methodology for precision improvement

  1. Drum track extraction for timing: Stem track of drums is extracted from input audio by Deezer Spleeter (convolutional neural network) to be used as a timing track. Timing track is used for initial estimation of beat positions, i.e. input audio track (audiofile#1) is eventually sliced according to analysis performed on the timing track (audiofile#2).

  2. Duration refinements by lossy compression of beat interval distribution: After initial beat tracking is performed according to timing track, beat durations are calculated from beat position distribution. Significant duration range is constricted by finding the modal value of approximated beat intervals. Currently the minimum beat duration within the significant range is eventually used as new absolute beat duration, which may increase the track tempo by a fraction of a bpm. This is likely to be optimized in the future.

  3. Tail peak cluster shaving: Marginally prolonged beat duration outside the significant range is used for detection of high concentrations of peaks at the tail. These peak clusters are assumed subsequent beat beginnings. Should such peak cluster occur, beat start position is nudged backwards in time until the cluster at hand is positioned in the subsequent slice of a beat.


Audio Concat

Open In Colab

Audio Concat takes a directory of audio files and glues them together into one or more WAV files. This notebook was originally created to concatenate thousands of very short audio files produced by neural networks, and basically this notebook sparked the idea to create all the other notebooks in this repository.


Notebooks residing in other repositories

Sloppy Noto

Open In Colab

Sloppy Noto is a data audiolizer residing in it's own repository. It turns numeric data into audio by interpreting it as digital audio signal sample magnitudes.

AudioLDM

Open In Colab

AudioLDM is a neural text-to-audio tool. Think Stable Diffusion but for audio.

Tortoise TTS

Open In Colab

Tortoise TTS is a neural text-to-speech (audio) with one notable difference: you also give it an audio input of a voice, and it will produce audio with the given voice.

About

Various Jupyter notebooks for (mostly slicing based) audio processing.

Topics

Resources

Stars

Watchers

Forks