https://github.com/coderofsalvation/soxmasterhouse
automatically mastering of audio using sox/ladspa/vst
https://github.com/coderofsalvation/soxmasterhouse
Last synced: about 1 year ago
JSON representation
automatically mastering of audio using sox/ladspa/vst
- Host: GitHub
- URL: https://github.com/coderofsalvation/soxmasterhouse
- Owner: coderofsalvation
- License: agpl-3.0
- Created: 2013-11-24T18:06:28.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2020-05-28T19:25:43.000Z (about 6 years ago)
- Last Synced: 2025-03-26T14:21:41.958Z (over 1 year ago)
- Language: Shell
- Size: 17.6 KB
- Stars: 11
- Watchers: 3
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
soxmasterhouse
==============
automatically mastering of audio using sox/ladspa/vst
### Why ###
I wanted to automate post-processing of music, specifically concerning
M/S processing.
### Howto ###
git clone https://github.com/coderofsalvation/soxmasterhouse.git
cd soxmasterhouse
./soxmasterhouse init mymasteringpreset
./soxmasterhouse process myfile.wav mymasteringpreset
Or do this to have audiopreviews between every stage
SLEEP=1 PPRE=2 PMID=4 PSIDE=4 PPOST=5 ./soxmasterhouse process myfile.wav mymasteringpreset "00:00:01.00 00:04:01.00"
The above command will process the mid/side audio using my preset, and at every step (preprocessing,midprocessing,sideprocessing,postprocessing) it will preview (n seconds) the result to me (with 1 second of sleep in between the previewing).
This will allow me to fire up my editor (audacity/wavosaur) to analyze/edit the mid- or side-file before merging them together:
MANUAL=1 ./soxmasterhouse process myfile.wav mymasteringpreset "00:00:01.00 00:04:01.00"
### What does a preset look like ###
Well thats up to you, you can go crazy with sox (Which supports ladspa) or MrsWatson/Misswatson for VST. however, this is your starting point after initing a preset:
#
# bashmasterhouse configuration file
#
process_pre(){
input="$1"; output="$2"; echo "preprocessing"
# aplay "$input" -d 2s # uncomment this to preview the dry signal
}
process_mid(){
input="$1"; output="$2"; echo "processing mid of M/S"
# aplay "$input" -d 2s # uncomment this to preview the dry signal
}
process_side(){
input="$1"; output="$2"; echo "processing side of M/S"
# aplay "$input" -d 2s # uncomment this to preview the dry signal
}
process_post(){
input="$1"; output="$2"; echo "post processing "
# aplay "$input" -d 2s # uncomment this to preview the dry signal
}
### Examples
For a more concrete example see the 'myexample'-dir, or replace the 'process'-file with these ones:
* [mid/side limiter + reverb on side](https://gist.github.com/coderofsalvation/fdc5f055cd140d30f564)
* [electribe L+R normalizer + TAP scaling limiter ladspa + reverb on sides](https://gist.github.com/coderofsalvation/3b69ec0c97bd30a7f0e3)
* [fft maximizer](https://gist.github.com/coderofsalvation/24721097737d6da5259d) (beta)
### Requirements ###
* linux
* bash
* sox utilities