Maker tech hub — AI · 3D print · Pi · ESP32 · plus the classic tech archive.

Free ESP32 kit · Books · Network Ninja · Archive

Classic tech archive. From the original averyjparker.com tech blog — historical context; pair with modern guides where noted. Full archive · Maker projects · Network Ninja

Classic tip · Classic

Cutting Short, splitting or truncating mp3 files...

from the command line in linux... or generating them from Wavs.... So, I've got this CD that I've made and is up for sale at lulu.com traditional hymns done as "chimes". I've spent quite a bit of tim…

Written by

Avery J. Parker

IT veteran, maker educator, and author of Network Ninja, 3D Printing Mastery, and AI Workflow Mastery. Business IT: Diversified Tech Solutions.

from the command line in linux... or generating them from Wavs.... So, I've got this CD that I've made and is up for sale at lulu.com traditional hymns done as "chimes". I've spent quite a bit of time recording to hard drive, editing and getting the wav files as good as possible and I've uploaded them, but I also want to make the individual songs available as mp3 downloads too. AND I want to give a preview, either a low quality mp3 of the whole, or a high quality 30 second clip.... Hmmm... how to do it.


First of lame is the tool for the wav -> mp3 conversion.... My "scripts" look like this....

mp3_high

#!/bin/bash

lame $1.wav $1_256.mp3 -b 256 -h

mp3_low

#!/bin/bash

lame $1.wav $1_32.mp3 -b 32

Ok.... but cutting them short, needs another tool mp3splt (no I didn't mis-spell that...) a simple urpmi mp3splt solves the install....

Now, my next script looks like this....

mp3_truncate

#!/bin/bash

mp3splt $1 0.00 0.30

That essentially will make an mp3 using the first 30 seconds of the filename passed to it. But... I wanted something to glue them all together....

mp3_generate

#!/bin/bash

/home/user/scripts/mp3_high $1

/home/user/scripts/mp3_low $1

/home/user/scripts/mp3_truncate $1_256.mp3

OK.... but now, I've got a whole directory of wav files.... hmmm

ls *wav gives the full filename, I'll have to get rid of the wav, or my mp3's will be named something.wav.mp3..

mp3_batch

#!/bin/bash

for i in `ls *wav | sed 's/.wav//'`

do

`/home/user/scripts/mp3_generate $i`

done

and just call it from the directory that you have your wav files in.

Now, I know, I could probably spend the next three days looking for a GUI based program that can do batch operations, the gui for mp3splt might, but.... now I don't have to look. That's been the easiest part of the whole process.