Questions About Interoperability With iTunes (aka Music)

Just stumbled on Beets. Wow! Before diving in further, I do have some questions:

  1. Can I export all the songs from my iTunes library, put Beets to work fixing the tags, AND adding lyrics and artwork, then import the fixed up songs back into a new iTunes library (using iTunes own import function) in a way that iTunes will like so iTunes will (a) have said tags, lyrics and artwork and (b) so that the tag, folder and filename structure in the iTunes database will have the standard iTunes layout and naming scheme?

  2. If 1. is a YES, do I need to do anything “special” to make that happen?

  3. I started down the wrong road mixing up the info in the iTunes artist vs. album artist fields, so will Beets fix that in the exported files it goes to work on?

  4. Can I tell Beets not overwrite already-populated tags SELECTIVELY, for example, “Don’t Overwrite Existing Artwork or Lyrics or Album Name”, etc. “But Overwrite Everything Else”?

  5. Will Beets do a “fuzzy” search (maybe that depends more on what MusicBrainz, etc. does) for albums that have non-standard names? For example, I’ve named some albums with the standard album name followed by MFSL or GOLD or HiRes, etc so I can easily see that added info when the song is playing.

Thank you very much in advance!

Don’t take this as 100% fact, I’m just responding with my best guess because nobody else has.

  1. No native iTunes export or import functionality. I don’t think this is theoretically impossible, especially on the import side of things. Try looking if there are iTunes shims for another music folder structure?
  2. Beets offers full customization of destination paths. The tag format should be fairly standard, but iTunes may not like it?
  3. Beets’ core design relies on the autotagger. You can avoid this but in most cases it’s what you should use. As long as the autotagger can match your music to MusicBrainz database, you can have a uniform tag / filename setup. You can change it at will and re-sort the music with beet mv (see the FAQ).
  4. There may be a plugin to keep existing tags.
  5. Based on the code, no. Musicbrainz does okay at this. However Beets does not require an exact match and is fuzzy in that sense.

Match code: beets/match.py at a19bc0570cd462aa8c978634fa82b1049330fcd1 · beetbox/beets · GitHub

Thank you very much for the helpful response. Looks like I’ll need to put in some effort!