Batch conversion of samples os x

First , what software would people recommend for batch conversion of samples to 48khz 16bit mono , on OS X?

Second, what order should I do this process? I’m guessing stereo>mono, then sample rate>48khz, then bit rate? And when should I dither, if thats necessary?

Thanks

I have wavelab elements, quit cheap and useful for other things as well as batch processing. If you look about the forum , you will find that there is a recent (today) topic about this on the forum already that is quite informative.

If you are using anything other than 16 bit samples, dither before the process of converting to 16 bit.

You can leave out the dither step if already using 16 bit samples.

batch things are most flexible with a CLI.
it’s easy on Mac:

  1. install homebrew:
    http://brew.sh/

  2. using homebrew, install ffmpeg:

$ brew install ffmpeg
  1. use ffmpeg to batch convert:
$ cd ~/path/to/your/original/files/
$ mkdir mono
$ for i in *.wav; do ffmpeg -i $i -ar 48k -acodec pcm_s16le -ac 1 ./mono/mono-$(basename $i); done

— OR —
without brew/ffmpeg, use afconvert (built in OSX tool, uses CoreAudio frameworks):

$ cd ~/path/to/your/original/files/
$ mkdir mono
$ for i in *.wav; do afconvert -d LEI16 -c 1 --mix $i ./mono/mono-$(basename $i); done
2 Likes

Nice codey stuff. Does this method also dither? Does dithering even matter?

I like the brew method, never seen that before, I typically use SoX. Free (open source?) library that is extremely accurate. On PC I run batch scripts similar to the ones posted above but on OSX there is a handy app called SoX Wrap which handles batch processing. The same libraries are used for Audacity’s SRC I believe. I swarn by them for several years as I am highly pedantic and have convinced myself my reverb and dynamic plug ins process material better in 88.2khz and Ableton’s export SRC was terrible for a very long time.

If you would prefer a more familiar environment than scripts etc. Reaper also handles batch conversion and wont sabotage anything SRC wise.

Little bonus tip, I tend to audition the left and right channels of samples (especially breaks) to see if the sound i want is particularly clear on one channel. That way if you just select that channel rather than sum L&R to Mono you can avoid potential phase issues. Then again sometimes those phase isssues can sound nice, just my 2 pennies.

1 Like

One thing with this method is it doesn’t handle spaces in filenames very well. You can replace them with this command:
for f in *\ *; do mv “$f” “${f// /_}”; done

That will replace any spaces with an _

2 Likes

Try this it worked for me:
https://public.msli.com/lcs/audiomove/

Does anyone know…If I import 16-bit 44.1 khz samples. Does that mean the Rytm will still convert the files to 48 khz?

I would also like to know this

Rytm will internally convert to 48kHz.
You can throw lower samplerate/bitdepth files at it no problem.
The afconvert thing I posted above does not do samplerate conversion I think. Try this if you want to batch convert to 48kHz/16bit wav:

$ cd ~/path/to/your/original/files/ $ mkdir mono $ for i in *.wav; do afconvert -d LEI16@48000 -c 1 --mix $i ./mono/mono-$(basename $i); done

1 Like