python語音分析
㈠ 如何用python調用百度語音識別
#!/usr/bin/env python
# -*- coding: utf-8 -*-
########################################################################
#
# Copyright (c) 2017 aibot.me, Inc. All Rights Reserved
#
########################################################################
"""
File: util_voice.py
Author: darrenwang([email protected])
Date: 2017/03/24 11:29:50
Brief:
"""
import sys
import json
import time
import base64
import urllib
import urllib2
import requests
class BaiRest:
def __init__(self, cu_id, api_key, api_secert):
self.token_url = "https://openapi..com/oauth/2.0/token?grant_type=client_credentials&client_id=%s&client_secret=%s"
self.getvoice_url = "http://tsn..com/text2audio?tex=%s&lan=zh&cuid=%s&ctp=1&tok=%s"
self.upvoice_url = 'http://vop..com/server_api'
self.cu_id = cu_id
self.get_token(api_key, api_secert)
return
def get_token(self, api_key, api_secert):
token_url = self.token_url % (api_key,api_secert)
r_str = urllib2.urlopen(token_url).read()
token_data = json.loads(r_str)
self.token_str = token_data['access_token']
return True
#語音合成
def text2audio(self, text, filename):
get_url = self.getvoice_url % (urllib2.quote(text), self.cu_id, self.token_str)
voice_data = urllib2.urlopen(get_url).read()
voice_fp = open(filename,'wb+')
voice_fp.write(voice_data)
voice_fp.close()
return True
##語音識別
def audio2text(self, filename):
data = {}
data['format'] = 'wav'
data['rate'] = 8000
data['channel'] = 1
data['cuid'] = self.cu_id
data['token'] = self.token_str
wav_fp = open(filename,'rb')
voice_data = wav_fp.read()
data['len'] = len(voice_data)
#data['speech'] = base64.b64encode(voice_data).decode('utf-8')
data['speech'] = base64.b64encode(voice_data).replace('\n', '')
#post_data = json.mps(data)
result = requests.post(self.upvoice_url, json=data, headers={'Content-Type': 'application/json'})
data_result = result.json()
print data_result
return data_result['result'][0]
def test_voice():
api_key = "SrhYKqzl3SE1URnAEuZ0FKdT"
api_secert = ""
bdr = BaiRest("test_python", api_key, api_secert)
#生成
start = time.time()
bdr.text2audio("你好啊", "out.wav")
using = time.time() - start
print using
#識別
start = time.time()
#result = bdr.audio2text("test.wav")
#result = bdr.audio2text("weather.pcm")
using = time.time() - start
print using, result
return True
if __name__ == "__main__":
test_voice()
㈡ 利用python和麥克風進行語音數據採集的流程
使用 Python 和麥克風進行語音數據採集的流程可能包括以下步驟:
安裝並導入相應的庫:需要安友老裝並導入 PyAudio 庫,這個庫可以讓你在 Python 中野基操作麥克風。
打開麥克風:使用 PyAudio 庫打開麥克風,並設置采樣率,采樣位數等參數。
開始錄音:頌告謹使用 PyAudio 庫的 read 方法從麥克風中讀取語音數據。
存儲數據:使用 Python 的文件操作函數將讀取到的語音數據存儲到本地磁碟上。
關閉麥克風:使用 PyAudio 庫關閉麥克風。
處理數據:在結束採集之後可以對音頻數據進行處理,比如語音識別,語音合成,語音壓縮等.
注意:請確保在你的系統中已經安裝好了麥克風驅動,並且在 Python 代碼中有足夠的許可權訪問麥克風。
㈢ 如何用python調用百度語音識別
1、首先需要打開網路AI語音系統,開始編寫代碼,如圖所示,編寫好回車。
㈣ Python用什麼模塊開發語音識別系統
推薦使用YQ5969,這個語音識別模塊可以支持1--8個咪頭,還可以支持本地和雲端識別不同需求。5米內本地識別率 93%以上,雲端識別率97%。這個語音識別模塊可以濾除雜訊。由於我們生活在一個相對的噪音環境里,
在遠場識別中,用戶和設備有一定距離,很多時候雜訊源距離麥克風的位置比人更近,在某種程度中也為錄制聲音帶來了一定的困難。
㈤ Python語音識別,調用的是哪個客戶端介面函數
調用騰訊雲的語音識別(一句話識別)介面-Python版。
安裝語音識別,語音識別器編碼,處理Ubuntu伺服器,處理WSL。
要運行我們代碼的語音識別庫,我們首先需要安裝語音識別,然後還必須安裝PyAudio。首先,我們從主包開始:sudo pip3 install SpeechRecognition安裝應該遵循完全相同的格式,但我似乎缺少了讓它正常工作的軟體包,試圖安裝PyAudio會出錯。這些軟體包應該刪除該錯誤。那時我不需要更新apt,但先更新它並不壞處。sudo apt-get install libasound-dev portaudio19-dev libportaudio2libportaudiocpp0有了它,您應該可以安裝PyAudio:sudo pip3 install PyAudio語音識別器編碼。
運行WSL(Linux版Windows子系統)的Windows機器。它也使用了Ubuntu 16.04,所以安裝過程是一樣的。不過說到使用麥克風,WSL並不那麼簡單。為了通過Ubuntu終端應用程序控制麥克風,需要安裝PulseAudio。