[英]Python WAV “TypeError: data type not understood” error
我在使用Python读取.wav文件时遇到了问题。 我想读取文件的幅度和采样率。
我尝试使用以下代码读取文件:
import os
folder = os.getcwd() + '\\WAV'
file_name = 'Guitar.ff.sul_E.C5Bb5'
path = folder + '\\' + file_name + '.wav'
rate,data=read(path)
在上面的代码之前,我从scipy
库中导入了read
函数,如下所示:
从scipy.io.wavfile导入读取,写入
从numpy
我导入:
从numpy import linspace,sin,pi,int16
我收到错误“ TypeError:数据类型无法理解”。
该代码对于另一个.wav文件非常有效,并且我想知道如何(如果可能)更改代码以读取此文件,或者是否必须更改.wav文件才能读取它。
以下是文件的属性:
第一个文件无效,第二个文件有效。
我对1和2通道有完全相同的错误。
更改文件名以使其没有点并不重要。 它似乎可以通过任何一种方式到达文件,但无法读取它。
编辑:
将位深度从24更改为16后,问题就消失了。 谢谢Warren Weckesser的评论。
不幸的是,scipy的wavfile阅读器无法读取24位文件: github上的scipy问题1930
退房https://pypi.python.org/pypi/wavio或获取源https://github.com/WarrenWeckesser/wavio
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.