[HOW TO] Migrate your iTunes library to Linux


Recommended Posts

Ok so you've encoded you're ENTIRE iTunes library in Apple's ACC, like me :). But now you want to play those files on you're new Linux box. Problem is .m4a support is sketchy, at least for me it was. I could get the files to play with KPlayer but not with XMMS or amarok, amarok being what I really wanted to use. So I decided I'd just convert them instead of re-encoding them from the discs.

WARNING!!: THE FOLLOWING SCRIPT CONVERTS .M4A'S TO .MP3'S. THE PROCESS CONVERTS .M4A'S TO .WAV'S FIRST, WHICH ARE QUITE LARGE(~400MB), SO BE SURE TO HAVE SOME EXTRA SPACE ON YOUR HARD DRIVE SO THE SCRIPT CAN COMPLETE. THE ORIGINAL FILES AS WELL AS THE .WAVS ARE DELETED AT THE END OF THE SCRIPT. IF YOU DON'T WANT THIS TO HAPPEN REMOVE THE APPROPRIATE LINES FROM THE BOTTOM. YOU HAVE BEEN WARNED!!!

WARNING!!: THE FOLLOWING CONVERSION PROCESS STRIPS THE FILES OF ANY META-DATA(i.e Artists,Albums) ASSOCIATED WITH THEM. YOU WILL HAVE TO RE-APPLY THE META-DATA WITH SOME OTHER APP. YOU HAVE BEEN WARNED!!

NOTE: This HOWTO assumes you have mplayer and lame installed.

1. First of of all make a file for the conversion script and call it whatever you please. Copy the following into that file. I named my allinone.sh


#!/bin/bash
#
# Dump m4a to wav (first step in conversion)

for i in *.m4a
do
mplayer -ao pcm "$i" -aofile "$i.wav"
done

#!/bin/bash
#
#Second step... use lame to convert into .mp3

for i in *.wav
do
lame -h -b 192 "$i" "$i.mp3"
done

#!/bin/bash
#
# Remove extrenuous extensions.

for i in *.mp3
do
x=`echo "$i"|sed -e 's/m4a.wav.mp3/mp3/'`
mv "$i" "$x"
done

rm *.wav
rm *.m4a

2. Now give the file execution access with chmod +x allinone.sh

3.Next get your .m4a files you want to convert organized. Mine are still in the directory structure that iTunes has, Artists as root directories with Albums as subdirectories. Or maybe you have all your music in one folder :). Whaterever your case may be cd to the directory that has the files that you want to convert. I recommend doing an album at a time because once an album is done thats when I re-apply my meta-data. Plus doing 1000 songs at once would take forever, not to mention the space taken up by the .wav files.

albert@albert-linux ~/albert-drive/music/metallica/black album $ ls
01 enter sandman.m4a     05 wherever i may roam.m4a   09 of wolf and man.m4a
02 sad but true.m4a      06 don't tread on me.m4a     10 the god that failed.m4a
03 holier than thou.m4a  07 through the never.m4a     11 my friend of misery.m4a
04 the unforgiven.m4a    08 nothing else matters.m4a  12 the struggle within.m4a

4. Run the script from the location you saved it with ./allinone.sh

5. Depending on the size/number of files in the directory you run the script on it may take some time to complete. But the result is .mp3's from .m4a's!!

6. Re-apply meta-data if you wish....rinse/repeate/enjoy

Is there ANY way possible to have it delete the m4a file after each conversion, I say this because I tried this script earlier from linuxquestions.org (or a very similar script), and my hdd was filled up in no time.

Thanks.

edit: maybe i SHOULD just do one album at a time, but I have 3600 songs to convert from m4a :cry: :cry: :cry:

A little bit of judicious editing of the above script should suffice?

#!/bin/bash
#
# Dump m4a to wav (first step in conversion)

for i in *.m4a
do
	mplayer -ao pcm "$i" -aofile "$i.wav"
	rm "$i"
done

#!/bin/bash
#
#Second step... use lame to convert into .mp3

for i in *.wav
do
	lame -h -b 192 "$i" "$i.mp3"
	rm $i
done

#!/bin/bash
#
# Remove extrenuous extensions.

for i in *.mp3
do
	x=`echo "$i"|sed -e 's/m4a.wav.mp3/mp3/'`
	mv "$i" "$x"
done

A side note, I recommed easytag for reapplying tags and changing file names. The interface and the options may seem overwelming at first but just give it a chance. Its a really robust program that allows you to modify a large number of files at once. It also can connect to CDDB to look up tags.

A side note, I recommed easytag for reapplying tags and changing file names. The interface and the options may seem overwelming at first but just give it a chance. Its a really robust program that allows you to modify a large number of files at once. It also can connect to CDDB to look up tags.

586268480[/snapback]

