Sonos not supporting Unicode UTF-8 (or any other UTF variant), only ASCII/ANSI

  • 31 March 2015
  • 5 replies
  • 1465 views

Hello,

Over the past years, I have managed all my music using iTunes, i.e. converting albums to the proper format and creating playlists. During all those years, I had to convert the playlists (the m3u files) from the Unicode UTF-8 encoding to ASCII/ANSI (this is the default Windows Encoding) coding since the Sonos players do not support UTF8. This is a multi-step process which is very prone to errors (don’t ask me why since this shouldn’t be necessary at all).

ASCII is well and truly dead and buried. See this quote from https://answers.yahoo.com/question/index?qid=20100927014115AAiRExF:
"Nowadays both ASCII and ANSI character sets are most effectively obsolete as we now have Unicode which currently provides 107,156 characters in a single character set and is expanding. See http://www.unicode.org/charts/ ." Other sites with similar wording can be found.

My question is: when do you, Sonos, finally change the software of the players (I have two, the Connect and the Connect:Amp) so that they do accept playlists in the Unicode-UTF8 encoding? And without being too picky on whether or not each line is ending with either CR/LF/CRLF (Carriage Return / Line Feed)? Other players, like the Samsung crap and Logitech junk are not picky at all when it comes to which character set is used (tested both...).

So please, please, please, forward this to the software development and ask them to implement this.

Thank you in advance.

With kind regards,

Sjoerd Herder

ps1:
Just a short answer on the “why” (of the first paragraph of this message).
The Unicode UTF8 encoding for characters like ë and á (just to name 2 out of the many) are not properly recognised by ASCII/ANSI systems.
Since iTunes exports its playlists in the Unicode UTF-8 (with CR) encoding, the playlists have to be converted to ASCII/ANSI with CRLF to get them to work on Sonos components

The message generated by the Apple OSX controller:


What it looks like in the playlist file:


The file on the share:


ps2:
This is what I have to do to get the playlists compatible with Sonos (step E is not to solve the encoding issue, this is needed since the playlist iTunes generates refers to the files on the computer, whereas I need it to point to the files on the share):
A.
  Save the playlists from iTunes in folder “01_iTunes”, as M3U files.
B.
  Open all playlists in TextEdit.
  Hit CMD-SHFT-S to create a duplicate.
C.
  Move this duplicate to folder “02_Western”.
  Save it with “Western (Windows Latin 1)” encoding.
  You do this by going to “File->Move To…”or hit CTRL-OPT-CMD-M
D.
  Copy all playlists in folder “02_Western” to folder “03_FixedURL”.
E.
  Open all playlists in folder “03_FixedURL” in BBEdit.
  Replace the following:
  /Volumes/Personal SSD/iTunes/iTunes Media/Music/
  With:
  //192.168.0.40/VAULT/Media/Music/
  Do this as a multi-file search-and-replace (SHFT-CMD-F)
  Save these fixed playlists.
F.
  Copy all playlists in folder “03_FixedURL” to folder “04_FixedEOL”.
G.
  Open all playlists in folder “04_FixedEOL” in BBEdit.
  Do a “Save As” (SHFT—CMD-S) and change the end-of-line parameter to CRLF.
H.
  Copy files to folder “05_Current” and to the appropriate folder on the share.
I.
  Update the music library of the Sonos system.

This topic has been closed for further comments. You can use the search bar to find a similar topic, or create a new one by clicking Create Topic at the top of the page.

5 replies

Userlevel 7
Badge +26
Hi Sjoerd,

Thanks for the detailed description here, we really appreciate it. There's a similar question and discussion here from our forums. The last post has a workflow that seems a bit easier than the one you're using.

I'll pass the suggestion over to our development team and switch this thread over to an Idea for you, that way people can follow the status in case there is any news in the future. 
This is realy pain to see hieroglyphs instead of song/artist's names ... Please do something!
I have found the unix "recode" command useful for converting playlists from UTF-8 to ISO-8859-1. On windows it can be installed as part of the Cygwin utilities, and there is probably a way to get it installed on Mac OSX, though it does not appear to be there by default on the one I checked. The command "recode utf8..l1 FILENAME" will change the encoding to one readable by Sonos, and it will run on a whole set of files in a directory by putting *.m3u for the filename, which can dramatically simplify some of the complex workflows described in this and the other forum thread.

Having said all of that, my reason for taking the time to post here is to explain why even this solution is not always adequate and why the lack of support for UTF-8 is a bug and needs to be fixed. The conversion method I have described above works on the majority of my playlists that have special characters in them, as long as all of the special characters in the file can be simultaneously represented by one of the ISO-8859 encodings. However, the ISO-8859 encodings are considered obsolete because of the fact that they are not able to represent all characters simultaneously in a single file. They are workarounds designed to support some predefined subsets of special characters that occur in some European languages, but can't necessarily represent all of them simultaneously. I have a few playlists which are impossible to convert (the recode utility returns an error) because I have file names containing various characters that can't be encoded. The only remaining workaround is to rename the files. I may do that on the offending files, but I shouldn't have to. As others has pointed out here, other products handle this fine. I came to Sonos from a Logitech system which correctly handled the playlists. I feel like the Sonos system is superior in many ways, so it's surprising to me that this bug exists in a product that has been around for so long.
Even in 2019 that same annoying issue is still in the Sofon products.. just unbelievable...:@
Badge +2

Most of my music is on my Windows 10 PC under c:\Data\Ceòl. Originally when I pointed S1 (several years back) at this path, everything worked fine. Some while back I noticed that the S1 app on my Android no longer displayed the ò i.e. it showed the path as c:\Data\Cel but as it was playing everything fine, I assumed a temporary bug. Now I made the mistake of accepting the “upgrade” to S2 and I can no longer play ANY mp3 in said folder. The music on a different system which has no non-ASCII character in the path appears to be playing ok so I’m beginning to think that there’s a bug in S2 that got carried over from some S1 update a while back that creates a problem with non-ASCII characters.

And before anyone suggest I change the folder name, this is 2020, an o grave should not be an issue in a folder path and in any case, most of my music is international and I have too many folders to making changing their names to avoid non-ASCII characters feasible, even if I wanted to.

So how do I fix this? Though I suspect this is one for the devs to fix.