How do I convert music between formats and keep its metadata?

I tried to use Sound Converter to convert several folders of files from .m4a to .mp3 format and lost all file metadata in the conversion. I used Ubuntu 10.04 LTS with Sound Converter 1.4.4-2.

Is this expected? Should I be using another program to perform this function on Ubuntu?


Solution 1:

I tested soundconverter 1.4.4-2 using maverick and a sample Apple lossless in the .m4a container from here: http://samples.mplayerhq.hu/A-codecs/lossless/, the metadata is preserved after conversion to .mp3, I verified this with the Banshee media player,Totem and Rhythmbox, I even made copies of the file and tried a batch conversion and all files converted to .mp3 has the original metadata, I converted a .flac lossless to .mp4 also and again the metadata in the .flac was carried over to the .mp4 file, even the cover art from the flac file was there, I then converted the .mp4 audio file to .mp3 and the metadata was still there, I also used Easytag-aac to embed a cover art in the .m4a file and after conversion I was able to see the cover art in the .mp3 file when playing with Banshee.

From my experience here I would say that the loss of metadata after conversion with soundconverter should not be the expected outcome. Even this dated thread http://ubuntuforums.org/showthread.php?t=138419&page=3 from the Ubuntu forum shows that soundconverter is supposed to retain the tags in the output format.

Solution 2:

I've not used SoX but at last check it did deserve the appellation "the Swiss Army knife of sound processing programs".

It can be found in package sox.

Solution 3:

This is an old problem but it still exists, at least on Ubuntu 18.04 with SoundConverter 3.0. Unfortunately SoundConverter doesn't include all the necessary dependencies to convert the id3 information from flac files.

sudo apt install gstreamer1.0-plugins-bad-dbg gir1.2-gst-plugins-bad-1.0 gstreamer1.0-plugins-bad-doc

solved the problem for me. The above is no doubt overkill but I couldn't be bothered to isolate exactly which package installed the "id3mux" gstreamer element. More details can be found in this bug report. FWIW, I think a similar problem exists with AAC conversion and the "faac" gstreamer element also requires manual installation.