如何保存从 azure 认知服务转换的文本数据?

问题描述

我目前很难将语音结果从 Microsoft azure 认知服务 API 保存为文本。

这是我的代码

import azure.cognitiveservices.speech as speechsdk
import time

# Creates an instance of a speech config with specified subscription key and service region.
# Replace with your own subscription key and service region (e.g.,"westus").
speech_key,service_region = "speech_key","region"
speech_config = speechsdk.SpeechConfig(subscription=speech_key,region=service_region)

# Creates a recognizer with the given settings

speech_config = speechsdk.SpeechConfig(subscription=speech_key,region=service_region,speech_recognition_language="it-IT")
speech_recognizer = speechsdk.SpeechRecognizer(speech_config=speech_config)

speech_recognizer.session_started.connect(lambda evt: print('SESSION STARTED: {}'.format(evt)))
speech_recognizer.session_stopped.connect(lambda evt: print('\nSESSION STOPPED {}'.format(evt)))
speech_recognizer.recognized.connect(lambda evt: print('\n{}'.format(evt.result.text)))

print('Say a few words\n\n')
result = speech_recognizer.recognize_once_async().get()
print(result.text)

speech_recognizer.start_continuous_recognition()
time.sleep(10)
speech_recognizer.stop_continuous_recognition()

speech_recognizer.session_started.disconnect_all()
speech_recognizer.recognized.disconnect_all()
speech_recognizer.session_stopped.disconnect_all()

我想保存从语音到文本 API 转换后的文本。我已经有了订阅密钥和地区,但不知道如何将数据保存到 JSON 文件中。

解决方法

result.Text 在结果中返回识别的文本,您可以保存到文件中。

在 Python 中,这个 repo 添加了一些示例代码来演示 Speech to Text SDK: https://github.com/caiomsouza/Microsoft-Cognitive-Services/tree/master/speech-to-text 和这个 python code 正在转换任何音频文件大小。