尝试播放音频时,Python 进程以退出代码 -11 结束

问题描述 投票:0回答:1

我正在尝试用 python 为树莓派 3b 编写一个程序,当按下板载按钮时播放随机加载的 .wav 文件,但它会尝试播放声音,然后通过退出停止程序代码-11。该退出代码是什么意思,以及如何修复它。该程序旨在在没有屏幕的情况下在我的人身上运行,因为我编写它是为了在闹鬼的森林中使用。我的计划是在我去上班之前将其设置为运行,然后在必要时按下按钮并吓唬其中一个穿过森林的人。

为了简单起见,这里是我编写的函数和麻烦的代码,而不是程序的其余部分(按钮引脚= 3):

def PlaySound(file):
    with open(Path + file, "rb") as WaveFileRB:
        Wave = WaveFileRB
        pygame.mixer.music.load(Wave)
        pygame.mixer.music.play(loops=0,start=0.0,fade_ms=0)
    while pygame.mixer.music.get.busy() == True:
         continue


while True:
     time.sleep(0.1)
     if GPIO.input(ButtonPin) == GPIO.LOW:
         time.sleep(0.5)
         File = random.choice(SoundFiles)
         PlaySound(File)
     else:
         continue

基本上,我已经尝试用谷歌搜索这个问题,但没有任何东西真正告诉我如何解决它。我得到的最接近的是大约 9 年前在论坛上有人问了与我大致相同的问题,有几个人说一个简单的解决办法就是一起删除 SFX,但我不能这样做,因为它是整个节目要点。

python-3.x raspberry-pi3 exit-code
1个回答
0
投票

在我的 Raspberry Pi 上使用 PyAudio 和线程时,我遇到了非常类似的错误。很多调试都不成功,直到我现在终于将音频播放从

PyAudio
更改为
sounddevice
pip install sounddevice
)并且错误消失了。

您也可以通过用

pygame
包替换您的
sounddevice
播放来解决这个问题。

© www.soinside.com 2019 - 2024. All rights reserved.