我有一段代码在标题中抛出了wrror:
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文件的路径,音频要转录。
我已经安装了最新的gstreamer-1.0-msvc-x86_64-1.17.2.msi for GStreamer,并将其添加到用户的路径并设置了GSTREAMER_ROOT_X86.那不起作用。
处理压缩音频是使用GStreamer实现的。由于许可原因,没有编译GStreamer二进制文件并将其链接到Speech。开发人员需要安装几个依赖项和插件,参见安装在Windows上。Gstreamer二进制文件需要在系统路径中,以便speech可以在运行时加载gstreamer二进制文件。如果speech能够在运行时找到libgstreamer-1.0-0.dll,这意味着gstreamer二进制文件位于系统路径中。
它说它将寻找不再包含在最新版本(1.17.2)中的libgstreamer-1.0-0.dll,所以我回到了gstreamer-1.0-x86-1.14.1,它确实具有所需的dll,但仍然得到相同的错误。
在VisualStudio2019控制台中,我可以调用该文件夹中包含的exe文件,以便知道路径设置正确。
有人知道缺了什么吗?
发布于 2021-06-22 14:07:04
我修这个的方式..。(类似于Artur Kędzior)
使用Gstreamer https://gstreamer.freedesktop.org/pkg/windows/1.14.5/gstreamer-1.0-x86_64-1.14.5.msi的1.14.5版本-完整设置
使用Microsoft.CognitiveServices.Speech版本1.13 (Nuget包)
转到pc上的环境变量,并将以下C:\gstreamer\1.0\x86_64\bin添加到名为path的用户变量
然后添加一个名为"GSTREAMER_ROOT_X86_64“的系统变量(没有引号)并将值添加到"C:\gstreamer\1.0\x86_64”
如果仍然有问题,您可能需要重新启动。但现在这对我有用了。
发布于 2020-08-13 10:41:06
在这里得到了帮助,https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/764
基本上:
https://gstreamer.freedesktop.org/pkg/windows/1.14.5/gstreamer-1.0-x86_64-1.14.5.msi
https://stackoverflow.com/questions/63358132
复制相似问题