"""
这个代码还可以解决
raise Error('unknown format: %r' % (wFormatTag,))
wave.Error: unknown format: 3
这个bug
"""
import os
import librosa
import soundfile as sf
def resample4wavs(frompath, topath, resamplerate):
'''
:param frompath: 源文件所在目录
:param topath: 重置采样率文件存放目录
源文件目录和重置采样率目录可以是一个目录但是会覆盖原来的文件
:param resamplerate: 重置采样率
:return:
'''
fs = os.listdir(frompath)
for f in fs:
try:
fromfile = frompath + f
print(fromfile)
tofile = topath + f
y, sr = librosa.load(fromfile)
to_y = librosa.resample(y, sr, resamplerate)
# librosa.output.write_wav(tofile, to_y, resamplerate)过时代码, 需要换成下面的代码
sf.write(tofile, to_y, resamplerate)
except Exception as e:
print('Error:', e)
#需要重置采样率的文件所在的文件夹
path_1 = r''
#重置采样率后的文件所在的文件夹
path_2=r''
#48000是重置后的采样率,这些都按照自己需要修改
resample4wavs(path_1, path_2, 48000)
转自:raise Error(‘unknown format: %r‘ % (wFormatTag,))wave.Error: unknown format: 3
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具