目录

一,音频获取

二,单音节分析

三,7个音节分析


一,音频获取

我用电子琴把7个音节分别按了5次,录音得到音频文件

首先查看振幅:

from pydub import AudioSegment
import matplotlib.pyplot as plt
from pydub import AudioSegment
import numpy as np

audio = AudioSegment.from_file("D:/1234567.m4a")
audio.export("D:/1234567_.mp3", format="mp3")
v=audio.get_array_of_samples()
plt.plot(v)
plt.show()

规律很明显,每一个峰值就是一个音节。

二,单音节分析

然后我们扣出第一个音节:

v=v[130000:153000]
plt.plot(v)
plt.show()

再做一个傅里叶变换:

H = np.fft.fft(v)
plt.plot(H.real)
plt.show()

plt.plot(H.imag)
plt.show()

实部:

虚部:

两端都是低频噪声,只有中间一段是信号,再缩小范围:

r = H.real
plt.plot(r[10000:13000])
plt.show()

这是一个对称的图形,我们再把局部放大:

r = H.real
plt.plot(r[11000:11500])
plt.show()

我们把几个频点提取出来:

r2 = r[11000:11500]
print(r2)
for id in range(0,len(r2)):
    if(abs(r2[id])>4000000):
        print(id)

输出:

186
249
312
313
314
373
374
375
376
436
438

其中 186 249 312 375 438这几个频点刚好构成等差数列

三,7个音节分析


 

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部