欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于Python實現(xiàn)語音識別和語音轉文字

 更新時間:2022年09月21日 08:52:12   作者:小圓-  
這篇文章主要為大家詳細介紹了如何利用Python實現(xiàn)語音識別和語音轉文字功能,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下

前言

嗨嗨,大家好呀 ~ 今天給你們分享一個有趣的東西 ~

是一個語音識別跟語音轉文字的小工具

感興趣的朋友可以繼續(xù)往下滑咯

直接使用

在1.2官網注冊后拿到APISecret和APIKey,

直接復制文章2.4demo代碼,

保存為online_tts.py,

在命令行執(zhí)行

python online_tts.py -client_secret=你的client_secret -client_id=你的client_id -file_save_path=test.wav --text=今天天氣不錯

獲取權限

Python調用標貝科技語音合成接口,實現(xiàn)文字轉語音

1.環(huán)境準備

Python 3

2.獲取權限

標貝科技 https://ai.data-baker.com/#/?source=qwer12

1.2.1 登錄

點擊產品地址進行登錄,支持短信、密碼、微信三種方式登錄。

1.2.2 創(chuàng)建新應用

登錄后進入【首頁概覽】,

各位開發(fā)者可以進行創(chuàng)建多個應用。

包括一句話識別、長語音識別、錄音文件識別;

在線合成、離線合成、長文本合成。

1.2.3 選擇服務

進入【已創(chuàng)建的應用】,左側選擇您需調用的AI技術服務,右側展示對應服務頁面概覽(您可查詢用量、管理套餐、購買服務量、自主獲取授權、預警管理)。

1.2.4 獲取Key&Secret

通過服務 / 授權管理,獲取對應參數(shù),

進行開發(fā)配置

拿到Key和Secret就可以正式使用啦!

代碼實現(xiàn)

1.獲取access_token

在拿到Key和Secret后,

我們還需要調用授權接口獲取access_token,

這個access_token有效時長是24小時。

需要源碼、教程,或者是自己有關python不懂的問題,都可以來這里哦 https://jq.qq.com/?_wv=1027&k=xJU8WKpY 這里還有學習資料與免費課程領取

# 獲取access_token用于鑒權
def get_access_token(client_secret, client_id):
    grant_type = "client_credentials"
    url = "https://openapi.data-baker.com/oauth/2.0/token?grant_type={}&client_secret={}&client_id={}".format(grant_type, client_secret, client_id)
    response = requests.post(url)
    access_token = json.loads(response.text).get('access_token')
 
    return access_token

2.獲取轉換后音頻

拿到access_token后,

調用語音合成接口,

就可以獲得生成的音頻

# 獲取轉換后音頻
def get_audio(data):
    url = "https://openapi.data-baker.com/tts?access_token={}&domain={}&language={}&voice_name={}&text={}&audiotype={}".format(data['access_domain'], data['domain'], data['language'], data['voice_name'], data['text'], data['audiotype'])
    response = requests.post(url)
    content_type = response.headers['Content-Type']
    if 'audio' not in content_type:
        raise Exception(response.text)
    return response.content

3.配置接口參數(shù)

client_secret和client_id:在文章1.2的官網獲取,必填

file_save_path:文件保存路徑,必填

text:需要轉換的文本內容

audiotype:音頻類型,默認16K采樣率wav格式

domain:所屬領域,默認1

language:合成后文本語言,默認中文“zh"

voice_name:發(fā)音人選擇,默認“Lingling",

# 獲取命令行輸入參數(shù)
def get_args():
    text = '歡迎使用標貝開發(fā)平臺。'
    parser = argparse.ArgumentParser(description='ASR')
    parser.add_argument('-client_secret', type=str, required=True)
    parser.add_argument('-client_id', type=str, required=True)
    parser.add_argument('-file_save_path', type=str, required=True)
    parser.add_argument('--text', type=str, default=text)
    parser.add_argument('--audiotype', type=str, default='6')
    parser.add_argument('--domain', type=str, default='1')
    parser.add_argument('--language', type=str, default='zh')
    parser.add_argument('--voice_name', type=str, default='Lingling')
    args = parser.parse_args()
 
    return args

4.完整demo

#!/usr/bin/env python
# coding: utf-8
import requests
import json
import argparse
 
 
# 獲取access_token用于鑒權
def get_access_token(client_secret, client_id):
    grant_type = "client_credentials"
    url = "https://openapi.data-baker.com/oauth/2.0/token?grant_type={}&client_secret={}&client_id={}".format(grant_type, client_secret, client_id)
    response = requests.post(url)
    access_token = json.loads(response.text).get('access_token')
 
    return access_token
 
 
