使用python + metadatas读写立体声.wav文件

时间:2013-11-10 09:44:55

标签: python audio scipy signal-processing wav

在Python中读取和写入立体声 .wav文件的最简单方法是什么? 我应该使用scipy.io.wavfile.read吗?

  • 我应该使用二维数组(如何?),以便x[n,j] j是通道号?

  • 我还想读取/写入存储在wav文件中的元数据,如markersMIDI root note(Soundforge,以及其他声音编辑器,可以读/写这个特定的.wav元数据称为“MIDI根音符”)

谢谢

PS:我已经知道如何处理单声道文件了:

from scipy.io.wavfile import read
(fs, x) = read('test.wav')

2 个答案:

答案 0 :(得分:0)

以下是scipy.io.wavfile的更新版本,其中添加:

  • 24位.wav文件支持读/写,
  • 访问提示标记,
  • 提示标记标签,
  • 其他一些元数据,如音高(如果已定义)等。

wavfile.py (enhanced)


旧(原始)答案:仅针对部分问题的解决方案(即读取立体声样本):

(fs, x) = read('stereo_small-file.wav')
print len(x.shape)         # 1 if mono,    2 if stereo
# if stereo, x is a 2-dimensional array, so we can access both channels with :
print x[:,0]
print x[:,1]

答案 1 :(得分:-1)