如何使用 python 将音频缓冲区传递给语音到文本服务
How to pass audio buffer to speech to text service using python
我正在使用 azure speech to text 服务,使用 python 来处理一堆音频。为了处理音频,这些是执行的步骤-
- 将音频从 Web 服务器下载到本地 'C:/audio' 驱动器。
- 将下载的音频路径传递给 Speech SDK 的 - Audioconfig(filename ='C:/audio/my_audio.wav')
我不想下载到本地机器,而是想从服务器获取文件并将其直接传递给语音到文本服务。为此,
我将音频以 bytes
的形式存储在音频缓冲区中,就像这样 - raw_audio = my_audio_in_bytes # class <'bytes'>
然后,我将音频缓冲区传递给 AudioConfig(filename = raw_audio) - 它不起作用。因为它需要一个文件路径
有没有办法将音频缓冲区传递给此服务?
配置python代码:
speech_config = speechsdk.SpeechConfig(subscription=speech_key, region=service_region)
audio_config = speechsdk.audio.AudioConfig(filename='C:/audios/audio1.wav')
speech_recognizer = speechsdk.SpeechRecognizer(speech_config=speech_config, audio_config=audio_config)
@user1990,根据我们的讨论 on this GitHub issue, please use batch transcription,因为语音 SDK 不直接支持从 Web 服务上托管的 WAV 文件进行识别(您首先需要在本地下载)。
我正在使用 azure speech to text 服务,使用 python 来处理一堆音频。为了处理音频,这些是执行的步骤-
- 将音频从 Web 服务器下载到本地 'C:/audio' 驱动器。
- 将下载的音频路径传递给 Speech SDK 的 - Audioconfig(filename ='C:/audio/my_audio.wav')
我不想下载到本地机器,而是想从服务器获取文件并将其直接传递给语音到文本服务。为此,
我将音频以
bytes
的形式存储在音频缓冲区中,就像这样 -raw_audio = my_audio_in_bytes # class <'bytes'>
然后,我将音频缓冲区传递给 AudioConfig(filename = raw_audio) - 它不起作用。因为它需要一个文件路径
有没有办法将音频缓冲区传递给此服务?
配置python代码:
speech_config = speechsdk.SpeechConfig(subscription=speech_key, region=service_region)
audio_config = speechsdk.audio.AudioConfig(filename='C:/audios/audio1.wav')
speech_recognizer = speechsdk.SpeechRecognizer(speech_config=speech_config, audio_config=audio_config)
@user1990,根据我们的讨论 on this GitHub issue, please use batch transcription,因为语音 SDK 不直接支持从 Web 服务上托管的 WAV 文件进行识别(您首先需要在本地下载)。