语音处理:Python实现立体声音频的声道分离批量处理

  • 背景
  • 实现思路
  • Python代码
  • 参考资料

背景


在语音处理任务中,有时需要对立体声或多声道音频文件,批量处理成单声道文件,然后送入算法模型进行处理。

这里,提供一个Python脚本实现批量分离,提高处理效率。

实现思路


编码思路

  • 采用Python的wavfile
  • 先读取多声道音频到data
  • 将data中的左右声道分别提取到list中
  • 将list数据写入新的单声道音频文件

Python代码


用前需先导入以下包:

import scipy.io.wavfile

封装代码如下:

def split_stereo(input_path, output_path):# default stereosamplerate, data = wavfile.read(input_path)left = []right = []for item in data:left.append(item[0])right.append(item[1])file_name = input_path.split('\\')[-1]file_name = file_name.split('.')[0]outfile_name = file_name + '_1ch_left.wav'out_path_file = os.path.join(output_path, outfile_name)wavfile.write(out_path_file, samplerate, np.array(left))# wavfile.write('right.wav', samplerate, np.array(right))

当然,有兴趣的也可以用专业音频处理软件Audition实现批量处理。

参考资料


  1. python 双声道语音分离,link
  2. 立体声音乐分离左右声道,link
  3. 采用soundfile库实现分离的方法,link
  4. 音频处理二:(左右声道分离),link

语音处理:Python实现音频文件声道分离批量处理相关推荐

  1. 语音处理:Python实现pcm文件声道合并

    语音处理:Python实现pcm文件声道合并 功能思路 实现代码 参考资料 功能思路 功能: 合并多个单通道的pcm成一个多通道pcm文件 长度短的声道,末尾自动补零,与最长声道长度对齐 思路: 先了 ...

  2. Python处理音频文件的实用姿势

    Python处理音频文件的实用姿势 每天叫醒我的不是理想,是楼下广场舞的音乐. 音乐是人类的通用语言,不分国界不分种族. 抖音短视频爆火的关键因素之一,就是普通人也能便捷地使用BGM表达自我. 从感性 ...

  3. python将音频文件转为txt文本

    文章目录 前言 具体过程 1.讯飞开放平台创建应用 2.代码示例 3.代码说明 4.测试结果 前言 今天朋友在群里面问有没有音频转文字的免费软件?我就去网上搜了一下,发现网上大多数是超出一定时长就收费 ...

  4. 使用python .pcm音频文件多声道数据分离与转化为浮点数

    有些设备采集的音频文件格式为pcm格式,其本身就为ad转化后的产物,在我的嵌入式实现中为节省计算资源,直接对其进行声道分离. 如何使用python语言将pcm音频流文件转为数值矩阵,多声道进行声道分离 ...

  5. python实现音频文件的批量拼接(soundfile+numpy)

    import os import soundfile as sf import numpy as np#定义转换采样率的函数,接收3个变量:原音频路径.重新采样后的音频存储路径.目标采样率 def w ...

  6. python打开音频文件_Python处理音频文件的实用姿势

    每天叫醒我的不是理想,是楼下广场舞的音乐. 音乐是人类的通用语言,不分国界不分种族. 抖音短视频爆火的关键因素之一,就是普通人也能便捷地使用BGM表达自我. 从感性角度看,音乐可以有很多种解释,如:音 ...

  7. python播放音频文件_详解使用pygame播放一段MP3音频文件

    近日,在梳理pygame模块的时候发现一个很有用的模块mixer模块,这个模块翻译过来就是混音器,它可以加载和播放音频文件,甚至可以对混音器进行设置和处理,其功能非常强大.今天,我们一起来梳理一下混音 ...

  8. python从视频中提取音频信号_通过python从音频文件中提取音频

    我认为你的问题有三个不同的部分: >如何将音频文件加载到python中? >如何计算python中的频谱? >如何处理频谱? 1.如何在python中加载音频文件? 使用scipy可 ...

  9. python切割音频文件_python切割和合并wav音频文件

    切割wav音频文件 如果没有pydub需要使用pip install pydub来安装模块 from pydub import AudioSegment from pydub.utils import ...

  10. python获取mp3音频数据,python 读取音频文件的详细信息

    有一项测试的需求是判断录像是否和预期一致,检查项是:分辨率.录像时长等内容 文件的详细信息.png os模块有一个stat()方法 st_mode: inode 保护模式 st_ino: inode ...

最新文章

  1. 解决非浏览器客户端请求nginx无法命中缓存的问题
  2. slf4j的jar包冲突:LoggerFactory is not a Logback LoggerContext but Logback is on the classpath
  3. linux主机解析虚拟机超时_Linux 内核超时导致虚拟机无法正常启动
  4. vue2.5.2版本 :MAC设置应用在127.0.0.1:80端口访问; 并将127.0.0.1指向www.yours.com ;问题“ Invalid Host header”
  5. (20)Zynq FPGA Quad-SPI闪存控制器介绍
  6. python列表属于什么类型的游戏_1.4 python数据类型之list类
  7. distcc 链接失败_distcc分布式编译时,icu host程序偶现编译失败原因分析
  8. 51nod 1292 字符串中的最大值V2(后缀自动机)
  9. 【zookeeper 获取节点数据getData源码解析】
  10. 雅虎“贱卖”启示录:不创新,就只有被淘汰
  11. linux 队列缓冲,linux驱动的等待队列(阻塞操作)和轮询(poll),缓冲区笔记
  12. ubuntu16.04解压cudnn文件时报错,could not create a hard link file://xxx/cuda/lib64/libcudnn_static.a不完全解决方案
  13. idea工具的内存优化
  14. EasyUI【DataGrid数据查询】
  15. 计算机机房新风机的作用,你知道机房为什么要装新风系统吗?
  16. 视频中的声音如何处理,如何添加背景音乐?
  17. 百度图神经网络7日打卡营--DAY01前半部分 总结
  18. 7-5 单词首字母大写 (15分)
  19. anaconda使用和入门
  20. 服务注册中心consul

热门文章

  1. C++链式队列实现简易银行叫号系统
  2. 张宇:【线性代数】公式汇总!
  3. 广州科源980tc数控系统说明书_广州数控GSK980TC3车床数控系统 操作轴名
  4. 二本学院计算机专业的考研er如何顺利上岸?
  5. linux设备驱动模型架构分析 一
  6. 手动 将exe加入到系统启动服务、卸载服务的方法
  7. Ubuntu下利用python实现自动打卡系统全过程
  8. java从入门到放弃(一)
  9. 板绘新手sai入门基础教程,非常详细全面!
  10. CPU cache侧信道攻击