import pygame,sys
pygame.init()
size = 40,40
screen = pygame.display.set_mode(size)
LEFT = 1
s = pygame.mixer.Sound("Sound.wav")
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
elif event.type == pygame.MOUSEBUTTONDOWN:
if event.button == LEFT:
s.play()
現在、私はPygameを使ってゲームを作ろうとしています。マウスをクリックするたびにサウンドが再生されるように設定しました。一度に1つの効果音しか聞こえないので、それはすべて機能しますが、私は本当に迷惑になります。非常に早く7回クリックすると、4〜6音しか聞こえないことがあります。私が2回非常に素早くクリックすると、私はただ1つのサウンドが聞こえます。何とかPythonの音が重なり合うようにすることはできますか?
私はPygameサウンドのオーバーラップに関する他のさまざまな質問をしました(これはpygame.mixer.Channelと関係がありますが、わかりません)。これまで私は何も働いていませんでした。何か案は?
私はそれを適用しても何の違いもないようです。私はまだクリック音よりも音が少なくなっています。私は今のところそれを保つだろうと思う。しかし、応答に感謝します。 –
@ShawnSongオーバーラップをよく聞くために長いテストサウンドを試したことがありますか?また、アプリが最初に読み込まれた直後にすぐにクリックを開始すると、音が聞こえなくなるので、数秒間待ってから急速にクリックしたときに何か変わったかどうか確認してください。また、デフォルトで 'pygame.mixer.get_num_channels()'が実際に8であるかどうかを調べるために 'pygame.mixer.get_num_channels()'をチェックしても問題ありません。 – CodeSurgeon
おそらく私が使っているバージョン(Python 3.3)でしょうか?私はpygame.mixer.find_channel()がオンラインの他の人のために働くのを見たことがあるが、私にとっては違いはない。 pygame.mixer.get_num_channels()は8を返します。私はすでに試した。 –