0

我已经为此工作了几个小时,并且尝试了从break语句if到创建索引变量的所有方法。我似乎找不到阻止声音/音乐播放的方法。我的目标是按“Q”并停止函数并while循环以开始另一个while循环。

import keyboard
import time
from playsound import playsound

#this handles the name that is displayed and makes it easier to input
def Song(type,opt):
        time = 1
        print(opt)
        playsound(type)

print('''Enter Your Music Selection:
O) Overworld
F) Fighting
B) Boss-Strong Enemy
V) Victory
I) Inside-Taven-Shop
D) Dungion
L) Lose-Death
    ''')

while True:
    while keyboard.is_pressed('O'):
        Song('MusicStuff/test0.wav','Overworld Theme')

    while keyboard.is_pressed('F'):
        Song('MusicStuff/TrashLine.wav','Fighting Theme')
4

1 回答 1

1

Playsound 由一个函数组成,它只播放声音,不做任何其他事情。这就是您无法“停止”该功能的原因。

如果你想要更多的交互性,你必须使用不同的库。您可以使用 pyaudio。

看看这篇文章。

使用 playsound 模块停止音频

于 2021-08-19T22:55:43.533 回答