Samples/Wavetables With Certain Filenames Are Ignored, Some Characters Are Displayed Incorrectly

Bug Description

  1. Samples with a length (including extension, but not the full path) of 80 characters or more simply don’t show up in the sample selector. Other characters like “ä” are displayed as a white square.

Steps to Reproduce

  1. Rename a sample to 79-😀45678901234567890123456789012345678901234567890123456789012345678901234.wav
  2. Rename another sample to 80-3456789012345678901234567890123456789012345678901234567890123456789123456.wav
  3. Rename another sample to 79-ä45678901234567890123456789012345678901234567890123456789012345678901234.wav
  4. Rename another sample to 79-345678901234567890123456789012345678901234567890123456789012345678901234.wav
  5. Change the engine to grains and select a sample, you’ll only see the last two, and one has a white square where the “ä” would be.

Occurrence / Frequency

Always

Found in Firmware

  • Version: 1.0.1
  • Build: 1459

Attachments

Here’s more information about related behavior in scenes and presets:

I did not file that as a bug, because nobody’s going to run into that anyway. Might still be a good idea to reuse the code that truncates scene names on disk to 31 characters :wink:

Some observations based on your findings:

Assuming that filenames can be up to 80 characters long. I’m guessing Long File Name (LFN) support is available (which would support filenames up to 255 chars).

Obviously that’s kinda pointless because the max full filepath limitation is still 260 characters.

So as we discussed in the other topic, most likely there is some code that limits filename lengths.

German Umlauts not displaying correctly could either mean that the system is not fully unicode-aware, uses a wrong encoding or it’s just purely absent in the fonts that Polyend uses.

I’ll report back once we know the actual behaviour and limitations.

And probably the easiest solution to this is to clearly document this is the manual so people are aware of the filename limitations and which chars they are allowed to use (or not use).

1 Like

Hi @Lizard-of-Oz , thanks for logging this issue. Yes, your findings are correct: currently we have limit of 80 characters, which we assumed was plenty since our screen doesn’t display that many anyway. If there is a need we can try to improve this and also use special characters like umlauts, but we’d rather invest our time into bringing more exciting features :slight_smile: I’ll log the issue nevertheless and keep you informed if we come up with a solution.

As a user, I expect samples that I copied successfully to the SD-Card to be usable in the engines. That may not be terribly exciting, until it breaks for you.

I would agree that the main problem here is not (the length of the filename, but that emoji in a filename would cause the file to be invisible to the Synth, simply because emoji in filenames are supported in any file system created in the last 2 decades, and this increasingly common, because they very helpful for categorizing, marking and finding files.

I would also agree that umlauts are not a huge problem, though other languages that rely on other characters might be affected in an entirely different way, which might lead to sample names that consist entirely of white blocks, languages with lots of accents, or those that use Cyrillic script come to mind here.

Again, it these things might be mentioned in the manual (maybe on p. 64, where sample formats are explained), so people can know what to expect.

@synthdawg another suggestion for you :slight_smile:

@Lizard-of-Oz once again thank you for the comment!