Support and General Use > Audio Playback, Database and Playlists

Some characters are shown incorrectly on the playing menu

<< < (2/2)

bahus:
To return old behavior change Settings -> General Settings -> Display -> Default Codepage to Latin1 (default was changed to UTF-8)

jsr_278:
Thank you very much for the information, I didn't know about the codepage encoding. I tried both solutions and they work absolutely fine.

speachy:

--- Quote from: iPodVT on April 09, 2025, 07:22:58 PM ---If you are able to explain in a brief sentence or less, please tell us what changed in Rockbox that made these tags start displaying differently?

And I don't understand why the first 'é' in "Dédé" would display as a char that looked like a question mark in a circle while the second 'é' would simultaneously display as a dotted rectangle char, when the font is set to 14-Rockbox-Mix?

--- End quote ---

https://en.wikipedia.org/wiki/Character_encoding has a very comprehensive explanation of how this works.

But the shorter answer:  The byte sequences in the metadata are presumably Latin1, for which each byte equals one "letter" but limits you to a max of ~220 possible individual letters.  This is completely inadequate for representing the *1.1 million* (or so) characters currently defined, which is why modern encoding systems use multiple bytes to encode each letter, allowing multiple lanuguages to be displayed simultaneously.  UTF-8 in particular uses _variable_ numbers of bytes per letter in an attempt to be more efficient wile still maintaining 1:1 compatibility with the OG encoding, ASCII (which only defines ~90 letters)

So while the byte sequences in your metadata are valid under Latin-1, they represent _invalid_ UTF8 sequences, which causes the decoder to hiccup and produce garbage before it re-synchronizes at the next valid sequence.  As those two 'é' have different bytes preceding them, they decode differently.

iPodVT:
Thanks very much, speachy, for all of the information.

And thanks, jsr_278, for initiating this topic.

Navigation

[0] Message Index

[*] Previous page

Go to full version