百度语音转文字 (Python)

感觉很久没写中文技术文章了。说实话,学东西都是基于英文,或者 别人从英文翻译成中文 我们再捡二手货学习。所以用中文写技术文章怎么都感觉是在骗人,怎么都觉得很别扭

但是这一次的主角是百度。

虽然认真来讲,所有编程语言、框架、核心技术都是外国人写的(开源),但似乎你拼凑一下,仍可以贴上国产的标签(这个就相当于零件不是我做的,但我用它拼出了一件产品,产品是我的)。

而且又加上这个 API 是免费的,所以我可以介绍一下。(最近几年百度为了拿钱换名气,在海外还是做了不少工作,比如建立了 Twitter、Github 账户,成立了 AI研究室,开源了一些项目)

我这个人不喜欢讲废话:

# Author: yingshaoxo
#### For baidu voice
from aip import AipSpeech

APP_ID = '15311704'
API_KEY = 'yTzBl40WBlhFOo1GnKk0YQTN'
SECRET_KEY = 'xpWedO1u0ZLATHijhetFo7dE5ibMsI6Q'

client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

def get_text(wav_bytes):
    result = client.asr(wav_bytes, 'wav', 16000, {'dev_pid': 1536,})
    try:
        text = result['result'][0]
    except Exception as e:
        print(e)
        text = ""
    return text


#### For real time voice recording
import speech_recognition as sr

r = sr.Recognizer()
mic = sr.Microphone()

while 1:
    print("\nPlease try to speak something...")
    with mic as source:
        r.adjust_for_ambient_noise(source)
        audio = r.listen(source)
        audio_data = audio.get_wav_data(convert_rate=16000)
        print("\nGot you, now I'm trying to recognize that...")
        text = get_text(audio_data)
        print(f"\n{text}")

你可能感兴趣的:(百度语音转文字 (Python))