Issue #37 open

pygame.mixer.music.load doesn't work with unicode symbols in path

illume
created an issue

== Vasiliy, 2009-09-01 11:32:23 -0700

{{{ This method doesn't work with unicode symbols in os path. For example: audiofile = u'D:/Work/Projects/Programming/iTutor/src/iTutor/dictionaries/Казахо - Русский/3.mp3' pygame.mixer.music.load(audiofile)

return error: pygame.error: Couldn't read from 'D:/Work/Projects/Programming/iTutor/src/iTutor/dictionaries/Казахо - Русский/3.mp3'

if i'm delete 'Казахо - Русский/' from audiofile variable then method working normally. }}}


Comments (3)

  1. illume reporter
    • changed status to open
    • changed milestone to 1.9.2

    This works with oggs and wavs on OSX.

    I assume this is another smpeg error. Or perhaps a windows related error.

    Needs testing on windows.

  2. Lenard Lindstrom

    According to the Python 2.7 sys.getfilesystemencoding() docs no encoding is done to the file path. So the UTF-16 Python string is just passed through. I don't know what encoding Windows uses, thought.

  3. Anonymous

    I think this might be a bytes/unicode misunderstanding: I've tested this only on linux, on an utf8 filesystem, but pygame.mixer.music.load('<utf8 encoded string>') worked, whereas pygame.mixer.music.load(u'<utf8 encoded string>') didn't., but pygame.mixer.music.load(u'<utf8 encoded string>'.encode('utf8')) again did.

  4. Log in to comment