python_简单的声音播放功能

这篇博客介绍了如何在Python中使用winsound模块来播放Windows系统的声音,包括退出声音和默认声音。通过winsound.PlaySound()函数,可以指定SND_ALIAS参数来调用系统预设的声音。
摘要由CSDN通过智能技术生成
闲来无事,随便看看Python 3.0的文档,发现了一个很pythonic的模块:声音播放 for windows;凑个流行语叫做“很傻很天真”,不过挺好使得。

1>winsound.Beep
2>winsound.PlaySound()

每一个都有不同的用法,一个一个来看吧。
1>winsound.Beep(frequency, duration)
  PC扬声器滴的一声,就是它了。第一个参数frequency表示分贝数,大小在37到32767之间。第二个参数是持续时间,以毫秒为单位(有耐心的话可以试试winsound.Beep(32767,9999999),嘿嘿)。
2>winsound.PlaySound

  1. import winsound
  2. # Play Windows exit sound.
  3. winsound.PlaySound("SystemExit", winsound.SND_ALIAS)
  4. # Probably play Windows default sound, if any is registered (because
  5. # "*" probably isn't the registered name of any sound).
  6. winsound.PlaySound("*", winsound.SND_ALIAS)
不过只能播放wav,不能播放wma和mp3文件,这2种还需要其他包的支持。

Python中,你可以使用tkinter库来创建GUI应用程序,并使用PyAudio库来播放声音。要在tkinter应用程序中播放声音,你可以使用PyAudio库加载音频文件并播放它。下面是一个简单的示例代码来实现这一功能: ``` import tkinter as tk import pyaudio import wave def play_sound(): chunk = 1024 file = "path_to_audio_file.wav" # 打开音频文件 wf = wave.open(file, 'rb') # 初始化PyAudio p = pyaudio.PyAudio() # 打开音频流 stream = p.open(format=p.get_format_from_width(wf.getsampwidth()), channels=wf.getnchannels(), rate=wf.getframerate(), output=True) # 读取音频数据并播放 data = wf.readframes(chunk) while data: stream.write(data) data = wf.readframes(chunk) # 关闭音频流和PyAudio stream.stop_stream() stream.close() p.terminate() root = tk.Tk() # 创建一个按钮来播放声音 play_button = tk.Button(root, text="播放声音", command=play_sound) play_button.pack() root.mainloop() ``` 在这个示例代码中,你需要将`path_to_audio_file.wav`替换为你要播放的音频文件的路径。然后,当你点击"播放声音"按钮时,音频文件将被加载并通过你的电脑扬声器播放出来。请确保你已经安装了tkinter、PyAudio和NumPy库并正确导入它们。<span class="em">1</span> #### 引用[.reference_title] - *1* [GuitarTuner:用Python,Tkinter和PyAudio制作的吉他调谐器程序](https://download.csdn.net/download/weixin_42131790/15254962)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值