(Or, How to sync an iPhone with one computer and manually manage music and videos on another).
Note: This tutorial allows you to add music/videos/podcasts from multiple machines. If you just want to sync PIM (Contacts/Calenders etc) on one machine and media on another there’s a simpler way. On the computer you want to sync contacts/calendar with select only these items and perform a sync. Now, on the second machine enable Music/Photos/Etc and perform a second sync. You will be warned the media library will be deleted, but as there’s no media this is fine
Because I do most of my music listening at work and my Calendar/Address book are kept in Outlook I have my iPhone setup to sync with my office PC. When I’m at home however I find I also want to put music/podcasts/videos on my iPhone for the weekend or trips.
Normally it’s only possible to sync media on an iPhone with one computer. If you try to use a second computer you get the warning below that "the iPhone XXX is synced with another iTunes library. Do you want to erase this iPhone and sync with this iTunes library"?
However, I’ve found an easy fix for this. In the instructions below I’ll show how to modify any iTunes Library so it can also be synced with your iPhone. You can then either manually manage your iPhone on a second computer, or sync different data on different machines (E.g. Music at home, Contacts/Calendar at work).
The instructions below use the example of modifying the iTunes library on my home Mac to work with my existing iPhone/PC setup. If your existing library is on a Mac, or both machines are of the same type, then the steps are identical.
- On the PC you can find your iTunes folder in your "My Music" (XP) or "Music" (Vista) directory. On the Mac it is in your Music directory.
- For the editing part, I recommend UltraEdit on the PC and a combination of TextExit / HexEdit on the Mac. Any hex editor will do, and you only need to edit files on the second machine.
- After completing these steps you will be able to sync your iPhone with both computers, either by normal syncing or choosing one machine to manually manage your music and videos. Unless you also keep your music libraries in sync, I recommend you do not attempt to normal sync the same types of data on both machines.
Backup Your Library
On the machine you want to sync with, backup "iTunes Music Library.xml" and "iTunes Music Library" (Tunes Music Library.itl on PC) to a safe location. These are the files you will be modifying.
1) Find your iTunes Library ID
On the machine your iPhone currently syncs with, open "iTunes Music Library.xml" with a text editor and find the entry between the <string></string> tags, after "Library Persistent ID". In the example below this is 8B6C633F7DACB74B. Copy this entry exactly to a piece of paper, email, temporary file etc. You can then close this file.
2) Change your Library ID
iTunes stores your library information in two places. An XML file and a binary file. You now need to change the ID in both so they match your other library.
Make sure iTunes is not running.
On the machine you want to sync with open "iTunes Music Library.xml" in a text editor. Again, find the entry between the <string></string> tags after "Library Persistent ID" and copy this entry exactly. This time you can use the clipboard if you wish.
When you have a copy, replace this entry with the one you copied in part 1. Make sure you do not change anything else, and the length of the entry is 16 characters/digits. Save this file and close it.
In the Hex Editor, open "iTunes Music Library" (Tunes Music Library.itl on PC).
Select "Find and Replace" from the Edit menu. Make sure "Hex" matching is selected (not ASCII). In "Find" enter the ID you took a note of in Part 1. In Replace, enter the ID you copied at the start of Part 2. Choose Replace All, there should be one match.
Save this file and close it.
Start iTunes on the machine you wish to sync with and plug in your iPhone. When you select "Manually manage music and videos" you will no longer be prompted to erase your data, nor will the files on your iPhone be grayed out.
Previously I’ve found that intentionally corrupting the binary "iTunes Library" file (e.g. replacing it with a text file) would cause iTunes to regenerate it using the XML data. This no longer appears to work for me in iTunes 7.6.1 and the "repaired" file only contains a few songs. This may be because I keep my music on an external drive but I cannot say for sure. Either way, patching the binary file does not take long and removes any chance of later problems.