我想从一个音轨中提取一个一维的向量,这个向量仅仅表示它在给定时间的“音量”或“强度”(我不确定这个术语)。你知道吗
以可用样本为例:
wget https://freewavesamples.com/files/Ensoniq-ESQ-1-Sympy-C4.wav
并将其转换为mono
:
ffmpeg -i Ensoniq-ESQ-1-Sympy-C4.wav -acodec pcm_s16le -ac 1 -ar 44100 audio_test.wav
我从一个related Q&A thread收集到的声波是这样的:
from scipy.io.wavfile import read
import matplotlib.pyplot as plt
input_data = read("audio_test.wav")
audio = input_data[1]
plt.plot(audio)
plt.ylabel("Amplitude")
plt.xlabel("Time")
plt.title("Sample Wav")
plt.show()
“正面”和“反面”是对称的,但并不完全对称。有没有办法把它们合并成一条“正”线?如果是,如何从audio
变量中提取这些数据点?你知道吗
非常感谢你的帮助!你知道吗
根据@anerisgreat和一位同事的建议,我找到了这个解决方案(在更大的音频样本上更有意义):
屈服:
相关问题 更多 >
编程相关推荐