Subaru Crosstrek and XV Forums banner
21 - 36 of 36 Posts
More experimenting.

I've determined that the subfolder solution does not work either. This thing is dumber than I thought. It indexes everything on the drive, regardless of folder structure, and plays them all alphabetically.

So it looks like the only solution to preserve sort order is to prepend a sequential number onto the ID3v2 TIT2 tag frame. I added that to my USB-writing script. It works. It's annoying, because the numbers leave less room on the display for the actual title, but it does successfully preserve the desired sort order.

I also created a version that uses alphabetic characters to save space, because with just two added characters you can index 676 tracks (26²). This also works, and shows more of the title, but the drawback is that the two characters sometimes happen to spell a word, which is a little bit distracting.

If you're a Linux user and want the scripts, or an adventurous Mac user who'd like to try to adapt them to your platform, PM me and I'll share them with you.
 
I also created a version that uses alphabetic characters to save space, because with just two added characters you can index 676 tracks (26²). This also works, and shows more of the title, but the drawback is that the two characters sometimes happen to spell a word, which is a little bit distracting.
Yet more experimenting.

It occurred to me that I might be able to use other characters besides alphanumeric in the sorting prefixes. So I did some testing and discovered that the head unit will also accept and sort most ASCII special characters, with the exception of those that are commonly used as control codes. All in all I identified 65 usable characters, including the digits 0 through 9 and the lowercase alphabet. I could also have included the uppercase alphabet, but since the goal here is to save space, I omitted those. Here they are, in the order the car will sort them:

Code:
_-,;:!?.'"()[]{}@&#%`^+<=>|~$0123456789abcdefghijklmnopqrstuvwxyz
65 choices means you can index 4225 tracks with just two prefix characters, and the presence of all the special characters means the prefix is far less likely to accidentally form a word.

Unfortunately that sort order bears no relationship to their native ASCII character codes, so I had to build a custom function to increment each one to the next in the series. But the resulting script does work, preserving the sort order while not impinging too much on the displayed title.

Again, ping me if you want it.
 
That's awesome information dwasifar, thanks!

There is one more challenge in getting the unit to work somewhat satisfyingly and am wondering how you have overcome it. You seem to have done lots of testing so I assume you ran into this issue.

It looks like the system keeps an internal database of all the files and stubbornly remembers the previous values of ID3 tags, even when they are modified. The database seems to be using an index made from a portion of the title, artist and album tags. Making changes to the ID3 tags does not necessarily cause the system to think there is a new file so it remembers old, stale, values.

The only way I have found to get it to re-evaluate a file it already knows (so it acknowledges the changes) is by changing the end of the title tag. My title tags end up looking like this:

"10-Wish You Were Her o3o"

Quite ugly, but it seems to work. Everytime I make a change to an MP3, I must also modify that suffix to force the system into thinking this is a new file.

My question is, have you run into the same issue and how did you overcome it? Also, do you know of any method to get it to completely clear the database and re-index every file? Using the "Factory Reset" option erases all settings... except the music database ?.

Thanks :)
 
Ok, well I kind of answered my own question: going into the dealer settings, you can perform a "Memory Initialization" that will wipe out the HU media song database. Next time you plugin a USB key it will be re-indexed from scratched.

But, just like @decibel I'm now running into the issue that it seems Gracenote metadata is overriding the values present in the ID3 tags. I can confirm as any recent album uses the metadata from the ID3 tags but old ones use the Gracenote metadata, as I assume the Gracenote metadata database is a couple years old.

Sigh...

Has anybody found a way to disable Gracenote? If it is not possible, the only hack I could think of is to update it's database with a blank one.
 
When i first got my 2018 I ran into issues with the MP3 indexing - similar to what's been posted here -
Most items play in alphabetical order, and occasionally one album is fine and play in correct track order.

My music collection is saved in this format:
Music Folder
Artist - Album Name
Track Number - Track Name
Folder.jpg (album art)

98% of all albums and tracks are also complete with correct ID3 tags.

What I noticed about the Head Unit in the Crosstrek I have is that it pulled data from both the ID3 Tags & Windows File name.
When I create a USB stick for use in the car I need to copy all items to my PC and modify the ID3 Tags prior to copying to USB for use in the car.
Note: work on copies of your music for use in the car - not the originals.

Pull all albums into a directory and use your favorite MP3 tag editor to view metadata tags -
If you can view all sub-folder data for your temp music directory vs 1 sub-folder at a time it makes this process faster. Tag & Rename is the Utility I use and it supports this feature.

Highlight all items in the 'Title' field (these are the ID3 Track names) as well as Track # and remove that data for all albums/songs.
Then copy to your USB media for use in the car.

