Fixing Tags (Meta Data) in the Library Temp

From kJams Wiki
Jump to navigation Jump to search

When you import music from your hard drive, more often than not the meta data will be messed up. It will be nonexistent or incomplete, or the meta data that’s there will all end up glommed together under Song Name. If the data is incomplete, there’s no magic trick for downloading the data. Sorry. You will have to research and enter the data manually. davequestion: Is this true?

If the data is there, but stuffed into the Song Name field, then I do have a few tricks up my sleeve that will unglom the data. That’s because the data that shows under Song Name is actually the music file name, and file names follow very specific formats, which kJams can interpret (with a little help from you).

File Name Templates

First let’s look at the concept of name templates. A name template specifies the format of a file name, in this case, a music file. Here’s a typical music file name.

AH2003-03 - Pink Floyd - Time.zip

In this example, the name template is:

album name dash track # space dash space artist name space dash space song name

In the kJmas universe, I use abbreviations to describe naming templates. Below is the abbreviation for this particular naming template. davequestion: what about file extensions? do we need to show them?

L-T - R - S

Since Artist and Album both begin with A, I don't use the letter A, but rather R for aRtist and L for aLbum. Note that the spaces and dashes are significant and are reflected in the abbreviation. The abbreviation instructs kJams to read the file name this way:

  1. Everything up to the first dash is the album name.
  2. Immediately following the dash is the start of the track number.
  3. Continue reading the track number until you see space-dash-space.
  4. After space-dash-space, start picking up artist’s name.
  5. Keep picking up artist name until you see space-dash-space again.
  6. Everything that follows is the song name.

Yes, I know that explanation was a bit tedious, but it’s important that you understand how kJams uses a template to read a file name.

Okay, let’s look at some other examples of file names.

LEG086-07 - U2 - Hold Me, Thrill Me, Kiss Me, Kill Me.zip
SC8397-13.zip
BL21-04_-_Every_Breath_You_Take_-_Police,_The
Adams, Bryan - Cuts Like A Knife - SC-1.zip

As you can see, pre-existing songs can be named a variety of ways. Here’s what their templates look like:

LEG086-07 - U2 - Hold Me, Thrill Me, Kiss Me, Kill Me.zip → L-T - R - S
SC8397-13.zip → L-T
AH2003-03 - Pink Floyd - Time.zip → L-T - R - S
BL21-04_-_Every_Breath_You_Take_-_Police,_The → L-T - S - R
Adams, Bryan - Cuts Like A Knife - SC-1.zip → R - S - L-T

Can you see the problem? It takes a human to interpret the file names. Once you (the human) figures out the file name, you can tell kJams which naming template was used, and kJams can then sort the data into the proper column. This is called reinterpreting.

By the way, in case you’re wondering why you can’t just fix things manually, you can. If you use Add to Library for only a handful of songs, you can just edit the meta data right in the library. For some of you, this might be the easiest way to get clean data. But what if you have TONS of music files? The reinterpret function helps streamline the process.

All right, back to our discussion. In order to accommodate the variety of file names you might encounter, I use the following symbols in addition to L, T, R and S.

I Ignore This lets you skip over uninteresting parts of the name.
V Rendition Think Version. This indicates textual information that distinguishes this song from another version of the same song; could be something like “had lead vocals” or “had backing vocals.”
/ Path Separator This is used when the meta info is distributed within the folder containing the song; for example, if the artist name is the name of the folder and the song is inside the folder, the template would /R/S

It’s important to understand that a naming template can use only valid characters. The ONLY valid characters that kJams recognizes are listed below.

L aLbum
T Track (number, two digits)
R aRtist
S Song Title
I Ignore
() Parenthesis are okay
[] Brackets are okay
V Rendition (Version)
. Periods are okay
space
/ path separator

davequestion: your documentation implies that users Reinterpret right after Adding to Library. But these instructions require moving songs with like-naming templates into unique folders. Wouldn’t this need to be done before adding to library?

Reinterpreting File Names

To reinterpret a file name, you first specify a template that matches the file name exactly, and then you tell kJams to reinterpret the name based on that template. Because you are likely to have multiple files that use the same naming template, you can do this process in batches. In fact, if you got all your songs from one source, it’s likely that all of those music files reflect the same naming template.

Important! kJams can only reinterpret file names where dashes (hyphens) have been used to separate the types of data. If your file names use underscores to delineate types of data, kJams will not be able to reinterpret the names. This is because kJams sees underscores as spaces. Click here for information on how to handle this.

  1. Before you do anything else, sort your music into folders, based on naming template. Make sure every song in the folder follows that exact naming convention.
  2. Open kJams and make sure your Preferences set to the correct naming template.
    1. Edit → Preferences → Tags
    2. Make sure Conform Song Names is set to "L-T-R-S". This is the naming template that you’re conforming TO, and this is important. You can change it if you know why you want to change it, but I recommend against it until you know what you're doing.
  3. Select a batch of songs that need fixing. All of the songs in the batch must reflect the same file naming template.
  4. Right-click and select Reinterpret Names.
  5. A dialog box opens, showing you the file name to be reinterpreted, as well as the folder and grandfolder in which the file resides. If the file name includes all of the meta data that you want, then you don’t have to worry about the folders. But if some of the meta data appears at the folder level, then your template will need to indicate this. Here’s how this works:
    Say you have a grandfolder named Sixties, and under that is a folder named Beatles, and inside that folder are a bunch of Beatle songs. When you add the Beatles songs to your library, the file names might look something like this: SC1100-10 - Yesterday
    You have the Album Name, Track #, and Song, but the Artist needs to be picked up from the folder. In this case your template would look like this: /R/L-T - S
  6. Click on the down arrow to see a list of templates. Choose the matching template OR click on the Edit button to create a new template. Remember: the template has to match the files names exactly, or the reinterpretation won’t work.
    When you select a template, I show you how kJams will reinterpret the file name. This way, you can make sure you’re doing it right.
  7. Once you’ve specified a template, click OK.
  8. Watch the tasks window. After about 10 seconds, kJams will attempt to update what is on the disk (renaming the files and updating the tags). Don't get too far ahead of the tasks. I suggest you do a batch and then let kJams finish all of the tasks before going to the next batch.

Once your meta data is correct, YOU WILL NEVER GO THROUGH THIS PROCESS AGAIN! That's because kJams updates the actual files on the disk. If you ever need to rebuild your library from scratch, all the meta is already there, and it will all import in one fell swoop. Yay!!!


By the way, I recommend against using the radio buttons, unless you know what you're doing.