What is a good free library for editing MP3s/FLACs.

By editing I mean:

  • Cutting audio file into multiple parts
  • Joining multiple audio files together
  • Increase playback speed of file without affecting the pitch (eg. podcasts up to 1.3x)
  • Re-encoding audio file from Flac -> MP3 or vice versa

I don't mean software, I mean a library that I can use within another application. Programming language agnostic.

+1  A: 

I use Audacity for all my editing needs

Audacity is a free, easy-to-use audio editor and recorder for Windows, Mac OS X, GNU/Linux and other operating systems. You can use Audacity to:

* Record live audio.
* Convert tapes and records into digital recordings or CDs.
* Edit Ogg Vorbis, MP3, WAV or AIFF sound files.
* Cut, copy, splice or mix sounds together.
* Change the speed or pitch of a recording.
Christian Hagelid
+1  A: 

Audacity uses the Lame library, however not only is this not language agnostic it also has some questions over licensing. Nevertheless it might be a start

David Sykes
+5  A: 

Just about every language has bindings to C, so you'll probably want to get the applicable C libraries for encoding/decoding mp3's and FLAC files. This list might include

libFLAC FLAC encoding/decoding
LAME MP3 encoding
MAD MP3 decoding

The rest of your signal processing needs could be gathered around a single popular API such as LADSPA

Here's a stretching / pitch shifting library:

Most audio processing programs have a certain internal format they use. That keeps things simple. Everything coming in gets converted to the same format. Once you've standardized the internal format, cutting and splicing audio data is about as difficult as cutting and splicing strings. You don't really need a library for that.


Another question has been posed that also touches upon what I was after. crop-mp3-to-first-30-seconds

Scott Bennett-McLeish

@steveth45: Are there any good, pre-existing .NET wrappers around any of the above? Of course one could write their own but I thought I'd ask before re-inventing the wheel.