C# 将mp3文件与Microsoft.CognitiveServices.Speech一起使用时,Spxer\u GSTREAMER\u未\u发现\u错误

C# 将mp3文件与Microsoft.CognitiveServices.Speech一起使用时,Spxer\u GSTREAMER\u未\u发现\u错误,c#,speech-recognition,speech-to-text,azure-cognitive-services,C#,Speech Recognition,Speech To Text,Azure Cognitive Services,我有一段代码在标题中加了一个字: using (var audioInput = AudioConfig.FromStreamInput(new PullAudioInputStream(new BinaryAudioStreamReader(new BinaryReader(File.OpenRead(audioFile))), AudioStreamFormat.GetCompressedFormat(AudioStreamContainerFormat.MP3)))) using (var

我有一段代码在标题中加了一个字:

using (var audioInput = AudioConfig.FromStreamInput(new PullAudioInputStream(new BinaryAudioStreamReader(new BinaryReader(File.OpenRead(audioFile))), AudioStreamFormat.GetCompressedFormat(AudioStreamContainerFormat.MP3))))
using (var recognizer = new SpeechRecognizer(config, sourceLanguageConfig, audioInput))
audioFile
是指向要转录音频的mp3文件的路径

我已为Windows安装了最新的GStreamerGStreamer-1.0-msvc-x86\u 64-1.17.2.msi,并将其添加到用户路径中,并设置了GStreamer\u ROOT\u x86。那是行不通的

在这里的文档中

处理压缩音频是使用GStreamer实现的。对于 授权原因GStreamer二进制文件未编译并链接到 演讲稿。开发人员需要安装几个依赖项和 插件,请参阅在Windows上安装。Gstreamer二进制文件需要在 系统路径,以便speech SDK可以加载gstreamer二进制文件 在运行时。如果语音SDK能够找到libgstreamer-1.0-0.dll 在运行时,这意味着gstreamer二进制文件位于系统路径中

它说它将查找最新版本(1.17.2)中不再包含的libgstreamer-1.0-0.dll,因此我返回到gstreamer-1.0-x86-1.14.1,它确实具有所需的dll,但仍然得到相同的错误

从VisualStudio2019控制台,我可以调用该文件夹中包含的exe文件,以便知道路径设置正确

有人知道遗漏了什么吗?

这里有人帮忙吗

基本上:

  • 请勿使用最新版本的Gstreamer
  • 用这个
  • 将路径设置为bin文件夹(C:\gstreamer\1.0\x86\u 64\bin)
  • 设置变量(C:\GSTREAMER\1.0\X86\u 64)
  • 重新启动机器
  • 将Visual Studio生成配置设置为x64