# 獲取轉換后音頻
def get_audio(data):
    url = "https://openapi.data-baker.com/tts?access_token={}&domain={}&language={}&voice_name={}&text={}&audiotype={}".format(data['access_domain'], data['domain'], data['language'], data['voice_name'], data['text'], data['audiotype'])
    response = requests.post(url)
    content_type = response.headers['Content-Type']
    if 'audio' not in content_type:
        raise Exception(response.text)
    return response.content
 
# 獲取命令行輸入參數(shù)
def get_args():
    text = '歡迎使用標貝開發(fā)平臺。'
    parser = argparse.ArgumentParser(description='ASR')
    parser.add_argument('-client_secret', type=str, required=True)
    parser.add_argument('-client_id', type=str, required=True)
    parser.add_argument('-file_save_path', type=str, required=True)
    parser.add_argument('--text', type=str, default=text)
    parser.add_argument('--audiotype', type=str, default='6')
    parser.add_argument('--domain', type=str, default='1')
    parser.add_argument('--language', type=str, default='zh')
    parser.add_argument('--voice_name', type=str, default='Lingling')
    args = parser.parse_args()
 
    return args
 
 
if __name__ == '__main__':
    try:
        args = get_args()
 
        # 獲取access_token
        client_secret = args.client_secret
        client_id = args.client_id
        access_token = get_access_token(client_secret, client_id)
 
        # 讀取參數(shù)
        audiotype = args.audiotype
        domain = args.domain
        language = args.language
        voice_name = args.voice_name
        text = args.text
        data = {'access_domain': access_token, 'audiotype': audiotype, 'domain': domain, 'language': language,
                'voice_name': voice_name, 'text': text}
        content = get_audio(data)
 
        #保存音頻文件
        with open('test.wav', 'wb') as audio:
            audio.write(content)
        print("task finished successfully")
    except Exception as e:
        print(e)

5.執(zhí)行

復制所有代碼,保存為online_tts.py,在命令行執(zhí)行

python online_tts.py -client_secret=你的client_secret -client_id=你的client_id -file_save_path=test.wav --text=今天天氣不錯

到此這篇關于基于Python實現(xiàn)語音識別和語音轉文字的文章就介紹到這了,更多相關Python語音識別 語音轉文字內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 在Python中使用Neo4j數(shù)據(jù)庫的教程

    在Python中使用Neo4j數(shù)據(jù)庫的教程

    這篇文章主要介紹了在Python中使用Neo4j數(shù)據(jù)庫的教程,Neo4j是一個具有一定人氣的非關系型的數(shù)據(jù)庫,需要的朋友可以參考下
    2015-04-04
  • python計算圓周率的5種方法

    python計算圓周率的5種方法

    這篇文章主要給大家介紹了關于python計算圓周率的5種方法,圓周率(Pi)是圓的周長與直徑的比值,一般用希臘字母π表示,是一個在數(shù)學及物理學中普遍存在的數(shù)學常數(shù),需要的朋友可以參考下
    2023-07-07
  • Python縮進和冒號詳解

    Python縮進和冒號詳解

    下面小編就為大家?guī)硪黄狿ython縮進和冒號詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • Python預測2020高考分數(shù)和錄取情況

    Python預測2020高考分數(shù)和錄取情況

    這篇文章主要介紹了Python預測2020高考分數(shù)和錄取情況可能是這樣,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07
  • 詳解利用Python scipy.signal.filtfilt() 實現(xiàn)信號濾波

    詳解利用Python scipy.signal.filtfilt() 實現(xiàn)信號濾波

    這篇文章主要介紹了詳解利用Python scipy.signal.filtfilt() 實現(xiàn)信號濾波,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-06-06
  • python實現(xiàn)批量監(jiān)控網站

    python實現(xiàn)批量監(jiān)控網站

    本文給大家分享的是一個非常實用的,python實現(xiàn)多網站的可用性監(jiān)控的腳本,并附上核心點解釋,有相同需求的小伙伴可以參考下
    2016-09-09
  • python 系統(tǒng)調用的實例詳解

    python 系統(tǒng)調用的實例詳解

    這篇文章主要介紹了python 系統(tǒng)調用的實例詳解的相關資料,需要的朋友可以參考下
    2017-07-07
  • PyQt打開保存對話框的方法和使用詳解

    PyQt打開保存對話框的方法和使用詳解

    這篇文章主要為大家詳細介紹了PyQt打開保存對話框的方法和使用,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-02-02
  • Python中l(wèi)ogger日志模塊詳解

    Python中l(wèi)ogger日志模塊詳解

    這篇文章主要介紹了Python中l(wèi)ogger日志模塊詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-08-08
  • Python正則表達式匹配數(shù)字和小數(shù)的方法

    Python正則表達式匹配數(shù)字和小數(shù)的方法

    這篇文章主要介紹了Python正則匹配數(shù)字和小數(shù)的方法,本文通過示例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-07-07

最新評論