玩wav文件python 3

时间:2014-08-23 13:04:19

标签: audio python-3.x exe wav

我想在Python 3.4中播放.wav文件。另外,我希望python播放文件而不是python打开文件在VLC,媒体播放器等播放。

作为一个后续问题,我有没有办法将.wav文件和.py文件合并到一个独立的exe文件中。

如果它是愚蠢的,请忽略问题的第二部分,我对编译python一无所知。

另外,我知道有关于.wav文件的其他问题,但我没有找到一个在我描述的方式在python 3.4中工作的问题。

3 个答案:

答案 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}')