This document describes how to use Yate to ensure that the tags present in your files appear properly in an Apple App (iTunes/Music/TV). The emphasis is given on making things as automatic as possible. It is assumed that you have at least a basic understanding of tagging in Yate. Most of the discussion references audio files and assumes iTunes or Music. The same logic can be used with video files in the TV application.
iTunes, Music and TV have two settings which are detrimental to managing your collection if you rename or move files. These options should never be checked. The settings are in the following locations:
If the above options are set, the Apple application will make copies of your files and will rename them as they see fit.
Yate connects audio files to an Apple App via a transient linkage. The linkage can be established and dropped at any time. The linkage disappears each time an audio file in Yate is closed.
Yate can link files by metadata matching. This typically uses the common fields Artist, Album, Title and Track. It is far better however to link by the use of the Apple App's so called persistent IDs. A persistent ID (PID) is basically a key to an item in the application's database. Whenever Yate links to an Apple App, the PID is read and used for all interaction with the application. PIDs can be retained in the audio files.
Metadata associated with an audio file can be exactly the same as another file. For example two copies of an album encoded at different resolutions. Persistent IDs are unique. This makes linkage relatively trivial and ensures that a linkage can be established even if a file is moved or renamed. If a linked file is moved or copied, Yate can still locate the file in the Apple App and update its location. Even if a file's location is changed when not linked, Yate can still find the file in the Apple App the next time the file is linked and can still correct the location.
While PIDs are great to use it is important to note that they do not work across different libraries and they do not survive a rebuild of the libraries. We'll shortly describe an easy method of updating the saved copy of a PID in an audio file if for any reason you rebuild a library. Yate encodes PIDs for each of iTunes, Music and TV slightly differently. This means a single PID is always associated with a single application.
Lets go over some basic setup that you should perform if your audio player is iTunes or Music. First, you should enable the display of the Linked column in Yate's main window. This column displays the link status of a file. Empty implies not linked. A check mark implies linked and everything of interest to you is the same in the audio files and the Apple App library. Other indicators imply differences in items of interest. You can always see the indicator definitions by hovering the mouse pointer over the Linked column's header.
It's recommended that you apply the following settings in Preferences - Apple Apps - General. More information on these settings can be found in the preference panel's online help.
Most metadata supported by iTunes, Music and TV is directly read from the files .. although iTunes has in earlier versions been somewhat terrible in keeping files and its library in sync. Further not all metadata is supported in all file types. For example, Apple simply refuses to read metadata from WAV files even though the convention for storing tags in WAV files is identical to how tags are stored in MP3 files. Yate gets around these issues by manually forcing the metadata into iTunes or Music ... even then they refuse to display an artwork item for a WAV file.
Various metadata items are only kept in an Apple App's library and does not get written out by them to the audio files. Yate however can retain all these library only items in the audio files. Managing these items and keeping them synchronized with the files can be a pain if it is not automatically done for you. These items include: Category, Classical Metadata, Loved / Disliked, Media Kind, Persistent ID, Play Count, Rating, Remember Playback Position, Skip when Shuffling, Start Time, Stop Time and Volume Adjustment. Yate can also clear iTunes and Music's automatically calculated album rating.
Only iTunes supports all of these library only metadata types. Music and TV support a subset. On the Preferences - Apple Apps - Fields of Interest panel you tell Yate which metadata types you're interested in. Whenever you link an audio file to an Apple App the Linked column will show an indicator for each of the fields of interest which have different values in the Apple App and the audio file where Yate retains them. The advantage of retaining the information in the files is that if you ever have to rebuild an application's database, nothing will be lost. The following screenshot shows a sample Fields of Interest panel. You can choose whatever fields you want but please ensure that Persistent ID is checked.
Preferences - Apple Apps - Auto Import looks almost the same. It describes those fields that are to be imported into Yate each time a file is linked. As you are going to be editing in Yate you need not check anything other that Persistent ID ... which you always want to automatically import. The entire linkage methodology used in this document falls apart if you do not check Persistent ID.
Preferences - Apple Apps - Auto Export describes those metadata items that Yate will force into an Apple App each time a file is saved in Yate. Which fields you auto export is entirely up to you. You'll notice that Persistent ID is missing. That's because the Apple App always owns the Persistent ID and Yate cannot set it.
As discussed, one you have the PIDs in the audio files, linking is trivial. However you may have a large existing library. How do you initially get all the PIDs? Yate provides a special batch process which walks your Apple App libraries and imports the PIDs directly into the audio files. Typically this batch process only has to be run once. The batch process is run from the Action menus's Batch Extract Persistent IDs item. Basically the process examines every item in a library and updates the files with the PIDs.
If you've run the batch extraction of PIDs process ... how do you link a file? Select any files loaded into Yate and do an Apple Apps>Link to Apple App. The Linkage column will update. Note that any Yate menu command can be associated with a keyboard shortcut. Also, the Link to Apple App command is available as a toolbar icon. Once linked, any changes you make in Yate will be saved to the appropriate library when the files are saved. Yate also forces a refresh in an Apple App. A refresh tells the application to reload metadata from a file. This ensures that standard metadata items such as Artist, Album, Artwork, etc. are updated as well.
If you have a new album you can add it to to an Apple App by loading the album into Yate and doing an Apple Apps>Add to Apple App. All selected files will be added, linked and the PIDs will be imported. If for any reason, you added the album directly into the Apple App simply drag the files into Yate which will load the files and will have the same effect. As of the success dragging from an Apple App into Yate various on the application's display and even which application you're using. There are lots of inconsistencies. To avoid dragging, you can select the files in the Apple App and do a File>Open Selected Items In>Apple App.
If you load files into Yate, forget to link them and then save changes ... not to worry. Simply link the files and then do an Apple Apps>Refresh Apple App. The refresh process will cause the application to reload metadata from the files and will take care of synching those nasty library only items which you told Yate to process. Note that the Music and TV applications do not properly reload artwork when a file is refreshed. The artwork is reloaded but the image used when playing tracks or displaying an album is not updated. There are two workarounds for this issue:
There are lots of other things you can do with Apple Apps when linked. The functions are all on the Apple Apps menu. You can find help for any Yate menu item via Help>Quick Reference>Help by Menu. The main thing is not to be intimidated by the functionality. You'll develop your own workflow over time and eventually it will all appear to be easy.
Copyright ©️ 2022 2ManyRobots. All rights reserved
Download as PDF