赞
踩
我希望通过一段语音分析语音的强度(响度)。
因为是工科狗而非理科狗,且对于音频信号分析是外行,只简单看了下FFT,所以对于自己分析语音强度的方法没有安全感。希望这方面的高手能够指导下。非常感谢!!!
以下是我获取语音信号数据的过程。123.wav语音文件来自于百度合成的mp3转码,所以这段语音就算存在噪音也应该是微量的,这里不用再滤波了(就算滤波也不知道滤波器系数该用什么)。我猜想到此应该是没有问题的?
# -*- coding: utf-8 -*-
import numpy as np
import pylab as pl
import wave
f = wave.open("/home/dyan/123.wav", "rb")
# 读取格式信息
# (nchannels, sampwidth, framerate, nframes, comptype, compname)
params = f.getparams()
nchannels, sampwidth, framerate, nframes = params[:4]
# 读取波形数据
str_data = f.readframes(nframes)
f.close()
wave_data = np.fromstring(str_data, dtype=np.short)
# 在时间轴上画波形图
# 以上nchannels=1, sampwidth=2, framerate=16000
lenth=len(wave_data)
ti=lenth/16000.0
<Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。