Python winsound.playsound не может найти мой звуковой файл

Я пытался добавить немного музыки в игру, которую я делаю. Я пытался использовать winsound, потому что он позволяет останавливать звук во время игры. Проблема в том, что winsound не может найти мой звуковой файл.

Я пробовал использовать разные модули, такие как модуль playsound, который прекрасно воспроизводит мою музыку, но winsound по какой-то причине не может. К сожалению, я не могу просто использовать модуль playsound для своей игры, потому что он не позволяет отключать звуки во время игры.

Вот что я пробовал:

#testing if winsound functions
import winsound
import playsound

#The file I want to play, test1.wav, is saved in the same folder as this file.

#Playing the sound using playsound, using a local directory
playsound.playsound('test1.wav') 
#this works and plays the sound as intended

#Playing the sound using playsound, using a global directory
playsound.playsound(r'C:\Users\61490\Documents\Python\pano tiles\test1.wav')
#this also works and plays the sound as intended


#Playing the sound using winsound, using a local directory
winsound.PlaySound('test1.wav', winsound.SND_FILENAME) 
#This only plays the windows default error sound

#Playing the sound using winsound, using a global directory
winsound.PlaySound(r'C:\Users\61490\Documents\Python\pano tiles\test1.wav', winsound.SND_FILENAME) 
#This also only plays the windows default error sound

Кто-нибудь знает, почему это может быть?

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
0
898
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Для меня это работает с winsound.SND_FILENAME так же, как вы пытались, но я знаю, что вы можете заменить тег SND_FILENAME на SND_ALIAS, и это должно работать, но, поскольку другой способ не работает для вас, возможно, что он все равно не будет работа.

Итак, это должно дать вам следующее:

import winsound

# From a local directory
winsound.PlaySound('test1.wav', winsound.SND_ALIAS)

# Form a global directory
winsound.PlaySound(
    r'C:\Users\61490\Documents\Python\pano tiles\test1.wav', 
    winsound.SND_ALIAS
)

Поэтому, если он не уверен, что вы правильно установили библиотеку или

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