I installed it yesterday just for changing all my id3 tags, very cool program. :D

I installed it yesterday just for changing all my id3 tags, very cool program.  :D

586268738[/snapback]

Yes it is. Though it took me at least 30-45 minutes to figure out how to use it :). Before that I was ready to rip out my hair getting it to do what I wanted. But once I figured it out it made the conversion process move quite quickly.

  • 4 weeks later...
  • 1 month later...
  • 3 weeks later...
  • 2 months later...
  • 4 weeks later...

This is possibly the worst solution for this problem. It's time consuming, lowers the quality of your music files (transcoding of any type will always lower the quality), and it's completely unneccessary. I've been playing aac files in linux (using xmms) for years now (i.e. pre iTunes) using faad2 and libmp4. They are easily obtained in many distributions using the package management tools - whether it be rpm or deb based (I don't know if other packaging systems have them available). Other sources such as the rarewares website or the penguin liberation front (plf) may be of use.

Of course, nothing in this post (or parent's) addreses DRM'ed music bought from the iTunes store.

  • 1 month later...

iTunes in Wine/Crossover Office is very slow, I wouldn't recommend it.

Does anyone know a program that can organize the music library the way iTunes does in Linux?

I find JUK to be very much like itunes, and Amarok similar to Musicmatch.

I find JUK to be very much like itunes, and Amarok similar to Musicmatch.

GTKPod has all of those beat, hands down. heck, if you even use the .99.x builds.. it even has video support to sync up with your ipod video.

and its rock solid. ..suprisingly. lol.

  • 4 weeks later...

I had this problem recently and went through various converters trying to convert from m4a to mp3, until I found the perfect one, which also keeps all tags right.

http://www.dbpoweramp.com/

It's a freeware. You need to download it, then install the mp3 codec or plugin whatever it is. I converted about 2000 m4a's using this.

Honestly, i wouldn't convert AAC files to MP3, you loose quality.

there is nothing wrong with AAC files, they are better quality than MP3 files are (designed to replace MP3), and they are also a open specification (AAC is MPEG-2 Part 7 and the newer version is MPEG-4 Part 3), same as MP3 (MPEG-1 Audio Layer 3), so it's not like they are a closed spec controlled by one company.

  • 1 year later...

dbpoweramp is definitely a great program. I've used it before to do some big conversions. The only problem is that it's Windows only. For future reference, if you don't have a Windows box available, I wrote a little program to convert M4A files to MP3 files, keeping the artist, album, song name and track number tags. It's available here.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Wow, imagine you dump hundreds of hours into completing things and unlocking stuff and you lose it all. Back in the day when cheats were built into games, you could at least unlock things again that way without spending hundreds of hours again. But those days are long gone for some reason as no one builds cheats into games anymore. So it's even more painful that studio that's on its 6th installment **** it up so badly.
    • Spotify finally removes the disco ball app icon in the latest update by Ivan Jenic Image: Spotify Spotify has just released an update that removes its now infamous disco ball icon. The update reverts the app icon to the familiar flat green logo after weeks of mixed reactions online. The icon arrived on May 13 as part of the company's 20th anniversary celebration and was always intended to be temporary, though Spotify only confirmed that after the backlash started. The disco ball took the internet by storm, as the reception was split. A vocal group of users called it ugly and disorienting, with some iOS users noting that the 3D glowing effect made the app look like it was stuck mid-update. On the other end, the icon picked up a following of its own. Its retro, three-dimensional look immediately stood out against the flat, minimalist aesthetic that has dominated app design for years. It even started a small movement, spawning what people started calling "discomorphism," a mashup of disco and skeuomorphism. Other brands started posting disco ball versions of their own logos, probably in an effort to ride the wave of memes that flooded the internet during late May. Spotify has had a turbulent relationship with its user base lately. Besides the disco ball icon, which certainly wasn't appreciated by everyone, the company has also received backlash for its willingness to include AI-generated music on its platform. On May 17, Spotify promised the old icon would return “in a few weeks.” And now it looks like that time has finally arrived. So, whether you liked the disco ball or it made you uncomfortable, it’s now gone for good. The next time you update the Spotify app on your phone, the old, flat-design icon will return.
  • Recent Achievements

    • One Year In
      slackerzz earned a badge
      One Year In
    • One Year In
      highriskpaym earned a badge
      One Year In
    • One Month Later
      highriskpaym earned a badge
      One Month Later
    • Week One Done
      highriskpaym earned a badge
      Week One Done
    • Week One Done
      FBSPL earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      519
    2. 2
      PsYcHoKiLLa
      197
    3. 3
      +Edouard
      157
    4. 4
      Steven P.
      84
    5. 5
      ATLien_0
      75
  • Tell a friend

    Love Neowin? Tell a friend!