.net Core控制台应用Azure Cognitive Services MP3



我正在尝试使用Azure认知服务语音到文本,但在.net Core 中遇到了障碍

我使用audioConfig.FromWafFileInput((对WAV文件有本地支持;这太棒了。

但是我也需要支持MP3的

我找到了压缩音频支持https://learn.microsoft.com/en-us/azure/cognitive-services/speech-service/how-to-use-codec-compressed-audio-input-streams?tabs=debian&pivots=编程语言csharp

然而,这是指PushAudio流。

这就是我迷路的地方。。。。

我找到了这个流编解码器压缩音频的例子https://github.com/Azure-Samples/cognitive-services-speech-sdk/blob/master/samples/cpp/linux/compressed-audio-input/compressed-audio-input.cpp

然而,这不是C#的核心,转换并不是我真正的强项。

所以有点不知所措。

任何协助都将不胜感激

此示例:https://github.com/Azure-Samples/cognitive-services-speech-sdk/blob/master/samples/csharp/sharedcontent/console/speech_recognition_samples.cs这里和这里都有特定于压缩音频的方法。后一个pull-stream示例看起来非常简单,只需插入密钥、区域和文件路径即可。

如果您有文件,特别是如果您有多个文件,您可以从使用批处理转录中受益。它本机支持WAV、MP3和OGG格式的文件。

该文档链接到API文档,其中还包括模型自定义。在这里,您可以选择感兴趣的区域并导出一个swagger文件。可以使用您选择的编程语言生成客户端的swagger文件。

对于您的场景,您只需要4个API,并且可以使用标准的HttpClient来执行请求。你会想要

  • 创建一个批量转录
  • 让你的转录本来检查状态。如果它是完整的,你会得到你接下来需要的URL。如果失败,则会收到有关该问题的消息
  • 批量转录成功后获取结果。具有TranscriptionReport类型的对象包含被转录的文件列表,如果转录成功,如果不成功,为什么。其他对象包含成功转录的结果
  • (在这里,您需要对contentUrl进行迭代,以下载文件。(
  • 得到结果后,删除转录

相关内容

  • 没有找到相关文章

最新更新