资源简介

百度语音api实现语音识别小程序,通过判断当前音量大小自动识别判断是否该结束录音,原理还是挺简单的,就是遇到一些小坑,自己学习了也分享给大家。里面有个小彩蛋,对它说‘关机’试试(*_*),(不会立刻关机的,可以取消)

资源截图

代码片段和文件信息

#!/usr/bin/env python
# -*- coding: UTF-8 -*-

from time import sleep
from aip import AipSpeech
from numpy import frombuffershort

import wave
#from wave import open  #这样写就重名了
from pyaudio import PyAudiopaInt16
#import pyaudio
from threading import Thread
import pygame
import os
import tkinter



#由于百度语音识别最大时长为60s,所以我们创建这个计时的方法,然后在子线程中调用
timeout = False

def timeclock():
global timeout
timeout = True
#循环里面的全局变量要加global
for x in range(60):
print(‘ticking...‘ timeout)
sleep(1)
#如果标志位为False,则停止计时
if timeout == False:
return 0
#超过60秒赋值为false,停止录音
timeout = False



#录音
def my_record(path = ‘01.wav‘):
#规定声音属性
framerate=16000 #采样频率
NUM_SAMPLES=2000 #内部缓存块的大小,每次读取的采样数据块的个数
channels=1 #声道
sampwidth=2 #采样大小/采样宽度/位深2B 1

评论

共有 条评论