91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用python怎么制作一個語音聊天機器人

發布時間:2021-04-14 18:10:51 來源:億速云 閱讀:259 作者:Leah 欄目:開發技術

使用python怎么制作一個語音聊天機器人?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

import requests
import time
import pygame
from datetime import datetime
from aip import AipSpeech
from pyaudio import PyAudio,paInt16
import wave
import os


framerate=8000
NUM_SAMPLES=2000
channels=1
sampwidth=2
TIME=2


def save_wave_file(filename,data):
  '''save the date to the wavfile'''
  wf=wave.open(filename,'wb')
  wf.setnchannels(channels)
  wf.setsampwidth(sampwidth)
  wf.setframerate(framerate)
  wf.writeframes(b"".join(data))
  wf.close()


def my_record():
  pa=PyAudio()
  stream=pa.open(format = paInt16,channels=1,
          rate=framerate,input=True,
          frames_per_buffer=NUM_SAMPLES)
  my_buf=[]
  count=0
  while count<TIME*6:#控制錄音時間
    string_audio_data = stream.read(NUM_SAMPLES)
    my_buf.append(string_audio_data)
    count+=1
    print('.')
  save_wave_file('0001.wav',my_buf)
  stream.close()

##def play():
##  wf=wave.open(r"D:/41125.mp3",'rb')
##  p=PyAudio()
##  stream=p.open(format=p.get_format_from_width(wf.getsampwidth()),channels=
##  wf.getnchannels(),rate=wf.getframerate(),output=True)
##  while True:
##    data=wf.readframes(chunk)
##    if data=="":break
##    stream.write(data)
##  stream.close()
##  p.terminate()
##

這里大家需要改成自己的ID和KEY


APP_ID = '11****843'
API_KEY = '3Mnv***8**88******GbXa'

SECRET_KEY = '147***8*88****1227684'
aipSpeech = AipSpeech(APP_ID, API_KEY, SECRET_KEY)




def getText(url):
  text = requests.post(url).json()
  return text['text']



##
##key = '6ddc57c5761a4c62a30ea840e5ae163f'
#api = 'http://www.tuling123.com/openapi/api?key=' + key +'&info ='
key = '8b005db5f57556fb96dfd98fbccfab84' 
api = 'http://www.tuling123.com/openapi/api?key=' + key + '&info=' 
##
while True:
  
##  info = input("我說\n")

 
##  chunk=2014

  my_record()
  print("錄音完成")
  

  
  def get_file_content(filePath):
    with open(filePath,'rb') as fp:
      return fp.read()
    
  a = aipSpeech.asr(get_file_content('0001.wav '),'wav',8000,{})
  print(a)
  b = str(a['result'])
  info = b

  
  url = api + info
  #print(url)

  text_01 = getText(url)
  print("機器人回\n",text_01)

  now = datetime.now().strftime("%Y-%m-%d_%H_%M_%S")
  filename_01 = now + ".mp3"

  result = aipSpeech.synthesis(  text_01,'zh',1,{'vol': 5,'per' : 2} )
  
  if not isinstance(result, dict):
    
    with open(filename_01, 'wb') as f:
      f.write(result)
  print("--------------------------------------")
  time.sleep(1)
  
  
  pygame.mixer.init()
  print("語音1")
  file= filename_01
  track = pygame.mixer.music.load(file)

  pygame.mixer.music.play()
  time.sleep(15)
  pygame.mixer.music.stop()
  pygame.quit()

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

焦作市| 达拉特旗| 台前县| 青冈县| 思南县| 仁寿县| 宣汉县| 襄城县| 涞源县| 喜德县| 仙游县| 遵化市| 吉首市| 沙雅县| 梁山县| 互助| 镇江市| 石棉县| 无极县| 辽中县| 茂名市| 白玉县| 措勤县| 黄陵县| 美姑县| 蒙自县| 琼海市| 邻水| 从化市| 莱州市| 泰来县| 青铜峡市| 略阳县| 晴隆县| 丰城市| 岱山县| 淅川县| 乌鲁木齐县| 成武县| 大埔区| 永修县|