使用wavfile.read从wav文件中提取位深度



我试图使用wavfile.read从wav文件读取位深度,但是,我没有成功。

这是我到目前为止的代码:

import numpy as np
from numpy.fft import fft, rfft
import matplotlib.pyplot as plt
from scipy.io import wavfile
from scipy import signal
import librosa
import librosa.display
input_file = (r'G:/pt5GAL_TCL_mono_Mono.wav')
sample_rate1, samples = wavfile.read(input_file)
# File Info
signal, sample_rate2 = librosa.load(input_file)
print('Total number of samples: ', signal.shape[0])
print('Sample rate: ', sample_rate1)
print('Length of file in seconds: ', librosa.get_duration(signal))
# print('Bit Depth: ', bits_per_sample)

如何返回wav文件的位深度?

您不能直接从scipy.io.wavfile.read的返回值访问每个样本的位数,但是您可以根据https://docs.scipy.org/doc/scipy/reference/generated/scipy.io.wavfile.read.html中所示的表从返回的NumPy数组的dtype间接(可能含糊不清)确定它。

当然,你可以直接使用Python标准库中的wave模块,该模块有一个方法getsampwidth

相关内容

  • 没有找到相关文章

最新更新