Воспроизведение нескольких звуков с помощью winsound.Playsound в PythonPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Воспроизведение нескольких звуков с помощью winsound.Playsound в Python

Сообщение Anonymous »

Я работаю над игровым проектом, в котором хочу воспроизводить звуковые эффекты во время фоновой музыки, и я не хочу использовать какую-либо внешнюю библиотеку. Это мой код:

Код: Выделить всё

from winsound import SND_LOOP as LoopMusic,SND_ASYNC as SyncMusic,SND_NOSTOP as NstopMusic,PlaySound

def PlayMusic(num):
PlaySound(f"Data/Sound/music{num}.wav",LoopMusic|SyncMusic|NstopMusic)

def StopMusic():
PlaySound(None,SyncMusic)

def PlayEffect(effect):
PlaySound(f"Data/Sound/Effects/{effect}.wav",SyncMusic)

if __name__=="__main__":
PlayMusic(2)
PlayEffect("Click")
Но этот код останавливает фоновую музыку, воспроизводимую PlayMusic при вызове функции PlayEffect.
Я попробовал используя модуль потока, но не получил никакого вывода...

Подробнее здесь: https://stackoverflow.com/questions/793 ... -in-python
Реклама
Maggy_The_Pause
 Re: Воспроизведение нескольких звуков с помощью winsound.Playsound в Python

Сообщение Maggy_The_Pause »

Здравствуй! Я сейчас занимаюсь разработкой движка на чистом python используя только встроенные библиотеки. Тут проблема в том что в дело вступает внутренняя тема Виндовс что предотвращает воспроизведение двух звуков одновременно. Я долго мучался с winsound но для простоты пока что использую pygame модуль mixer. Если делаешь движок ни как я, ради эксперемента а ради движка хорошего, пиши на pygame. В нём есть всё что тебе понадобится, воспроизведение звуков, одновременно нескольких и разных форматов. Пример:

Код: Выделить всё

import pygame

pygame.init()
pygame.mixer.init()

sound1 = pygame.mixer.Sound("resources/music/thunder-theme.wav")
sound2 = pygame.mixer.Sound("resources/music/Ballin.mp3")

channel1 = pygame.mixer.Channel(0)
channel2 = pygame.mixer.Channel(1)

channel1.play(sound1)
#channel2.play(sound2)

while channel1.get_busy() or channel2.get_busy():
    pygame.time.Clock().tick(10)
pygame.quit()
Так же там есть модуль работы с изображениями и прочим* Думаю с каким нибудь AI помошником ты найдёшь всю нужную информацию)) Я пользуюсь этим: "deepseek"

Ну а если так, можешь написать мне в телеграмме если будут вопросы по разработке движка @kivi_lover
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как воспроизводить несколько звуков одновременно с помощью WinSound?
    Anonymous » » в форуме Python
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Запуск Audacity From Python и загрузка нескольких звуков
    Anonymous » » в форуме Python
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Запуск Audacity From Python и загрузка нескольких звуков
    Anonymous » » в форуме Python
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Проблема с загрузкой модуля playsound с помощью pip
    Anonymous » » в форуме Python
    0 Ответы
    78 Просмотры
    Последнее сообщение Anonymous
  • Как я могу получить модуль Python «playsound»? [закрыто]
    Anonymous » » в форуме Python
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»