FluidSynth / fluidsynth

Software synthesizer based on the SoundFont 2 specifications
https://www.fluidsynth.org
GNU Lesser General Public License v2.1
1.89k stars 259 forks source link

Unicode command line string support on Windows. #1410

Closed ghost closed 1 month ago

ghost commented 1 month ago

Related discussion

https://github.com/FluidSynth/fluidsynth/issues/880#issuecomment-835744776

Is your feature request related to a problem?

When using the Fluidsynth on windows : Now, the command line supports ANSI strings, but not non-ANSI strings. This can sometimes cause problems in multilingual environments.

To be precise, this is not a bug, is a limitation of the ANSI command line interface. Windows users generally only use ANSI strings, so they will have less trouble using Fluidsynth. The maintainers seem to be very busy with more important issues. So this update may not be a high priority.

Describe the solution you'd like

If the command line supported UNICODE strings, the Fluidsynth users would be able to use UNICODE strings in filenames or devicenames, and then more freeing from character encoding issues.

Describe alternatives you've considered

Updating the command line interface from ANSI to UNICODE. The libfluidsynth functions already support utf-8 strings, so there aren't many updates.

Additional context

The code below need some changes:

new_codes.zip

pedrolcl commented 1 month ago

Now, the command line supports ANSI strings, but not non-ANSI strings.

That is not true as an absolute sentence.

This can sometimes cause problems in multilingual environments.

This is a vague sentence and cannot be verified as-is. We need a concrete example that can be reproduced.

Some issues have already been reported related to the use of Unicode arguments: #128, #983, #1322, #1388 and then supposedly fixed by #718, #1325, and #1390. What is exactly not working?

ghost commented 1 month ago

All the answers to your questions can be found by looking at the Fluidsynth source code. I can't explain it more precisely than that. Thank you.

pedrolcl commented 1 month ago

All the answers to your questions can be found by looking at the Fluidsynth source code. I can't explain it more precisely than that. Thank you.

@stardusteyes : This answer is quite arrogant on your part. I would understand if you say that you are not proficient in English, but in PR #1411 you wrote something that would be more fitting here on this issue report:

Tested with non-ANSI characters.
for example:

    ♬.sf2
    ♬.mid
    ♬.wav

In this case, an error will occur when running with Fluidsynth 2.3.7.
And the file names are not displayed correctly.

    Parameter '?.sf2' not a SoundFont or MIDI file or error occurred identifying it.
    Parameter '?.mid' not a SoundFont or MIDI file or error occurred identifying it.
    Rendering audio to file '?.wav'..
    fluidsynth: error: Failed to open audio file '?.wav' for writing

@derselbst I would label this report as invalid.

Also: in the light of the recent xz backdoor disaster I would be very careful with contributions from random anonymous actors.

ghost commented 1 month ago

Yes, you're right! I don't understand English at all. I'm just pasting the results of Google Translate into this sentence, and I can't answer complex questions correctly.

By the way, are you suggesting to close this issue? I would like #1411 to be merged. But if you think it shouldn't be merged, please ask the maintainer to close this issue. I think the pull request will be closed automatically.

See you.

ghost commented 1 month ago

I'm closing this issue with the comment that this is not important.