Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

mkrishnan

Moderator emeritus
Original poster
Jan 9, 2004
29,776
15
Grand Rapids, MI, USA
I'll come back and add more details to this guide, but since this issue is rarely discussed, a lot of what one finds by Googling on the net is of questionable validity, because it's usually for an out-of-date version of iTunes.

Here's my setup:

Source: iMac G5 / 2.0 (ALS), Tiger / 10.4.11, iTunes 8.01, with purchased content, iPhone apps, etc.

Destination: Eee Box B202, Windows XP / SP3, iTunes 8.01.

iPods: iPod nano (2nd gen), iPod (5th gen), iPhone (1st gen)

Steps (note, this guide assumes the Mac library totally replaces any music that was on the PC) below. Note, this method generally preserves play counts and other fields that iTunes sets, as well as your playlists.

1) Preparation.

- Make sure your iTunes collection will actually fit on your destination device.
- Make sure your library is consolidated via the Library -> Consolidate feature. - If you have songs that use non-Roman character sets, you may also need to make sure that in Windows, you have enabled these character sets via Control Panel -> Date, time, language -> Language settings -> check the two boxes for advanced character sets and East Asian characters. You can actually do this afterwards (oddly, the way Windows XP works, if you transfer these files over without checking these settings, the filenames will appear as a bunch of empty boxes, but when you enable these settings, you'll find that the original filenames were preserved).
- Sync all of your iPods / iPhones.

2) Transfer.

- There are a few major options for moving the files over. The least painful ones are if you have a device that can hold the entire library and can be formatted to be read in Windows, or to do it over your network. The only caveat I'd say about network transfers is that I don't know to what extent a SMB transfer will fully respect and preserve long file names, as path names for iTunes songs can get quite long on the Mac (I think Windows has some kind of overall path + filename length limitation). As you'll see, even with a disk-based transfer, this may still be a slight issue. I chose to use my iPod (5th Gen) because it was larger than my entire music library (I have videos, too, which would push it past the iPod's capacity; I didn't transfer these for now, and to be honest I never use them, so they're probably getting archived somewhere and forgotten at this point.

- Quit iTunes on the Mac.

- To prep the iPod for transfer, if you go this route, what you need to do is take it over to the Windows computer and plug it in. You will be told that it must be restored in order to be read by Windows, and then you'll be walked through this. Restore it and make sure it has disk use enabled and music is managed manually. Then bring it back over to the Mac, and close out iTunes again when it starts up. If you use another kind of drive, just make sure it's formatted in a mutual format such as FAT32 (but FAT32 can't handle any >4GB videos).

- Your music should all now be in the iTunes folder inside the Music folder in your home directory. Copy this entire folder onto the iPod. It might take quite a while, particularly since iPods use USB now. :rolleyes:

- When this is finished, take the iPod over to the WinXP box, plug it in, and quit iTunes when it comes up.

- Navigate to My Documents\My Music\ and delete the iTunes folder there. Now copy the one on your iPod over in its place.

- When this is done, re-launch iTunes. Make sure your song count is the same on both computers. You should now have your entire transferred library, including any music, videos, album art, liner notes, applications, ringtones, etc, that you ported over. You're not quite done, though, because there may possibly be some errors in your library at this point.

- Scan through your library visually and make sure you don't see any song or artist or album names replaced with a row of boxes -- again, if you do, this means you had some songs with non-Roman characters in their names and you need to enable support in XP.

- Now, delete the iTunes library copy from the iPod (but do not delete it from your Mac yet!!!). Now uncheck manually manage music and select whatever settings you normally sync the iPod with.

This part is sticky, because in my setup, I'm going to basically use the iPod to test the library integrity, and you can only test songs you transfer to an iPod this way. So if your library is larger than any iPod you own, and no iPod syncs the whole thing, this step may be problematic.

- Sync the iPod. This is going to take a while, but wait for a few minutes before you walk off to have dinner / whatever. You may find at this point that you get a warning that a series of songs could not be synced because they were not found in your library. Typically this warning comes right at the beginning of the sync process, before it actually starts transferring files. If this happens, you need this list of songs. I suggest just making multiple screen dumps of it and saving them as JPG's or PNG's.

- Now comes the complicated part. If you got songs flagged, there are two possible reasons:

A) The songs are corrupted in your original iTunes. I actually got an error when I copied my library that a file was in use and could not be modified; I asked the computer to continue anyway, and it finished making a copy. It turns out in my case that this song apparently had been corrupted for some time, as it does not play in iTunes, it's listed as only 256kb long, and unfortunately even the copies on my iMac backups are also only 256kb. :( So I'll have to figure out how to get this song back later.

B) The songs are fine, but you ran afoul of the long path name / filename issue. These songs are actually still there, but if you find them in Explorer, you'll see that they have truncated filenames that don't match what the library is looking for.

The songs that were flagged in the message will have a "!" to the left of their entries in the iTunes browsing view. The easiest way to fix this generally, because it often doesn't apply to every song in an album, is to go to the album in question, find a song that isn't flagged, and right click it and show it in explorer. You'll then get the folder the album is in. The songs that are missing will all have obviously truncated filenames that end with a "!" before the .m4a or whatever. You can either click get info on the flagged entry and follow the prompts to guide it to this folder (which may preserve playcount, etc) or you can just drag the flagged songs from Explorer back into iTunes, which will restore them (but probably lose the playcount). If you do the latter, you'll have to also manually delete the flag entries, because they won't be replaced by the new ones.

For any songs for which this doesn't work, e.g. because there are no other songs in the library from the album, the easiest thing to do is use Windows' desktop search tool to find them, since it will still use the metadata to find them. Then, follow one of the methods above to re-import them and remove the flag entry.

Hopefully, the net result should be, that if you sync your iPod again, all songs will transfer without error, and you'll know you have your full library back.

I haven't yet synced my iPod nano (I don't think there's a way to do this that doesn't involve losing the Nikeplus data on it, although the data is retained by the nikeplus.com server) or my iPhone yet. When I get to those, I'll add details that apply to syncing devices for the first time that do not hold the entire library.

EDIT: The Nano, like the main iPod, had to be restored / reformatted and get its music back on it. No issues, however. The iPhone, interestingly, did not need to be restored and synced right away and even recognized that its contents generally matched what was on my PC. The only problem I had with the iPhone was that, for some reason, the application files I transferred from my Mac did not work. On sync, the iPhone's apps were all copied back to the PC and then I had doubles of those apps in my iTunes and in the library itself. I had to manually delete those both from iTunes and from the library folder (well, didn't have to, but they were taking up space uselessly.)

So basically, all of this worked excellently, except that the songs that had filenames that were too long lost some metadata like playcount, and I did lose some apps that I had downloaded previously and were now not on my iPhone. Both iPods and iPhone all live on my XP box now.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.