matinal:python 读取音频文件的几种方式

2023-10-14 15:51:56 浏览数 (1)

前言

由于本人研究的音频方面,一开始读取音频文件的时候就遇到了一些问题,比如,这个函数返回的是numpy,另外一个函数返回tensor,巴拉巴拉等等问题,所以在这里做一个简单的整理。

1、wavefile.read 代码示例如下:

代码语言:javascript复制
from scipy.io import wavfile
 fs, audio = wavfile.read("0.wav")
 print(type(audio))
 得到的结果为: 
<class 'numpy.ndarray'>

2、soundfile.read 代码示例如下:

代码语言:javascript复制
import soundfile as sf
 audio, fs = sf.read("0.wav")
 print(type(audio))
  得到的结果为: 

<class 'numpy.ndarray'>

3、librosa.load 代码示例如下:

代码语言:javascript复制
import librosa
 audio, fs = librosa.load("0.wav")
 print(type(audio))
  得到的结果为: 
<class 'numpy.ndarray'>

4、torchaudio.load 代码示例如下:

代码语言:javascript复制
import torchaudio
 audio, fs = torchaudio.load("0.wav")
 print(type(audio))
 返回的结果为:
<class 'torch.Tensor'>

需要注意的两点:

(1)wavefile、soundfile、torchaudio返回的fs是文件本身的采样率;librosa返回的fs默认22050Hz。

(2)注意audio和fs的前后顺序。

总结 以上就是总结的内容啦

0 人点赞