2015-04-21 4 views
3

Так что я работаю с этой игрой, в которой я хочу иметь фоновую музыку и запускать ноты, используя MIDI-выход. Музыкальный фон также должен быть в формате MIDI. Короче говоря, у меня есть что-то вроде:Сочетание фоновой MIDI-музыки с выходом MIDI в pygame

pygame.init() 
pygame.midi.init() 

pygame.mixer.music.load("background.mid") 

# I have 2 midi devices available, have tried with both 
output = pygame.midi.Output(pygame.midi.get_default_output_id()) 
pygame.mixer.music.play() 
... 

... И как только он пытается воспроизвести музыку, он падает. Не трассировка, но «pythonw.exe перестает работать». Я не уверен, как работает MIDI, но я думаю, что музыка и выход противоречат друг другу, потому что они пытаются использовать одни и те же устройства. Мой вопрос: есть ли способ обойти это или я должен использовать другой формат для музыки?

ответ

0

Попробуйте этот небольшой фрагмент кода, и он должен работать нормально:

import pygame 
import time 

pygame.mixer.init() 
pygame.mixer.music.load("background.mid") 
pygame.mixer.music.play() 

time.sleep(10000) 

На самом деле, просто попробуйте несколько процессов этого сценария, и вы не должны иметь никаких проблем ни.

+0

Эй! Извините, я никогда не замечал вашего ответа, когда вы его сделали. В любом случае, спасибо, но я не мог позволить себе спать десять секунд (мне нужно продолжать работать в то же время). В конце концов, я просто использовал wav для фоновой музыки и midi для входа в реальном времени. Как я уже сказал, спасибо за ответ! –

Смежные вопросы