1、关于pyaudio的使用,请参看前一篇博文:

Python--pyAudio播放wav格式声音: http://blog.csdn.net/xsc_c/article/details/8944077

2、关于wav文件的操作,参看博文:

Python--读取wav格式文件: http://blog.csdn.net/xsc_c/article/details/8941338

3、录音的过程与播放使用的函数类似,可以参考使用手册:

API文档地址 : http://people.csail.mit.edu/hubert/pyaudio/docs/#class-pyaudio

4、python代码

#!usr/bin/env python
#coding=utf-8import numpy as np
from pyaudio import PyAudio,paInt16
from datetime import datetime
import wave
from Tkinter import *#define of params
NUM_SAMPLES = 2000
framerate = 8000
channels = 1
sampwidth = 2
#record time
TIME = 10def save_wave_file(filename, data):'''save the date to the wav file'''wf = wave.open(filename, 'wb')wf.setnchannels(channels)wf.setsampwidth(sampwidth)wf.setframerate(framerate)wf.writeframes("".join(data))wf.close()def my_button(root,label_text,button_text,button_func):  '''''function of creat label and button'''  #label details  label = Label(root)  label['text'] = label_text  label.pack()  #label details  button = Button(root)  button['text'] = button_text  button['command'] = button_func  button.pack() def record_wave():#open the input of wavepa = PyAudio()stream = pa.open(format = paInt16, channels = 1,rate = framerate, input = True,frames_per_buffer = NUM_SAMPLES)save_buffer = []count = 0while count < TIME*4:#read NUM_SAMPLES sampling datastring_audio_data = stream.read(NUM_SAMPLES)save_buffer.append(string_audio_data)count += 1print '.'filename = datetime.now().strftime("%Y-%m-%d_%H_%M_%S")+".wav"save_wave_file(filename, save_buffer)save_buffer = []print filename, "saved"def main():root = Tk()my_button(root,"Record a wave","clik to record",record_wave)root.mainloop()if __name__ == "__main__":main()

5、效果

界面:

保存文件:

Python--pyaudio声卡录音相关推荐

  1. Python使用PyAudio制作录音工具

    Python使用PyAudio制作录音工具 应用平台 音频录制部分 音频播放部分 GUI窗口所需属性值代码部分 pynput监听键盘 总结 最近有在使用屏幕录制软件录制桌面,在用的过程中突发奇想,使用 ...

  2. pyaudio usb playback_利用python工具包pyaudio实现录音

    想训练一套自己的语音识别系统(命令词识别系统),首先得准备一套自己的语料库,发动身边的帅哥美女们帮忙进行录音.Python无所不能,很多工具包能给让我们的工作变的简单.优雅. 今天就给大家分享一下基于 ...

  3. 百度语音识别+百度ERNIE-Gram+pyaudio麦克风录音(NLP自然语言处理)

    1.pyaudio安装及通过pyaudio实现录音 pip install pyaudio 在conda环境中安装没有报错 实现录音的代码如下: # -*- coding: utf-8 -*- fro ...

  4. c语言编写录音机思路,python实现网页录音效果

    本文实例为大家分享了python实现网页录音效果的具体代码,供大家参考,具体内容如下 服务器:tornado 语言:python,JS,html 效果:(将录好的音放在指定位置) 实现逻辑: 部分实现 ...

  5. PyAudio库录音代码

    PyAudio库录音代码 PyAudio库安装 代码 PyAudio库安装 开始用的小写pyaudio,发现安装不上,这里需要用大写的. pip install PyAudio 代码 import p ...

  6. python构建聊天机器人之录制声音保存为音频文件(利用pyaudio进行录音)

    最近心血来潮想利用 python构建一个智能语音聊天机器人,这样就能在我们无聊的时候和我们聊天以此打发时间啦:). 要想最终实现聊天机器人的构建需要经过一系列过程功能的实现,大致思路为程序接受用户的语 ...

  7. python 工业自动化 人工智能_Python人工智能之路 - 第三篇 : PyAudio 实现录音 自动化交互实现问答...

    Python 很强大其原因就是因为它庞大的三方库 , 资源是非常的丰富 , 当然也不会缺少关于音频的库 关于音频, PyAudio 这个库, 可以实现开启麦克风录音, 可以播放音频文件等等,此刻我们不 ...

  8. python语音识别播放音乐_Python人工智能 : PyAudio 实现录音 自动化交互实现问答

    Python 很强大其原因就是因为它庞大的三方库 , 资源是非常的丰富 , 当然也不会缺少关于音频的库 关于音频, PyAudio 这个库, 可以实现开启麦克风录音, 可以播放音频文件等等,此刻我们不 ...

  9. Python实现电脑录音(含音频基础知识讲解)

    咪哥杂谈 本篇阅读时间约为 6 分钟. 1 前言 今天开始进入近期系列文章的第一篇,如何用 Python 来实现录音功能. 在开始"造轮子"之前,个人一直强调一个观点,如果有些东西 ...

  10. python 多mic录音WASAPI

    问题:python在window上录多麦数据报错:python OSError: [Errno -9998] Invalid number of channels ? import pyaudio i ...

最新文章

  1. java.sql.Exception:setString 只能处理少于 32766 个字符的字符串
  2. 如何去掉系统快捷方式的箭头(转载)
  3. solr4.5分组查询、统计功能介绍
  4. AWS — AWS Direct Connect
  5. 有些时候,我们以为对的意见,往往在行家看来是比较幼稚之亲身经历
  6. 机器学习——SVM之交叉验证对参数(C,gamma)进行优化以及选择
  7. ubuntu6.06容易死机的一种解决方法
  8. 做人力资源需要掌握python_9种人力资源分析工具,高效打造数字化HR全流程
  9. 安装并配置oracle11g,ORACLE11g 安装于基本配置说明
  10. [luogu P3128][USACO15DEC]Max Flow [LCA][树上差分]
  11. mysql 执行计划 视频_实战讲解MySQL执行计划,面试官当场要了我
  12. Java Windows,Linux视频抽帧的4种方式
  13. linux两个命令合并,linux合并命令
  14. 浅谈能源管理系统在钢铁企业上的应用
  15. 学习linux方向,学习linux方向
  16. xp打开网页显示服务器错误怎么办,winxp系统IE浏览器出现Internet无法打开站点错误提示怎么办...
  17. 如何对CAD图纸上的图形进行单独保存起来
  18. matlab和Excel的交互 非xlsread和xlswrite(1-Excel基础)
  19. 如何寻找数组中最大值与最小值(取双元素法)
  20. 任务发布消费中间件 leek 使用教程

热门文章

  1. 工行网银助手 重装错误
  2. IMDB影评倾向分类 - N-Gram
  3. uva 563 Crimewave
  4. Hopkins Statistic判断irir数据集聚类性能
  5. 如何清除redis缓存
  6. 用mqtt客户端发数据到 thingsboard Error: Connection refused: Not authorized
  7. Egret 使用自定义皮肤
  8. Matlab绘制经纬度地图并添加坐标点
  9. Lab: Username enumeration via subtly different responses 通过细微的差别的响应来甄别用户名靶场复盘
  10. Android更换皮肤解决方案