騰訊雲語音轉文字:快速識別語音為文本

隨著語音技術的不斷發展和普及,語音轉文字功能已經成為現代化辦公、生活中的重要需求。騰訊雲提供的語音轉文字技術基於騰訊雲強大的人工智慧技術,實現了準確、快速的語音轉文字功能。本文將從使用場景、支持語言、操作流程、介面使用和代碼示例等多個方面進行闡述。

一、使用場景

語音轉文字技術的應用場景非常廣泛。例如,會議記錄、音頻文字化打點、語音搜索、教育學習等等都需要將語音轉換成文字。使用語音轉文字技術,可以使得我們在傳達信息和記錄的過程中更加高效、精確。

接下來,我們將以會議記錄為例,來介紹如何使用騰訊雲語音轉文字技術來提高會議效率。

首先,我們需要將會議的音頻錄製下來。然後將音頻文件上傳至騰訊雲,調用語音轉文字介面即可將音頻文件快速轉成文字。最後,將轉換後的文字整理成會議記錄。

二、支持語言

騰訊雲語音轉文字技術支持多種語言的轉換。例如,中文、英文、粵語、日語、韓語等等。用戶只需要在上傳音頻文件時指定音頻的語音種類,即可將音頻快速轉為對應的文字。這為用戶提供了非常便捷、全方位的語音轉文字服務。

三、操作流程

下面是騰訊雲語音轉文字技術的整個操作流程:

  1. 開通騰訊雲賬號,並在控制台中開通語音轉文字服務。
  2. 錄製音頻或上傳現有音頻文件。
  3. 調用騰訊雲語音轉文字API介面,將音頻文件轉換成文字。
  4. 將轉換後的文字存入資料庫或進行其他操作。

四、介面使用

騰訊雲語音轉文字技術提供了多種API介面供開發者調用。以下是騰訊雲語音轉文字API的使用示例代碼:

  import tencentcloud.soe.v20180724.models.VoiceFilterRequest
  import tencentcloud.soe.v20180724.models.VoiceFilterResponse
  from tencentcloud.common.credentials import Credential
  from tencentcloud.common.profile.client_profile import ClientProfile
  from tencentcloud.common.profile.http_profile import HttpProfile
  from tencentcloud.soe.v20180724 import soe_client, models

  # 初始化
  cred = Credential("騰訊雲SecretId", "騰訊雲SecretKey")
  httpProfile = HttpProfile()
  httpProfile.endpoint = "soe.tencentcloudapi.com"

  clientProfile = ClientProfile()
  clientProfile.httpProfile = httpProfile
  client = soe_client.SoeClient(cred, "ap-guangzhou", clientProfile)

  # 生成請求包
  req = models.VoiceFilterRequest()
  params = {
    # 必填參數,音頻數據,Base64編碼以後的字元串
    "Data": "填寫音頻的Base64編碼字元串",
    # 部分選填參數,語音編碼,默認為 wav,支持的格式包括 wav, pcm, opus, speex, mp3 和 amr。推薦使用 wav。
    "Codec": "wav",
    # 部分選填參數,是否需要語音過濾,默認為不過濾(0),若需要過濾,請填寫(1)。
    "Filter": 0
    # 部分選填參數,處理後的音頻採樣率,支持的採樣率有 8000,16000,32000,44100 和 48000,默認為 16000。
    "Rate": 16000
  }
  req.from_json_string(json.dumps(params))

  # 請求服務
  resp = client.VoiceFilter(req)

  # 輸出結果
  print(resp.to_json_string(indent="    "))

五、代碼示例

