【问题标题】:How Do I Play An Audio Whenever I Click On a Specific Key On The Keyboard?每当我单击键盘上的特定键时,如何播放音频?
【发布时间】:2021-04-26 04:27:34
【问题描述】:

所以,我的想法是创建一个程序使用“键盘”模块),当我按下在一个键上(在本例中为“Enter”),会播放一个声音(只播放一次),一旦我停止按下该键,就会播放另一个声音(只播放一次)。 换句话说,NASA 使用一种通信系统,在该系统中,当“通话”开始时,会播放“哔哔声”,当“通话”结束时(如“Over”)再次播放“beeeeep”。 这是我的第一次尝试:

import keyboard
import pygame

def BeepOn():
    pygame.mixer.init()
    pygame.mixer.music.load("Mic On.mp3")
    pygame.mixer.music.play(loops=0)
    pygame.mixer.music.set_volume(0.50)

def BeepOff():
    pygame.mixer.init()
    pygame.mixer.music.load("Mic Off.mp3")
    pygame.mixer.music.play(loops=0)
    pygame.mixer.music.set_volume(0.50)

while True:
    if keyboard.on_press_key('Enter'):
        BeepOn()

    if keyboard.on_release_key('Enter'):
        BeepOff()

    if keyboard.is_pressed('End'):
        exit()

注意: 我希望您只需单击一个键而不是两个键。 我希望我解释得很好! 我期待一个答案(无论它可能多么愚蠢)。 问候, 迪奥戈·马托斯

【问题讨论】:

    标签: python audio pygame keyboard key


    【解决方案1】:

    这里:

    import pygame
    
    #Condition for while loop
    running = True
    
    
    
    def BeepOn():
        pygame.mixer.init()
        pygame.mixer.music.load("Mic On.mp3")
        pygame.mixer.music.play(loops=0)
        pygame.mixer.music.set_volume(0.50)
    
    def BeepOff():
        pygame.mixer.init()
        pygame.mixer.music.load("Mic Off.mp3")
        pygame.mixer.music.play(loops=0)
        pygame.mixer.music.set_volume(0.50)
    
    
    while running:
        
        for event in pygame.event.get():
                #Tests for quit
                if event.type == pygame.QUIT:
                    running = False
                #Tests if enter is pressed
                if event.type = pygame.KEYDOWN:
                  if Event.key == pygame.K_RETURN:
                    BeepOn()
    
                #Tests if enter is released
                if event.type = pygame.KEYUP:
                  if Event.key == pygame.K_RETURN:
                    BeepOff()
    pygame.quit()
    

    我希望这会有所帮助,我对键盘模块不熟悉,所以我只是从 pygame 完成了这一切。 (: 如果这有帮助,请告诉我...

    【讨论】:

    • 谢谢,伙计!我真的很感激。你是最好的!来自葡萄牙的问候!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-06
    相关资源
    最近更新 更多