macOS catalina and music

I have a lot of music that I’ve ripped myself. Not the massive collection that some people have, but reasonably well organized and tagged music going way back to the initial versions of iTunes1. Right now, I’m at about 1,300 albums and 17,000 songs. I’ve never really had any issues with iTunes, and while I’ve had to do a few workarounds over the years to get my music to where it needed to go, I’ve been perfectly happy with iTunes.

I delayed upgrading my old mac to Catalina because of the iTunes -> Music transition, and was worried I’d have some problems. I finally got a new mac and was forced to upgrade.

First things first, the upgrade went smooth using Migration Assistant, even though:

  • My iTunes library was ‘Tunespanned’ to an external hard drive.
  • I also use iTunes Match (but not the Apple Music streaming service).
  • I use a lot of command line utilities, including mutt for mail, installed from homebrew.
  • I didn’t bother to do anything specific with very ‘controlling’ apps like Adobe Photoshop and Mathematica. Their installers took care of everything.

Smooth sailing…

I started playing music with Music, and noticed my CPU usage was a bit high. No big deal, probably just sorting out some iCloud crap. But it never relented. Looking in Activity Monitor, Music was using quite a bit of CPU even while not playing, but so was AMPArtworkAgent. I learned snooping around online that AMPArtworkAgent is the Apple Music (Player?) Artwork process that matches album art. “OK,” I say to myself, “I’ve got a number of albums with no art, let it sort itself out like people online say to.” Well, it never did. I then fired up Console.app and noticed that there were repeated messages, 1000’s and 1000’s of them, all with the form of

AMPArtworkAgent	Failed to find the SourceInfo for UUID:931AD28D-7A8F-403E-A7B7-D860F6E53365 error:Error Domain=NSOSStatusErrorDomain Code=9068 "(null)"
AMPArtworkAgent	RequireAction failure: ("IsLockValid(lock)")

I noticed the UUIDs were repeated a lot. In fact, there were only 21 unique UUIDs across over 100,000 messages in 10 minutes. Maybe it’s just a few songs or albums that were fucked up, and if I could fix them, I’d fix my issues?

The temporary ‘fix’

In the meantime, I exported my library as an XML file, bought a copy of Swinsian, and had it import the XML library every startup. It’s not a bad app, and might serve some people very well. However, since I use iTunes Match (or whatever it is called) to sync my music to my phone, I really am tied to Apple Music for now. But Swinsian is a good app to keep around. Recommended if it fits your needs.

Attempts to remedy

I wasn’t able to find anything on the internet reporting on a similar situation. Apple’s discussion forums were useless. So I tried a couple of things (some by accident) with varying degrees of success.

  1. Created a new library (start up Music while holding down the option key). Added a few tracks (with ‘Sync Library’, ‘Copy files to Music Media folder’, and ‘Keep Music Media folder organized’ turned off, even though I usually have those turned on). Fixed the problem.
  2. Started up Music with my original library in Safe mode (hold done command-option while starting up Music). Fixed the problem, probably because it disables AMPArtworkAgent somehow.
  3. Manually added missing artwork to all the iTunes Match matched albums that did not have artwork already (according to a smart playlist). I figured the songs that had been uploaded to iTunes Match weren’t an issue. I don’t have artwork for some of them as it doesn’t exist, and if Apple can’t even find the album to match to, why would it be searching for art? Doesn’t mean that this wasn’t the problem, but… This did not fix the problem.
  4. Repeated #1 but added all of my music. Fixed the problem.

So where did that leave me? Hope to get to an iTunes/Music engineer on the phone to help me track down the issue? Or do #4 and lose my playlists (not a big deal) and ratings & play counts (big deal). I had a last thought that maybe if I exported my library as an XML file, made a new library, and reimported that XML file, maybe it would save ratings & play counts but still behave as if I imported all the songs from scratch? It was worth a try.

Results

Well, it worked! To the one other person on the internet who is having the same problem, if you ever read this, just export your old library as an XML file, created a new library, and import the XML file.

I then re-enabled ‘Copy files to Music Media folder’ and ‘Keep Music Media folder organized’ with no issues, though the ‘Keep Music organized’ one did have to check every file, so it took a bit. Lastly, I re-enabled ‘Sync Library’ and waited for Cloud Music library to do it’s thing.

After a few hours, the results are good. Music is now usable, I don’t think I lost any songs, etc. Only two negative side effects that I’ve noticed so far:

  • My playlists were duplicated. So I had to delete the duplicates.
  • I lost the “Date Added” data, but I’m not overly concerned about this. Pointless metadata for me. I can always go back to the XML file if I need it as well. I’m not that torn up about this either, as for reasons lost in the mists of time, I’ve reimported most of my music at one time or another.

Very annoying that I had to do this at all Apple, but at least I’m up and running again.


  1. I have replaced many of my originally ripped MP3s, ripped at 192 kbps, with AAC files ripped at 256 kbps, and then finally ALAC files. I still have some of those original MP3s, and it looks like the earliest two files were ripped with SoundJam MP and SoundJam v2.1.1. Not sure if I ripped those or downloaded them in college. The earliest bulk rips I did were with iTunes v1.0, v1.1, and iTunes X v1.1.1. Then, at some point in 2002, I started mass ripping all of my CDs. As I said, many of those songs have been replaced with higher quality rips, but some still exist. ↩︎