以下是Python語言調用騰訊雲語音轉文字API實現音頻轉文字的示例代碼:

  import base64
  import hashlib
  import hmac
  import json
  import random
  import time
  import requests
  from urllib.parse import quote

  # 設置請求參數
  secret_id = 'your_secret_id'
  secret_key = 'your_secret_key'
  appid = 'your_appid'
  engine_model_type = '16k_zh'
  url = 'https://tts.cloud.tencent.com/web/voice_api' # api 地址
  query_text = '你好騰訊雲,語音轉文字!'

  # 時間戳 & 隨機數
  timestamp = int(time.time())
  nonce = random.randint(10000, 99999)
  
  # 拼接參數,生成簽名
  query_params = {
    'appid': appid,
    'timestamp': timestamp,
    'nonce': nonce,
    'text': query_text,
  }
  
  # 將 query_params 按照 key 進行字典排序
  sorted_params = sorted(query_params.items(), key=lambda x: x[0], reverse=False)
  
  # 拼接 sorted_params,生成 query_string
  query_string = urlencode(sorted_params)
  
  # 拼接 appid, engine_model_type, query_string,生成 source 字元串
  source = f'appid={appid}&{query_string}&engine_model_type={engine_model_type}'

  # 計算簽名
  sign = hmac.new(secret_key.encode(), source.encode(), hashlib.sha1).hexdigest()

  # 構建請求參數
  headers = {
      'Content-Type': 'application/json',
      'Authorization': sign
  }
  payload = {
      'app_id': appid,
      'engine_model_type': engine_model_type,
      'text': query_text
  }

  # 發送請求
  r = requests.post(url, headers=headers, data=json.dumps(payload))

  # 輸出結果
  if r.status_code == 200:
      res = json.loads(r.text.encode('utf8'))
      if res.get('code') == 0:
          result = base64.b64decode(res.get('data', ''))
          print(result.decode('utf-8'))

以上是使用Python調用騰訊雲語音轉文字API的代碼示例,開發者可以根據自己的需求進行相應的修改和調試。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/304711.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2025-01-01 11:05
下一篇 2025-01-01 11:05

相關推薦

  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Ojlat:一款快速開發Web應用程序的框架

    Ojlat是一款用於快速開發Web應用程序的框架。它的主要特點是高效、易用、可擴展且功能齊全。通過Ojlat,開發人員可以輕鬆地構建出高質量的Web應用程序。本文將從多個方面對Oj…

    編程 2025-04-29
  • 利用Java SDK發送騰訊雲簡訊

    Java SDK是一種利用Java語言編寫的軟體開發工具包,是Java開發中非常重要的一環。下面將介紹如何使用Java SDK發送騰訊雲簡訊。 一、引入SDK依賴 首先,在你的Ja…

    編程 2025-04-29
  • 如何在Spring Cloud中整合騰訊雲TSF

    本篇文章將介紹如何在Spring Cloud中整合騰訊雲TSF,並提供完整的代碼示例。 一、TSF簡介 TSF (Tencent Serverless Framework)是騰訊雲…

    編程 2025-04-29
  • 二階快速求逆矩陣

    快速求逆矩陣是數學中的一個重要問題,特別是對於線性代數中的矩陣求逆運算,如果使用普通的求逆矩陣方法,時間複雜度為O(n^3),計算量非常大。因此,在實際應用中需要使用更高效的演算法。…

    編程 2025-04-28
  • 文本數據挖掘與Python應用PDF

    本文將介紹如何使用Python進行文本數據挖掘,並將著重介紹如何應用PDF文件進行數據挖掘。 一、Python與文本數據挖掘 Python是一種高級編程語言,具有簡單易學、代碼可讀…

    編程 2025-04-28
  • Python文本居中設置

    在Python編程中,有時需要將文本進行居中設置,這個過程需要用到字元串的相關函數。本文將從多個方面對Python文本居中設置作詳細闡述,幫助讀者在實際編程中運用該功能。 一、字元…

    編程 2025-04-28
  • t3.js:一個全能的JavaScript動態文本替換工具

    t3.js是一個非常流行的JavaScript動態文本替換工具,它是一個輕量級庫,能夠很容易地實現文本內容的遞增、遞減、替換、切換以及其他各種操作。在本文中,我們將從多個方面探討t…

    編程 2025-04-28
  • 快速排序圖解

    快速排序是一種基於分治思想的排序演算法,效率非常高。它通過在序列中尋找一個主元,將小於主元的元素放在左邊,大於主元的元素放在右邊,然後在左右子序列中分別遞歸地應用快速排序。下面將從算…

    編程 2025-04-28
  • Navicat導出欄位識別為文本而不是數值

    解決方法:使用特定的代碼將導出的欄位識別為文本,而不是數值,下面將從多個方面進行詳細闡述。 一、ASCII碼轉換 在導出的文件中,將數值欄位使用ASCII碼轉換,即可讓這些欄位被識…

    編程 2025-04-28

發表回復

登錄後才能評論