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

最近心血来潮想利用 python构建一个智能语音聊天机器人,这样就能在我们无聊的时候和我们聊天以此打发时间啦:)。

要想最终实现聊天机器人的构建需要经过一系列过程功能的实现,大致思路为程序接受用户的语音保存为音频文件→识别音频文件转换为文本→调用第三方机器人接口获得文本反馈→将文本反馈转换为语音读出来→后期美化补充。

说干就干,首先要实现将我们的声音录制下来保存为音频文件。说到录音,我们都知道是由计算机内部声卡实现的,所以我们需要利用pyaudio库调用声卡进行声音录制,而保存音频文件我们可以使用python自带的wave库来将音频保存为wav音频文件。

说到音频,我们有必要了解一下计算机存储与播放音频的原理。自然界我们听到的声音被称为模拟信号,而计算机能够处理的我们称之为数字信号,将模拟信号转换为数字信号需要经历采样,量化与编码的步骤。采样涉及到①采样率:即1s采集多少次声音,也就是所得数字信号每秒的样本数。采样率越高,声音还原越真实自然,同时占资源也就越多,常见的有16000,44100。②采样位数(深度):声卡在播放时所使用的数字信号的二进制位数,简单来说就是声卡处理声音的解析度,就是采样点的大小,一般有8,16两个参数可以选择,数值越大,解析度越高,声音越真实。③采样宽度:采样宽度即为采样的一个点在存储器中需要占用的字节宽度byte,当采样深度为paInt16时宽度为2。④帧长度:一帧记录了一个声音单元,帧的长度是样本长度与声道数的乘积,ACC规定帧的大小为1024,sample和mp3为1152。比如一段5s的音频,采样率为16000,则共有样本数80000个,同时用ACC编码一帧数有1024个样本,则可以计

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值