python3 写一个WAV音频文件播放器的代码

yipeiwu_com6年前Python基础

环境:ubuntu 16.04 python3.5 pycharm

包 : wave pyaudio sys

上代码:AudioPlayer.py

# coding:utf-8
# author:king
# brief : 播放wav音频文件
import wave
from pyaudio import PyAudio
import sys
def player(filename):
  chunk = 1024
  wf = wave.open(filename, 'rb')
  p = PyAudio()
  stream = p.open(format=p.get_format_from_width(wf.getsampwidth()), channels=wf.getnchannels(),
          rate=wf.getframerate(), output=True)
  data = wf.readframes(chunk)
  print(data)
  while data != b'':
    data = wf.readframes(chunk)
    stream.write(data)
  stream.stop_stream()
  stream.close()
  p.terminate()
if __name__ == '__main__':
  audiofile = sys.argv[1];
  player(audiofile);

使用方法是直接用pyinstaller 生成可执行文件

pyinstaller -F AudioPlayer.py

在dist下即可找到生成的可执行文件复制到/usr/bin/下即可使用

使用方法是 AudioPlayer dingwav

总结

以上所述是小编给大家介绍的python3 写一个WAV音频文件播放器的代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

python自动化测试之连接几组测试包实例

本文实例讲述了python自动化测试之连接几组测试包的方法,分享给大家供大家参考。具体方法如下: 具体代码如下: class RomanNumeralConverter(object...

python 实现在txt指定行追加文本的方法

如下所示: fp = file('data.txt') lines = [] for line in fp: lines.append(line) fp.close() l...

django中使用POST方法获取POST数据

在django中获取post数据,首先要规定post发送的数据类型是什么。 1.获取POST中表单键值数据 如果要在django的POST方法中获取表单数据,则在客户端使用JavaS...

浅谈tensorflow中几个随机函数的用法

如下所示: tf.constant(value, dtype=None, shape=None) 创建一个常量tensor,按照给出value来赋值,可以用shape来指定其形状...

在Django中编写模版节点及注册标签的方法

编写模板节点 编写自定义标签的第二步就是定义一个拥有 render() 方法的 Node 子类。 继续前面的例子,我们需要定义 CurrentTimeNode : import da...