Почему у меня кодек "utf-8" не может декодировать байт 0xc4 в позиции 0: проблема с недопустимым байтом продолжения и как ее решить?

Я пытаюсь запустить простой код, чтобы воспроизвести звук wav с помощью playsound (я нашел этот способ воспроизведения звука на каком-то веб-сайте):

from playsound import playsound 
playsound("Piano.wav")

и когда я запускаю его, я получаю ошибку:

Traceback (most recent call last):
  File "C:/Users/user/AppData/Local/Programs/Python/Python38/ьгышсф.py", line 3, in <module>
    playsound("Piano.wav")
  File "C:\Users\user\AppData\Local\Programs\Python\Python38\lib\site-packages\playsound.py", line 35, in _playsoundWin
    winCommand('open "' + sound + '" alias', alias)
  File "C:\Users\user\AppData\Local\Programs\Python\Python38\lib\site-packages\playsound.py", line 30, in winCommand
    '\n    ' + errorBuffer.value.decode())
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc4 in position 0: invalid continuation byte

То же самое для файлов mp3. И я использую Python 3.8

2 ответа

Вы получаете ошибку (275 знак равно MCIERR_FILE_NOT_FOUND) заключается в том, что система не может найти звуковой файл. Вам нужно указать полный путь к файлу, а не только имя файла:

playsound("C:\\Path\\To\\Piano.wav")

Если звуковой файл находится в том же каталоге или подкаталоге, где размещен файл сценария, см. Раздел Как правильно определить текущий каталог сценария? чтобы узнать, как получить путь к файлу сценария во время выполнения.

Обычно вы получаете эту ошибку, когда на вашем пути есть символ, отличный от UTF-8 (например, Ü, Ö...). Старайтесь избегать таких символов в пути к вашему звуковому файлу.

Другие вопросы по тегам