Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: FLAC tags not displaying in Windows Explorer - My Findings (Read 705 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

FLAC tags not displaying in Windows Explorer - My Findings

Hello,

There's a bug in the Windows Explorer that has been bothering me for a bit: Some FLAC tags just weren't displayed in the windows Explorer, while showing up fine in Foobar2000 and pretty much every other music player. I did some surface level attempts at fixing it, but they didn't work, So since it wasn't really a high stakes issue for me, I just ignored it until today where I decided to look into it.
Here's what I found:

It seems that the Windows FLAC tags "reader" can only handle FLAC headers up to a size of 4 MBs, after which it stops reading the file and displays all tags as empty. Now some of you may think "how did you get FLAC tags larger than 4 MBs?" Now the answer to that is actually pretty simple: Images! You can reach this limit pretty quickly if you have high resolution or multiple images (for example front/back cover, artist or disc) embedded in your tags.

The consequences of having 4 MB+ headers are pretty minuscule: Windows Explorer and the Groove Music App (yes, it's still around) can't read your tags and Windows Media Player (also still kickin' around) can't even play these files back. If you have files with large headers, you have to decide for yourself if you want to reduce their size. For not much gain if I'm honest.

But if you wanted to do it, how would you go about it? You could of course manually downscale all your images, but the most efficient way is probably the "Adjust cover" action in MP3Tag, where you can downscale all images to a specified resolution. After you've done this, the freed up area in the header is just nulled out and Explorer still can't read them. To decrease the header size, you need to Shift-Right click on the file in Foobar2000 and select "Utilities" -> "Optimize file layout + minimize file size".
Now Windows should display your tags!

I've also spotted a few edge cases where the images were definitely smaller than 4 MB, but Windows still didn't pick their tags up. A "minimize file size" like before also fixed these.

I wanted to share the results of my little investigation and hope these findings are useful or at least interesting to someone here!  :)

Re: FLAC tags not displaying in Windows Explorer - My Findings

Reply #1
A flac with 6 MB cover art:
Code: [Select]
METADATA block #3
  type: 6 (PICTURE)
  is last: false
  length: 6259208
  type: 3 (Cover (front))
  MIME type: image/png
  description:
  width: 1408
  height: 1056
  depth: 48
  colors: 0 (unindexed)
  data length: 6259167
  data:
    00000000: 89 50 4E 47 0D 0A 1A 0A 00 00 00 0D 49 48 44 52 .PNG........IHDR
...

Seems to work:
X

Re: FLAC tags not displaying in Windows Explorer - My Findings

Reply #2
A flac with 6 MB cover art: (...) Seems to work
Interesting. I ran two of my FLACs with headers near 4 MB through metaflac.
Tags show up in Explorer
Code: [Select]
METADATA block #3
  type: 6 (PICTURE)
  is last: true
  length: 4178514
  type: 3 (Cover (front))
  MIME type: image/jpeg
  description:
  width: 3000
  height: 3000
  depth: 24
  colors: 0 (unindexed)
  data length: 4178472
  data:
    00000000: FF D8 FF E0 00 10 4A 46 49 46 00 01 01 01 00 60 ÿØÿà..JFIF.....`
Tags don't show up
Code: [Select]
METADATA block #3
  type: 6 (PICTURE)
  is last: true
  length: 4209376
  type: 3 (Cover (front))
  MIME type: image/jpeg
  description:
  width: 3000
  height: 3000
  depth: 24
  colors: 0 (unindexed)
  data length: 4209334
  data:
    00000000: FF D8 FF E0 00 10 4A 46 49 46 00 01 01 01 00 60 ÿØÿà..JFIF.....`

It also breaks when I use a PNG larger than 4MB
Code: [Select]
METADATA block #2
  type: 6 (PICTURE)
  is last: true
  length: 4207143
  type: 3 (Cover (front))
  MIME type: image/png
  description:
  width: 1500
  height: 1500
  depth: 24
  colors: 0 (unindexed)
  data length: 4207102
  data:
    00000000: 89 50 4E 47 0D 0A 1A 0A 00 00 00 0D 49 48 44 52 %PNG........IHDR

I'm on Windows 10 20H2. What's your Windows version?

 

 
SimplePortal 1.0.0 RC1 © 2008-2021