91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 4KB
    文件類型: .py
    金幣: 1
    下載: 0 次
    發(fā)布日期: 2021-05-27
  • 語言: Python
  • 標(biāo)簽: Python??語音??socket??

資源簡介

此文件用于語音在線傳輸,基于Python2.7,利用socket編程

資源截圖

代碼片段和文件信息

import?wave
import?numpy?as?np
import?matplotlib.pyplot?as?plt
from?python_speech_features?import?mfcc
from?math?import?cos?sin?sqrt?pi


def?read_file(file_name):
????with?wave.open(file_name?‘r‘)?as?file:
????????params?=?file.getparams()
????????_?_?framerate?nframes?=?params[:4]
????????str_data?=?file.readframes(nframes)
????????wave_data?=?np.fromstring(str_data?dtype=np.short)
????????time?=?np.arange(0?nframes)?*?(1.0?/?framerate)
????????return?wave_data?time

????return?index1?index2


def?find_point(data):
????count1?count2?=?0?0
????for?index?val?in?enumerate(data):
????????if?count1?????????????count1?=?count1?+?1?if?abs(val)?>?0.15?else?0
????????????index1?=?index
????????if?count1?==?40?and?count2?????????????count2?=?count2?+?1?if?abs(val)?????????????index2?=?index
????????if?count2?==?5:
????????????break
????return?index1?index2


def?select_valid(data):
????start?end?=?find_point(normalized(data))
????print(start?end)
????return?data[start:end]


def?normalized(a):
????maximum?=?max(a)
????minimum?=?min(a)
????return?a?/?maximum


def?compute_mfcc_coff(file_prefix=‘‘):
????mfcc_feats?=?[]
????s?=?range(10)
????I?=?[0?3?4?8]
????II?=?[5?7?9]
????Input?=?{‘‘:?s?‘I‘:?I?‘II‘:?II?‘B‘:?s}
????for?index?file_name?in?enumerate(file_prefix?+?‘{0}.wav‘.format(i)?for?i?in?Input[file_prefix]):
????????data?time?=?read_file(file_name)
????????#data?=?select_valid(data)
????????#if?file_prefix==‘II‘:data?=?select_valid(data)

????????mfcc_feat?=?mfcc(data?48000)[:75]
????????mfcc_feats.append(mfcc_feat)
????t?=?np.array(mfcc_feats)
????return?np.array(mfcc_feats)


def?create_dist():

????for?i?m_i?in?enumerate(mfcc_coff_input):??#?get?the?mfcc?of?input
????????for?j?m_j?in?enumerate(mfcc_coff):??#?get?the?mfcc?of?dataset
????????????#?build?the?distortion?matrix?bwtween?i?wav?and?j?wav
????????????N?=?len(mfcc_coff[0])
????????????distortion_mat?=?np.array([[0]?*?len(m_i)
???????????????????????????????????????for?i?in?range(N)]?dtype=np.double)
????????????for?k1?mfcc1?in?enumerate(m_i):
????????????????for?k2?mfcc2?in?enumerate(m_j):
????????????????????distortion_mat[k1][k2]?=?sqrt(
????????????????????????sum((mfcc1[1:]?-?mfcc2[1:])**2))
????????????yield?i?j?distortion_mat


評論

共有 條評論