Ejemplo n.º 1
0
def getBaiduText():
    global r
    p = pyaudio.PyAudio()

    stream = p.open(format=FORMAT,
                    channels=CHANNELS,
                    rate=RATE,
                    input=True,
                    frames_per_buffer=CHUNK)

    stream.start_stream()
    r=1
    r=r+1
    if r==1:
       speaker.Speak("正在消毒,目前消毒液充足 ,请随时说出暂停将暂停消毒,您也可以随时说出指令普通模式或狂喷模式改变消毒强度")
    else:
       speaker.Speak("正在消毒,目前消毒液充足 ,请随时说出暂停将暂停消毒")
    print("请随时说出暂停将暂停消毒")
    print("说出消毒液余量,将为您检查消毒液余量")
    print("说出电量余量,将为您检查电量液余量")
    print("说出机器人状态,将为您检查机器人状态参数")
    print("您也可以随时说出指令普通模式或狂喷模式改变消毒强度")
    
    
    
    print("* 开始录音......")
    
    frames = []
    for i in range(0, int(RATE / CHUNK * RECORD_SECONDS)):
        data = stream.read(CHUNK)
        frames.append(data)

    stream.stop_stream()
 
    wf = wave.open(WAVE_OUTPUT_FILENAME, 'wb')
    wf.setnchannels(CHANNELS)
    wf.setsampwidth(p.get_sample_size(FORMAT))
    wf.setframerate(RATE)
    wf.writeframes(b''.join(frames))
    
    print("正在识别......")
    result = client.asr(readFile('audio.wav'), 'wav', 16000, {
    'dev_pid': 1537,
})
    if result["err_no"] == 0:
        for t in result["result"]:
            return t
    else:
        print("没有识别到语音\n")
        return ""
Ejemplo n.º 2
0
def audio_discern(audio_path="./test.wav", audio_type="wav"):
    """ 百度云的ID,免费注册 """
    APP_ID = '5377701'
    API_KEY = 'xCAp8unagboTkKESzyfXEdZA'
    SECRET_KEY = 'oOAcl2b1wGExlrOH2H9M16kE2YfsqDpE'

    client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

    # 读取文件
    def get_file_content(filePath):
        with open(filePath, 'rb') as fp:
            return fp.read()

    # 识别本地文件
    text = client.asr(get_file_content(audio_path), audio_type, 16000)
    return text
Ejemplo n.º 3
0
def listen():
    # 读取录音文件
    with open(path, 'rb') as fp:
        voices = fp.read()
    try:
        # 参数dev_pid:1536普通话(支持简单的英文识别)、1537普通话(纯中文识别)、1737英语、1637粤语、1837四川话、1936普通话远场
        result = client.asr(voices, 'wav', 16000, {
            'dev_pid': 1537,
        })
        result_text = result["result"][0]
        print("you said: " + result_text)
        return result_text
    except KeyError:
        print("KeyError")
        engine.say("我没有听清楚,请再说一遍...")
        engine.runAndWait()
def listen():
    # 读取录音文件
    with open(path, 'rb') as fp:
        voices = fp.read()
    try:
        # 参数dev_pid:1536普通话(支持简单的英文识别)、1537普通话(纯中文识别)、1737英语、1637粤语、1837四川话、1936普通话远场
        result = client.asr(voices, 'wav', 16000, {'dev_pid': 1537, })
        # result = CLIENT.asr(get_file_content(path), 'wav', 16000, {'lan': 'zh', })
        # print(result)
        # print(result['result'][0])
        # print(result)
        result_text = result["result"][0]
        print("you said: " + result_text)
        return result_text
    except KeyError:
        print("KeyError")
        speaker.Speak("我没有听清楚,请再说一遍...")
Ejemplo n.º 5
0
def listen():
    # 读取录音文件
    with open(path, 'rb') as fp:
        voices = fp.read()
    try:
        # 参数dev_pid:1536普通话(支持简单的英文识别)、1537普通话(纯中文识别)、1737英语、1637粤语、1837四川话、1936普通话远场
        result = client.asr(voices, 'wav', 16000, {
            'dev_pid': 1537,
        })
        # result = CLIENT.asr(get_file_content(path), 'wav', 16000, {'lan': 'zh', })
        # print(result)
        # print(result['result'][0])
        # print(result)
        result_text = result["result"][0]
        strMsg = '我:' + time.strftime("%Y-%m-%d %H:%M:%S",
                                      time.localtime()) + '\n '
        print(strMsg + result_text)
        return result_text
    except KeyError:
        print("KeyError")
        speaker.Speak("我没有听清楚,请再说一遍...")
Ejemplo n.º 6
0
def listen():
    speaker = win32com.client.Dispatch("SAPI.SpVoice")
    APP_ID = '14636839'
    API_KEY = 'u34cdKCsR61tzM0r20Qnp3YM'
    SECRET_KEY = 'Rehs5G02EqbrRDDgGdPY9NKY2ZlCX8Oq'

    client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)
    path = 'voices/myvoices.wav'
    # 读取录音文件
    with open(path, 'rb') as fp:
        voices = fp.read()
    try:
        # 参数dev_pid:1536普通话(支持简单的英文识别)、1537普通话(纯中文识别)、1737英语、1637粤语、1837四川话、1936普通话远场
        result = client.asr(voices, 'wav', 16000, {
            'dev_pid': 1537,
        })
        result_text = result["result"][0]
        print("you said: " + result_text)
        return result_text
    except KeyError:
        print("KeyError")
        speaker.Speak("我没有听清楚,请再说一遍...")
Ejemplo n.º 7
0
def gettxt():
    return client.asr(read_file('audio.wav'), 'pcm', 16000, {
        'dev_pid': 1536,
    })
def BAIDU_ASR(_path):
    result = client.asr(get_file_content(_path), 'wav', 16000, {
        'dev_pid': 1536,
    })

    return result.get('result')[0]