Python分离立体声wav压缩文件的左右声道
【摘要】 左右声道可以记录更多的信息,使用python如何分离左右通道呢?wav文件通常会记录左右声道,但wav文件通常会被压缩,我在网上找了几种方法,都不能正常读取压缩后的wav文件,下面介绍一种方法,使用python分离wav文件的左右声道以下是读取wav文件的代码。import soundfile as sfmusicFileName = "1016(37)_13733163362(4)_In_...
左右声道可以记录更多的信息,使用python如何分离左右通道呢?
wav文件通常会记录左右声道,但wav文件通常会被压缩,我在网上找了几种方法,都不能正常读取压缩后的wav文件,下面介绍一种方法,使用python分离wav文件的左右声道
以下是读取wav文件的代码。
import soundfile as sf musicFileName = "1016(37)_13733163362(4)_In_20190808140419.wav" sig, sample_rate = sf.read(musicFileName) print("采样率:%d" % sample_rate) print("时长:", sig.shape[0]/sample_rate, '秒') serviceData = sig.T[0] clientData = sig.T[1]
获取到的serviceData,clientData是从声音中分离出来的两个声道,接下来对这两个数据进行可视化。
下面是clientData可视化的代码与波形图
import matplotlib.pyplot as plt import numpy as np plt.figure() l=sig.shape[0] x = [i/8000 for i in range(l)] plt.plot(x, clientData, c='r') plt.show()
下面是serviceData可视化的代码与波形图
import matplotlib.pyplot as plt import numpy as np plt.figure() l=sig.shape[0] x = [i/8000 for i in range(l)] plt.plot(x, serviceData , c='r') plt.show()
下面是serviceData与clientData可视化的代码与波形图,为了更直观的显示两个声道的信号,这里在可视化的时候,调整了不透明度。
import matplotlib.pyplot as plt import numpy as np plt.figure() l=sig.shape[0] x = [i/8000 for i in range(l)] plt.plot(x, serviceData, c='r', alpha=0.8) plt.plot(x, clientData, c='b', alpha=0.8) plt.show()
本文来自“机器在学习”
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)