我正在用Python为Raspberry Pi写一个声码器,这使声音无法识别。 我录制音频并使用回调功能实时播放-它可以工作。 现在,我需要对输入进行去噪,以Numpy数组表示(像大多数教程和SO上的文章一样,没有.wav文件!)。 它对我不起作用。

我的main.py:

from copy import copy

import numpy as np

import pyaudio as pa

import time

import noisereduce as nr

p = pa.PyAudio()

FORMAT = pa.paFloat32

NP_FORMAT = np.float32

CHANNELS = 2

CHUNK = 1024

RATE = int(p.get_default_input_device_info()['defaultSampleRate'])

NOISE_SAMPLE = None

# function for manipulating input data

def callback(in_data, frame_count, time_info, flag):

data = copy(np.frombuffer(in_data)) # copy, since original is read-only

# here everything is ok for first time

# print("X")

out_data = nr.reduce_noise(audio_clip=data, noise_clip=NOISE_SAMPLE)

# print("Y")

# I get here only once

return out_data, pa.paContinue

def get_noise():

audio = pa.PyAudio()

stream = audio.open(format=FORMAT, channels=CHANNELS,

rate=RATE, input=True,

frames_per_buffer=CHUNK)

frames = []

RECORD_SECONDS = 1

for i in range(0, int(RATE / CHUNK * RECORD_SECONDS)):

data = stream.read(CHUNK)

frames.append(np.frombuffer(data))

# stop Recording

stream.stop_stream()

stream.close()

audio.terminate()

return np.array(frames, dtype=NP_FORMAT).flatten()

def main():

global NOISE_SAMPLE

NOISE_SAMPLE = get_noise()

stream = p.open(format=FORMAT,

rate=RATE,

channels=CHANNELS,

input=True,

output=True,

frames_per_buffer=CHUNK,

stream_callback=callback)

stream.start_stream()

# main input loop

while True:

time.sleep(1)

stream.stop_stream()

stream.close()

p.terminate()

if __name__ == "__main__":

main()

我记录了1秒钟的噪声样本,然后进入无限的记录播放循环,在这里我想对输入进行降噪并将其输出。 由于某种原因,它只能运行一次:长时间(为什么?)后,我会打印一次“ X”和“ Y”,然后程序继续运行,但是不再输入回调函数。 有什么想法吗? 任何建议,其他易于使用的库,等等。

python音频 降噪_python - 使用pyaudio对音频播放进行降噪 - 堆栈内存溢出相关推荐

  1. python 移动平均值_python - 如何使用NumPy计算移动平均值? - 堆栈内存溢出

    这里有各种方法以及一些基准. 最好的方法是使用来自其他库的优化代码的版本. bottleneck.move_mean方法可能是最好的方法. scipy.convolve方法也非常快速,可扩展,并且在语 ...

  2. python dtype o_python - 什么是dtype('O')? - 堆栈内存溢出

    当你在数据帧中看到dtype('O') ,这意味着Pandas字符串. 什么是dtype ? 什么属于pandas或numpy ,或两者,或其他什么? 如果我们检查一下pandas代码: df = p ...

  3. python garch模型 forecast_python - 使用GARCH模型进行滚动预测 - 堆栈内存溢出

    我正在尝试对给定股票未来30天的波动性进行滚动预测(即预测时间t + 1,然后在预测t + 2时使用此预测,依此类推...) 我这样做是使用R的rugarch软件包,该软件包是我使用rpy2软件包在P ...

  4. python实时音频处理_Python中的实时音频处理

    我正在写一个程序来检查电脑记录的音频信号中是否有小故障.在检测到音频后,我想检查数据的前5秒是否有问题(以44.1kHz的采样率对应220500个样本),继续到下一个5秒的数据并检查其中是否有问题,然 ...

  5. 如何给音频降噪?看看哪款音频降噪处理软件适合你

    在日常的学习工作中,我们或多或少都会用到录音设备,但是如果在录制的过程,四周环境过于繁杂的时候,有很大几率会将周围的杂音一起录进去,这对于一些需要清晰音质的小伙伴们来说,是一件非常头疼的问题.其实解决 ...

  6. linux usb音频,audio - 如何从linux USB捕获设备捕获与ffmpeg同步的音频和视频 - 堆栈内存溢出...

    我正在通过USB Terratec Grabster AV350(基于em2860芯片)捕获视频. 播放时我没有成功获取音频. 如果我使用vlc或ffplay播放捕获的视频,我只有3秒钟的声音,然后对 ...

  7. python音频 降噪_Python | 简单的扩音,音频去噪,静音剪切

    原标题:Python | 简单的扩音,音频去噪,静音剪切 之前一段时间一直在搞数字语音识别,在训练算法上耗费了很多时间,但结果不尽人意.后来才发现自己一直忽视了音频预处理的一步,于是转而囫囵吞枣般学习 ...

  8. python音频 降噪_python降噪_python音频降噪_python图片降噪 - 云+社区 - 腾讯云

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 我们下面借助opencv的python封装包cv2,对其进行一些降噪处理,使得图 ...

  9. python的实时音频传送_python – 使用Alexa传输音频的最简单示例

    以下代码对我有用: def lambda_handler(event, context): return { "response": { "directives" ...

最新文章

  1. 在Ubuntu 14.04 64bit上安装网易云音乐Linux版本(最新官方版)
  2. DOCKER上运行DOTNET CORE
  3. [渝粤教育] 天津城建大学 混凝土结构设计原理A 参考 资料
  4. 基于MaxCompute搭建社交好友推荐系统
  5. 机器人炒饭小块头一一_小块头机器人炒饭:全智能流程,炒饭芬芳独具
  6. 没想到啊!3980元的Web前端视频今日免费送
  7. n型半导体和p型半导体的区别_PNP和NPN的区别和判别方法,网友:太厉害了!终于有人能讲明白了...
  8. 字节跳动也取消大小周了,996内卷要终结了?
  9. python每行输出8个式子_多图+代码 | 详解Python操作Excel神器openpyxl的各种操作!
  10. 第14期《学海无涯乐作舟》12月刊
  11. python读取pcd文件_Python读取pcd点云文件
  12. 哪种机械键盘更适合打游戏? 机械键盘5种常用机械轴详细介绍
  13. 用*打印一个长方形.
  14. 初始化NC用友的表结构数据文件
  15. 清微智能CTO欧阳鹏:架构创新是通往高性能计算芯片必由之路|量子位·视点分享回顾...
  16. K8S集群节点显示NotReady怎么解决?
  17. windows10系统装cad2007提示缺少NET组件
  18. 数据库定义语言(DDL)详解
  19. 【粉丝福利,限时免费】【千里之行,始于脚下】我在CSDN上的精品博文汇总,收藏起来慢慢看
  20. UR机器人数据包解析(python与C++实现)

热门文章

  1. windows10 访问网页的时候提示找不到服务器IP地址如何处理
  2. 穆迪分析宣布推出云服务,助力银行实现监管合规
  3. 国学大师林语堂献宝:英文学习八要诀
  4. Android sockot连接打印机EPSON ESC/POS指令打印
  5. 生成数据库结构字段SQL语句
  6. 麻省理工计算机导论公开课,网易公开课给大一新生“量身订做”精品课程
  7. 私钥记录-支付宝接入
  8. 18年下半年读书清单一览
  9. python的基本统计和分组分析和分布分析和交叉分析和结构分析
  10. ProxySQL+MGR实现读写分离和主节点故障无感知切换 - 完整操作记录