I believe if the ID3 Track names exist these get alphabetized, if they are not present, ID3 track data or Windows file name data (mine all contain track info as well) are used. Either way - the albums play in correct order.

If you have a lot of Soundtrack or Various Artist albums you're on your own - those have inherent challenges not specific to the head unit in question.
 
Ha, Abbey Road is always my test case for track order and gapless playback. :)

Yes, that would work, if you are sure each write has completed before starting the next one. I haven't tried that technique on a Windows machine, but I would think that once the flash drive's LED stops flashing, the write is completed and you can start the next one. Or, to be sure, you could eject and remount the drive after each track; I know that would force the write to finish. But it would be super tedious.
It shouldn't be this difficult, no? Has anyone bitched at Subaru for addressing what should be a relatively simple task of displaying artists in alphabetical order, once on that artist the albums in that folder, then once in that album, the songs on that album! One shouldn't have to fiddle $%#@ and waste a bunch of time on this. Does Subaru monitor these forums?
 
Okay, so today I plugged in a flash drive containing 8653 random tracks in a single folder with sequentially ordered numerical filenames: 0001.mp3, 0002.mp3, 0003.mp3, and so on through 8653.mp3. These files all contain only ID3v2 tags (no ID3v1 tags in any file) with the following frames populated:

TIT2 (Title)
TPE1 (Artist, actually Lead Performer as far as the frame description puts it)
TALB (Album)
TRCK (Track number)
TCON (Genre)
TLEN (Length, in samples)
TYER (Year)

The result is that the tracks are played alphabetically by title, starting with the 7654th track in the complete alphabetized list. So it apparently will index the entire list, but only wants to play the last 1000 songs.

I know the car is reading the tags because there's no title information anywhere else in the files or filenames, and because the artists displayed on the screen are formatted Lastname, Firstname as I have them in my tags. (Don't ask, it's a long story.) So I conclude that it's stupidly alphabetizing by the TIT2 frame of the ID3v2 tag.

I can see a couple of possible workarounds for this.

One possibility is to prepend sequential alpha characters or numeric characters to the TIT2 tag frame contents, as I mentioned before. The drawback is that the prepended characters would appear in the display.

Another possibility might be to put each file in a separate numbered subfolder. So instead of this:

View attachment 288812

Do this:

View attachment 288814

This would be a colossal pain in the *** to do manually, but easy to script. The drawback is I don't know how many subfolders the car can cope with. It clearly gets confused with more than 1000 tracks to deal with.
However viable, that is just crazy and a complete waste of time.
 
As an Ambassador I have forwarded items of interest to Ambassador honchos and to dealership owners and managers. What they choose to do with it I never know, but I figure I've done my duty. When I tried to warn them of all of the complaints on the second gen head units they thought I was being overly sensitive.
 
  • Like
Reactions: HeyChris
As an Ambassador I have forwarded items of interest to Ambassador honchos and to dealership owners and managers. What they choose to do with it I never know, but I figure I've done my duty. When I tried to warn them of all of the complaints on the second gen head units they thought I was being overly sensitive.
What's it take to be an Ambassador? I have no problem lighting a fire under their @$$.
 
Thanks dwasifar,
This was helpful.

I think I figured out how our HU handles USB media after experimenting a bit.

Short answer: Looks like a gracenote database is built in the HU and it tries to identify songs and pull related metadata, overriding the tag info!

Long answer:
I use an application called Metadics on mac to edit audio tags.

1) I deleted all tags from all songs, and inserted the USB drive in the HU. --> No metadata was listed (everything was "unknown")
2) I manually created a single tag for a single song (ID3v1), with only the name of the track and the artist. --> the HU managed to identify the genre of that particular track only..
3) After manually re-tagging MP3s with track name and artist --> the HU managed to identify the songs, and even in some cases was displaying an album artwork (different from what I originally has in my tags).

Note: When I initially inserted the newly-updated USB drive, there was a discrete message (bottom left) "powered by gracenote" and another message (top left) "updating".
I believe it is:
Metadatics 4+
Audio Metadata Editor
 
Any updates on this- I've scoured the internet and nada. I saw a guy with a Mazda figure out how to disable Gracenote via interrupting an update install- I'll try that if it's even a thing. i have a 22' WRX HK system and kind of sick of seeing random artwork show up for my carefully sourced CORRECT tags.
 
Another bump, asking if anyone found a way to disable gracenote? The head unit in my 2023 Crosstrek Limited does this too - ignores the Artist name stored in ID3 tag and instead replaces it with something else that looks similar. So for example, "The Midnight" becomes "Midnight Oil" and "Set the Sun" becomes "As the Sun Sets."

Hate it when our digital overlords think they know better. :(

Image
 
21 - 36 of 36 Posts