python - 连续按4次后几秒不播放音效?
问题描述
如果连续四次按下相应的按钮(播放音效),Pygame 音效不会播放几秒钟。我目前正在尝试使用钢琴的不同键。
我试过删除 pygame 时钟对象。我已经尝试将 Sound.play() 变成一个函数,如代码中所示。
import pygame
pygame.init()
###LordKeys###
A5 = pygame.mixer.Sound('PianoKeys/A5.wav')
A6 = pygame.mixer.Sound('PianoKeys/A6.wav')
def A56():
A5.play()
A6.play()
###############################################
run = True
win = pygame.display.set_mode((700,700))
pygame.display.set_caption("Piano Gen")
while run:
win.fill((255,255,255))
for event in pygame.event.get():
if event.type == pygame.QUIT:
exit()
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_a:
A56()
pygame.display.update()
预期结果:按键时播放的音效,与频率无关。
解决方案
所以我决定在一个频道上播放声音,这解决了问题!
def A56():
channel1.play(A5)
channel1.play(A6)
推荐阅读
- apache-spark - 在 Spark 2.4 上的 pyspark.sql.functions.max().over(window) 上使用 .where() 会引发 Java 异常
- gtk - 在 gtkada (GTK3) 中获取小部件的当前/默认字体
- python - 尝试删除 python 中的第一行失败?
- android-studio - 父 RecyclerView 未从子活动更改更新并取消协程支持
- javascript - 如何使用 Gulp 4 连接导入的 js 库?
- c - 在 sprintf 中使用节点元素
- python - 使用 sorted() 时键可选参数的行为
- metrics - 使用千分尺的 Datadog 事件
- java - Spring Boot 热部署 jar 并取消部署
- haskell - GHC 如何处理核心中的类型类和实例?