How do you join multiple MP3 files into one? "cat" and "mp3wrap" are no good as they produce non standard MP3 files. I know I can use audacity, but when you have 1000's of MP3 files to join into one, it takes too long.
Use ffmpeg or a similar tool to convert all of your MP3s into a consistent format, e.g.
ffmpeg -i originalA.mp3 -f mp3 -ab 128kb -ar 44100 -ac 2 intermediateA.mp3
ffmpeg -i originalB.mp3 -f mp3 -ab 128kb -ar 44100 -ac 2 intermediateB.mp3
Then, at runtime, concat your files together:
cat intermediateA.mp3 intermediateB.mp3 > output.mp3
Finally, run them through the tool MP3Val to fix any stream errors without forcing a full re-encode:
mp3val output.mp3 -f -nb
First, create a file called inputs.txt with lines like
file '/path/to/input1.mp3' file '/path/to/input2.mp3' file '/path/to/input3.mp3'
...etc. Then, run the following ffmpeg command:
ffmpeg -f concat -i inputs.txt -c copy output.mp3
It's possible to generate inputs.txt easily with a bash for loop (this can probably be done with a Windows batch for loop too), assuming you want to merge the files in alphabetical order. This will match every *.mp3 in the working directory, but it can be easily modified:
for f in ./*.mp3; do echo "file '$f'" >> inputs.txt; done ## Alternatively printf "file '%s'\n" ./*.mp3 >> inputs.txt
It's also possible to do the entire thing in one line, avoiding the creation of an intermediate list file with process substitution:
ffmpeg -f concat -i <(printf "file '%s'\n" ./*.mp3) -c copy output.mp3
Freemake Audio Converter is great:
Converts and/or joins audio files.
After downloading and installing Freemake (be careful not to install Ad-Aware Web Companion, TuneUp Utilities, Opera, or set Yahoo! as your homepage), launch the program. Click the +Audio button at the top left of the window, and select the files you want to merge/convert.
Click the Join files "switch" at the top right of the window.
Select the audio type you want (probably FLAC for lossless)
It will let you customize your audio settings and output folder. Once you're ready click convert.
Goldwave has some batch processing capabilities, though it's shareware, not freeware.
You can use the free mp3cat:
mp3cat indir - > outfile.mp3