{"id":26998,"date":"2019-10-21T15:55:03","date_gmt":"2019-10-21T19:55:03","guid":{"rendered":"https:\/\/mjtsai.com\/blog\/?p=26998"},"modified":"2019-11-06T15:52:09","modified_gmt":"2019-11-06T20:52:09","slug":"itunes-xml-and-music-in-catalina","status":"publish","type":"post","link":"https:\/\/mjtsai.com\/blog\/2019\/10\/21\/itunes-xml-and-music-in-catalina\/","title":{"rendered":"iTunes XML and Music in Catalina"},"content":{"rendered":"<p><a href=\"https:\/\/www.theverge.com\/2019\/10\/7\/20903391\/apple-macos-catalina-itunes-dj-software-breaks-xml-file-support-removal-update\">Dani Deahl<\/a>:<\/p>\n<blockquote cite=\"https:\/\/www.theverge.com\/2019\/10\/7\/20903391\/apple-macos-catalina-itunes-dj-software-breaks-xml-file-support-removal-update\">\n<p>According to Apple, the new Music app, which replaces iTunes, removes support for automatically syncing playlists with third-party apps using XML. XML file support is a popular organizational feature for DJs who use it to sort tracks into playlists and utilize the &ldquo;Share iTunes Library XML with other applications&rdquo; option to seamlessly transmit data between apps.<\/p>\n<p>[&#8230;]<\/p>\n<p>Tons of popular DJ apps, like Rekordbox and Traktor, read XML files and relied on iTunes&rsquo; syncing feature.<\/p>\n<p>[&#8230;]<\/p>\n<p>A statement from Apple initially said XML would not be supported within the app. This story has also been updated to clarify that Music supports a new method for automatically syncing playlists that third-party apps can be updated to support.<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/twitter.com\/nickheer\/status\/1181348204924719104\">Nick Heer<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/nickheer\/status\/1181348204924719104\">\n<p>I&rsquo;d love to hear a good explanation of why XML music libraries are no longer supported in Catalina. This seems to be arbitrary.<\/p>\n<\/blockquote>\n\n<p>Not even a preference or a way to script it.<\/p>\n\n<p><a href=\"https:\/\/www.forbes.com\/sites\/ewanspence\/2019\/10\/08\/apple-macos-catalina-broken-update-mac-imac-macbook-pro-fix-mistake\/\">Ewan Spence<\/a>:<\/p>\n<blockquote cite=\"https:\/\/www.forbes.com\/sites\/ewanspence\/2019\/10\/08\/apple-macos-catalina-broken-update-mac-imac-macbook-pro-fix-mistake\/\"><p>Since iTunes 11 Apple has offered an SDK to access the iTunes library without going through the iTunes XML file, and this sandboxed approach continues to work on Catalina. Yes there should be a cut-off point, but that should be communicated well in advance and any mitigating action is promised should be delivered.<\/p><\/blockquote>\n\n<p><a href=\"https:\/\/kirkville.com\/macos-catalina-and-djs-yes-its-a-problem-but-developers-can-solve-it\/\">Kirk McElhearn<\/a>:<\/p>\n<blockquote cite=\"https:\/\/kirkville.com\/macos-catalina-and-djs-yes-its-a-problem-but-developers-can-solve-it\/\">\n<p>DJs don&rsquo;t use iTunes to play music, but they do use its powerful organizational tools to manage and find music, which is then played by specific apps for DJing. Those apps accessed the XML file simply to find the locations of files and play them; with the ability to dump an XML file, nothing much should change, other than the need to do this manually.<\/p>\n<p>[&#8230;]<\/p>\n<p>The big problem here is that developers, aware of this change since the initial beta release of macOS Catalina, have not done the necessary work to update their software. Apple provides an <a href=\"https:\/\/developer.apple.com\/documentation\/ituneslibrary\">iTunesLibrary framework<\/a>, available since iTunes 11, which allows developers to directly access the .itl file used to store information about the Music app&rsquo;s library. Some developers of DJ apps have already made the transition. It&rsquo;s not that hard to learn how to use this instead of using the XML file.<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/www.jwz.org\/blog\/2019\/10\/apples-war-on-their-users-continues-apace\/#comment-202275\">Jamie Zawinski<\/a> (<a href=\"https:\/\/twitter.com\/jwz\/status\/1181771234155122688\">tweet<\/a>):<\/p>\n<blockquote cite=\"https:\/\/www.jwz.org\/blog\/2019\/10\/apples-war-on-their-users-continues-apace\/#comment-202275\"><p>As someone who has used the various iTunes APIs extensively, I can make this authoritative statement:<\/p><p>Hahahahahahahahaha, no.<\/p><p>The XML files are the <em>only<\/em> way to make anything work.<\/p><p>Also note that the article appears to say that one of the features they removed was the ability to export <em>and import<\/em> playlists as XML files. The fact that there is an API that lets you interrogate the contents of the iTunes library does not change the fact that people out there have a lot of those XML files that they use on a daily basis, since that&rsquo;s the interchange format between iTunes and various DJ software.<\/p><p>Also, <code>ITLibrary<\/code> is a <em>read-only<\/em> interface. So tell me how I use that write ObjC code to take my old XML files and then tell iTunes, &ldquo;make a playlist from these tracks&rdquo;?<\/p><\/blockquote>\n\n<p><a href=\"https:\/\/kirkville.com\/how-to-export-an-xml-file-in-the-music-app-in-macos-catalina\/\">Kirk McElhearn<\/a>:<\/p>\n<blockquote cite=\"https:\/\/kirkville.com\/how-to-export-an-xml-file-in-the-music-app-in-macos-catalina\/\">\n<p>In the macOS Catalina Music app, you can no longer have this file created automatically, but you can create it manually.<\/p>\n<p>[&#8230;]<\/p>\n<p>To do this, choose File &gt; Library &gt; Export Library, name the file, and save it.<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/twitter.com\/peternlewis\/status\/1181452134031585280\">Peter N Lewis<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/peternlewis\/status\/1181452134031585280\">\n<p>They changed iTunes bundle ID when they renamed it to Music.  That seems unnecessary and annoying.<\/p>\n<\/blockquote>\n\n<p>The bundle identifier for Contacts is still <tt>com.apple.AddressBook<\/tt>.<\/p>\n\n<p><a href=\"https:\/\/twitter.com\/eternalstorms\/status\/1181521780084752384\">Matthias Gansrigler<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/eternalstorms\/status\/1181521780084752384\">\n<p>I <em>love<\/em> those optimized apps!<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/twitter.com\/steipete\/status\/1178652850286682112\">Peter Steinberger<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/steipete\/status\/1178652850286682112\">\n<p>With the new iTunes-is-now-shoved-into-Finder there&rsquo;s now no more progress indicator for a manual backup? Button is gray and you gotta wait. (Not that the progress was very accurate, but still).<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/twitter.com\/DamienPetrilli\/status\/1184449947007180800\">Damien Petrilli<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/DamienPetrilli\/status\/1184449947007180800\">\n<p>The split of iTunes had one (overlooked) effect: the media keys \/ touch bar \/ AirPods play button only controls the music App and not the TV App if you are watching videos.<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/twitter.com\/DamienPetrilli\/status\/1184476258408849408\">Damien Petrilli<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/DamienPetrilli\/status\/1184476258408849408\">\n<p>Another perk of killing iTunes I guess. Playing local videos used to be energy efficient, not anymore.<\/p>\n<p>It&rsquo;s even worst than Safari and Xcode cumulated.<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/twitter.com\/DamienPetrilli\/status\/1184758371146174465\">Damien Petrilli<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/DamienPetrilli\/status\/1184758371146174465\">\n<p>After iOS, macOS Music App:<\/p>\n<p>1. You barely see the difference between the active and disabled gray<br \/>\n2. The active gray is <em>lighter<\/em> than disabled gray.<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/www.reddit.com\/r\/MacOS\/comments\/djqria\/is_music_working_worse_than_itunes_for_anyone\/\">Luna259<\/a>:<\/p>\n<blockquote cite=\"https:\/\/www.reddit.com\/r\/MacOS\/comments\/djqria\/is_music_working_worse_than_itunes_for_anyone\/\">\n<p>I can&rsquo;t right click on songs to get things like the metadata or file location, it sometimes refuses to close, the UI glitches (the pause button doesn&rsquo;t change to play when paused) and the three dots menu doesn&rsquo;t work for any of the songs or albums<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/kirkville.com\/poll-what-do-you-think-of-the-new-macos-media-apps-that-replace-itunes\/\">Kirk McElhearn<\/a>:<\/p>\n<blockquote cite=\"https:\/\/kirkville.com\/poll-what-do-you-think-of-the-new-macos-media-apps-that-replace-itunes\/\">\n<p>What Do You Think of the New macOS Media Apps that Replace iTunes?<\/p>\n<\/blockquote>\n\n<p>Currently, 29% like them, 57% miss iTunes, and the rest don&rsquo;t have a preference.<\/p>\n\n<p><a href=\"https:\/\/www.macintouch.com\/community\/index.php?threads\/macos-10-15-catalina.2054\/page-10#post-22244\">Ed Starkie<\/a>:<\/p>\n<blockquote cite=\"https:\/\/www.macintouch.com\/community\/index.php?threads\/macos-10-15-catalina.2054\/page-10#post-22244\">\n<p>After the Catalina update, all of my music in iTunes was gone except for 7 or 8 items from the iTunes store. Otherwise ~32 GB of music gone.<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/twitter.com\/Grady_Booch\/status\/1185703792613851136\">Grady Booch<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/Grady_Booch\/status\/1185703792613851136\">\n<p>I truly loathe\/abhor\/execrate\/abominate\/curse\/ahathematize and generally do not like the new \n@Apple Music app that comes with Catalina.<\/p>\n<p>(It broke much of my album art, it is buggy with regard to sorting, and it is less customizable with regard to presentation.)<\/p>\n<\/blockquote>\n\n<p>Previously:<\/p>\n<ul>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2019\/10\/13\/podcasts-in-catalina\/\">Podcasts in Catalina<\/a><\/li>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2019\/06\/04\/music-app-on-macos-10-15\/\">Music.app on macOS 10.15<\/a><\/li>\n<\/ul>\n\n<p id=\"itunes-xml-and-music-in-catalina-update-2019-10-25\">Update (2019-10-25): <a href=\"https:\/\/dougscripts.com\/itunes\/2019\/10\/itunes-library-xml-v-itlibrary\/\">Doug Adams<\/a>:<\/p>\n<blockquote cite=\"https:\/\/dougscripts.com\/itunes\/2019\/10\/itunes-library-xml-v-itlibrary\/\">\n<ol>\n<li>ITLibrary does not know about Work and Movement tags.<\/li>\n<li>ITLibrary does not know the difference between playlists in the Music app and playlists in the TV app. You can ask for discrete music <em>tracks<\/em> or TV tracks or movie tracks, but not discrete playlists from either app.<\/li>\n<li>ITLibrary does not know what a <em>subscription playlist<\/em> is. It&rsquo;s an Apple Music playlist you have added to your library. ITLibrary sees it as a Regular playlist.<\/li>\n<li>Ditto Loved and Disliked for tracks<\/li>\n<li>Ditto Loved and Disliked for playlists<\/li>\n<li>ITLibrary does not distinguish among types of cloud tracks (uploaded, matched, duplicate, etc)<\/li>\n<li>ITLibrary does not provide a Track ID which is used to correlate the tracks in a playlist to their library entries and vice versa.<\/li>\n<\/ol>\n<p>And I&rsquo;m sure I&rsquo;ve run into other minor impediments. Wait, bonus gripe: converting decimal persistent IDs to hexidecimal.<\/p>\n<\/blockquote>\n\n<p id=\"itunes-xml-and-music-in-catalina-update-2019-11-02\">Update (2019-11-02): <a href=\"https:\/\/twitter.com\/b3ll\/status\/1187920171127562240\">Adam Bell<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/b3ll\/status\/1187920171127562240\">\n<p>Cool.<\/p>\n<\/blockquote>\n\n<p id=\"itunes-xml-and-music-in-catalina-update-2019-11-06\">Update (2019-11-06): See also: <a href=\"https:\/\/twitter.com\/caseyliss\/status\/1190996216701685760\">Casey Liss<\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>Dani Deahl: According to Apple, the new Music app, which replaces iTunes, removes support for automatically syncing playlists with third-party apps using XML. XML file support is a popular organizational feature for DJs who use it to sort tracks into playlists and utilize the &ldquo;Share iTunes Library XML with other applications&rdquo; option to seamlessly transmit [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"apple_news_api_created_at":"2019-10-21T19:55:07Z","apple_news_api_id":"afac162e-b3d5-4b3d-90b1-972d76271900","apple_news_api_modified_at":"2019-11-06T20:52:15Z","apple_news_api_revision":"AAAAAAAAAAAAAAAAAAAAAw==","apple_news_api_share_url":"https:\/\/apple.news\/Ar6wWLrPVSz2QsZctdicZAA","apple_news_coverimage":0,"apple_news_coverimage_caption":"","apple_news_is_hidden":false,"apple_news_is_paid":false,"apple_news_is_preview":false,"apple_news_is_sponsored":false,"apple_news_maturity_rating":"","apple_news_metadata":"\"\"","apple_news_pullquote":"","apple_news_pullquote_position":"","apple_news_slug":"","apple_news_sections":"\"\"","apple_news_suppress_video_url":false,"apple_news_use_image_component":false,"footnotes":""},"categories":[2],"tags":[1230,131,1016,458,224,30,1666,1816,1590,866],"class_list":["post-26998","post","type-post","status-publish","format-standard","hentry","category-technology","tag-apple-music","tag-bug","tag-datacide","tag-finder","tag-itunes","tag-mac","tag-macos-10-15","tag-music-app","tag-tv-app","tag-xml"],"apple_news_notices":[],"_links":{"self":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/26998","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/comments?post=26998"}],"version-history":[{"count":5,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/26998\/revisions"}],"predecessor-version":[{"id":27210,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/26998\/revisions\/27210"}],"wp:attachment":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/media?parent=26998"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/categories?post=26998"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/tags?post=26998"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}