c++ - C++'speechapi_cxx.h':没有这样的文件或目录 Visual Studio
问题描述
我正在 Visual Studio 2019 上尝试语音转文本功能。我在 Microsoft 网站上找到了此代码,但编译器显示“speechapi_cxx.h”:没有这样的文件或目录。
..................................................... ……………………………………………………………………………………………………………………
#include <iostream> // cin, cout
#include <speechapi_cxx.h>
using namespace std;
using namespace Microsoft::CognitiveServices::Speech;
void recognizeSpeech() {
// 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").
auto config = SpeechConfig::FromSubscription("YourSubscriptionKey", "YourServiceRegion");
// Creates a speech recognizer
auto recognizer = SpeechRecognizer::FromConfig(config);
cout << "Say something...\n";
// Starts speech recognition, and returns after a single utterance is recognized. The end of a
// single utterance is determined by listening for silence at the end or until a maximum of 15
// seconds of audio is processed. The task returns the recognition text as result.
// Note: Since RecognizeOnceAsync() returns only a single utterance, it is suitable only for single
// shot recognition like command or query.
// For long-running multi-utterance recognition, use StartContinuousRecognitionAsync() instead.
auto result = recognizer->RecognizeOnceAsync().get();
// Checks result.
if (result->Reason == ResultReason::RecognizedSpeech) {
cout << "We recognized: " << result->Text << std::endl;
}
else if (result->Reason == ResultReason::NoMatch) {
cout << "NOMATCH: Speech could not be recognized." << std::endl;
}
else if (result->Reason == ResultReason::Canceled) {
auto cancellation = CancellationDetails::FromResult(result);
cout << "CANCELED: Reason=" << (int)cancellation->Reason << std::endl;
if (cancellation->Reason == CancellationReason::Error) {
cout << "CANCELED: ErrorCode= " << (int)cancellation->ErrorCode << std::endl;
cout << "CANCELED: ErrorDetails=" << cancellation->ErrorDetails << std::endl;
cout << "CANCELED: Did you update the subscription info?" << std::endl;
}
}
}
int main(int argc, char** argv) {
setlocale(LC_ALL, "");
recognizeSpeech();
return 0;
}
解决方案
您的计算机上未安装语音 SDK。你可以在这里下载它https://docs.microsoft.com/en-us/azure/cognitive-services/speech-service/speech-sdk
推荐阅读
- c++ - 迭代时 std::vector 自然线程安全
- java - 为 POST 重新加载 Nginx Ingress 时,Apache HTTP 客户端抛出 NoHttpResponseException
- excel - 如何复制粘贴列调整带有图像的单元格的高度而不扭曲图像。(Excel VBA)
- selenium - chromedriver 处于无头模式时无法下载文件。如何让它工作?
- spring-boot - Ehcache 3 和 Spring Boot 管理统计
- c - 案例切换程序的实施改进
- javascript - 用图像在画布上绘图
- javascript - Rails - 在为其他用户分配新客户端时向其他用户发送警报(不刷新他们的页面)
- stripe-payments - 生成 Stripe 标准帐户 OAuth 链接时传递用户信息
- mysql - 如何使用 codeigniter 在 mysql 几何列中插入多边形点?