我想在Python 3.4中播放.wav文件。另外,我希望python播放文件而不是python打开文件在VLC,媒体播放器等播放。
作为一个后续问题,我有没有办法将.wav文件和.py文件合并到一个独立的exe文件中。
如果它是愚蠢的,请忽略问题的第二部分,我对编译python一无所知。
另外,我知道有关于.wav文件的其他问题,但我没有找到一个在我描述的方式在python 3.4中工作的问题。
答案 0 :(得分:3)
我通过使用模块pyaudio修复了问题,并使用模块wave来读取文件。 我将输入示例代码来播放简单的wave文件。
import wave, sys, pyaudio
sound = wave.open('Sound1.wav')
p = pyaudio.PyAudio()
chunk = 1024
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)
答案 1 :(得分:2)
使用pyaudio
可能会因速度而导致播放错误,请考虑:
sudo apt-get install python-pygame
视窗:
choco install python-pygame
?
def playSound(filename):
pygame.mixer.music.load(filename)
pygame.mixer.music.play()
import pygame
pygame.init()
playSound('hellyeah.wav')
答案 2 :(得分:0)
如果您碰巧正在使用linux,则一个简单的解决方案是调用aplay。
import os
wav_file = "./Hello.wav"
os.system(f'aplay {wav_file}')