python - 从原始WAV音频中获取信号的正负分量

标签 python audio signal-processing

我正在阅读这篇StackOverflow帖子:

How is audio represented with numbers?

根据答案,数字信号将具有一个+ ve分量和一个负分量。因此,我正在尝试将其与一个非常基本的wav音频文件相关联。

我正在使用python读取一个WAV音频文件的所有帧。我用下面的代码:

import wave
import sys
ip = wave.open(sys.argv[1], 'r')
print ip.getparams()
for i in range(ip.getnframes()):
    iframe = ip.readframes(1)
    print iframe.encode('hex') , ' >>> ',int(iframe.encode('hex'), 16)
ip.close()

'''
Output :
C:\>python readframe.py test.wav
(1, 2, 44100, 176400, 'NONE', 'not compressed')
0000  >>>  0
0204  >>>  516
0008  >>>  8
f70b  >>>  63243
e10f  >>>  57615
bb13  >>>  47891
8217  >>>  33303
311b  >>>  12571
c41e  >>>  50206
3922  >>>  14626
8b25  >>>  35621
b728  >>>  46888
bb2b  >>>  47915
922e  >>>  37422
3b31  >>>  15153
b233  >>>  45619
f535  >>>  62773

'''

我的问题是如何从每个帧数据中获取wav音频的正负分量。

提前致谢,

最佳答案

需要从2 ^ 16中减去大于32767的值,以从16位2补码符号表示转换其负值。

关于python - 从原始WAV音频中获取信号的正负分量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22782492/

相关文章:

python - 理解Python中multitaper方法的频率轴

python - 将数据从 SPSS 保存到 Excel - 自定义工作表名称

python - 在 python 中用另一个掩码修改 bool 掩码

ios - 如何跟踪 iOS 中的音轨进度?

android - 设置数组以在Android应用中保存声音

c# - 将输入设置为默认音频设备 ( SetInputToDefaultAudioDevice() )

matlab - 频谱分析

javascript - 低速数据采样中的DFT分析

python - list[-1] 不针对列表的最后一项(回文中有两个连续的零)

具有固定 .keys() 内容和可变参数的 Python 字典