Skip to content

Zmix - shuffle random generator for audio files for bash and python, generates random outputs from input WAV file

Notifications You must be signed in to change notification settings

maranemil/zmix_shuffle_generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

76 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zmix_shuffle_generator

Zmix - shuffle generator for audio files for bash and python

Logic

Editor Screen

  • Zmix Bash - (wav spliter 1 second interval + random joiner)
  • Zmix Python - (wav spliter 1 second interval + random joiner)
  • Zmix Experiments 1 - (AudioSegment random joiner + reverse)
  • Zmix Experiments 2 - (AudioSegment random joiner + AudioEffectsChain fx reverb phaser )
  • Zmix Experiments 3 - (AudioSegment random joiner + AudioEffectsChain fx reverb phaser octave)
  • Zmix Experiments 4 - (AudioSegment random joiner + AudioEffectsChain octave + SoundStretch aka Paulstretcher )

Installation and Requirements

mkdir ~/Git && cd ~/Git
sudo apt install git -y
git clone https://github.com/maranemil/zmix_shuffle_generator
cd zmix_shuffle_generator/

sudo apt install ffmpeg -y
sudo apt install python3-pip -y
sudo apt install sox  -y

pip3 install pydub
pip3 install pysndfx
pip3 install librosa
pip3 install soundstretch numpy scipy

// after update to Ubuntu 20.04
https://librosa.github.io/librosa/install.html
https://pypi.org/project/pysndfx/

sudo apt-get install python3-pip -y
pip3 install librosa
pip3 install pydub
pip3 install pysndfx
pip3 install soundstretch

pip3 install numba==0.43.0
pip3 install llvmlite==0.32.1
pip3 install colorama==0.3.9

fix for pytho3.8 , Successfully installed llvmlite-0.31.0 numba-0.48.0

pip3 install numba==0.48
#pip3 install numba==0.50.0
#pip3 install librosa==0.7.2


https://pypi.org/project/colorama/


Quick Installation in Docker

# create container 
docker run -it --rm -v ./src:/app ubuntu:23.04 /bin/bash;

# install packages in container
apt update && apt install wget git nano curl -y
apt install ffmpeg python3-pip sox rubberband-lv2 rubberband-cli  -y

# clone git repo
cd app 
git clone https://github.com/maranemil/zmix_shuffle_generator.git

chmod -R 777 .
cd /app/zmix_shuffle_generator/bash/app

# mix
bash zmix.sh -i load/out.wav -d yes -t *
bash zmix_pitch.sh -i load/out.wav -d yes -t *

Usage Example Screenshot

Python

[Editor Screen]

Usage Options for Python

python zmix.py --input load/input.wav --clean true --reverse true

options description
--input specify input file
--clean true delete old generated temp files
--reverse true apply reverse fx

Bash

[Editor Screen]

Usage Options for Bash

bash zmix.sh -i load/input.wav -d yes -t *

options description
-h yes - help
-i file.wav - specify input file
-d yes - delete old generated temp files
-t * - chose setup for split:

Setups ffmpeg filters

option description
1 volume=3dB
2 volume=3dB, equalizer=f=440:width_type=o:width=2:g=-5,areverse
3 volume=3dB,equalizer=f=40:width_type=o:width=2:g=-7,areverse
4 volume=3dB,equalizer=f=540:width_type=o:width=2:g=-9,areverse
"*" default

Examples - Youtube Videos

Zmix - shuffle output bash Zmix - shuffle output python Zmix - shuffle output python experiment 1 Zmix - shuffle output python experiment 2 Zmix - shuffle output python experiment 4 Zmix - shuffle output python experiment 3

Markup references:

Diagrams

About

Zmix - shuffle random generator for audio files for bash and python, generates random outputs from input WAV file

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published