【发布时间】:2020-11-11 09:21:23
【问题描述】:
我正在关注本教程https://hackernoon.com/audio-handling-basics-how-to-process-audio-files-using-python-cli-jo283u3y,当我从 mp3 文件中提取数据时,它只是一个一维数组,而来自 wav 文件的数据是二维的。我用 ffmpeg 从同一个 mp4 文件转换它们。
# read WAV file using scipy.io.wavfile
fs_wav, data_wav = wavfile.read("data/music_8k.wav")
# read MP3 file using pydub
audiofile = AudioSegment.from_file("data/music_8k.mp3")
data_mp3 = np.array(audiofile.get_array_of_samples())
fs_mp3 = audiofile.frame_rate
print(data_wav.shape) #(9835520, 2)
print(fs_wav) #44100
print(data_mp3.shape) #(19671040,)
print(fs_mp3) #44100
当我检查 mp3 文件的信息时,它显示 Stereo,但 data_mp3 只是一维数组这一事实是否意味着它实际上是单声道的?转换过程中是否丢失了一个频道?如果我想确认这两个文件具有相同的信号,我应该如何重塑数据?
【问题讨论】: