Speech and Android의 경우 Google 플랫폼이 가장 좋습니다. 문제는 플랫폼에 대한 호출이 필요하다는 것입니다. 시도하지 않은 오프라인 버전이 있습니다. Offline Speech Recognition In Android (JellyBean) Google 플랫폼의 경우 Asset Store에서 20 달러에 저렴한 플러그인이 있습니다.
주요 문제는 연속 탐지를 제공하지 않으므로 녹음을 시작하고 전송을 중지해야합니다. 어쩌면 당신에게 적합 할 수도 있습니다. 문제는 많은 사용자가있는 경우 한 달에 1 시간 만 사용 가능하므로 서버 사용료를 지불해야합니다. 나는 그것이 $ 0.015/분 정도라고 생각한다. 다른 한편으로는 80 개 이상의 언어로 지역 악센트를 포함합니다.
CMUSphynx는 다른 솔루션입니다. Opensource 및 오프라인 기능으로 좋은 선택입니다. 우리는 Unity를위한 우리 자신의 Android 플러그인을 생각해 내야했지만 우리는 사용량을 줄이기 위해 열악한 결과를 보았습니다. (묻기 전에, 아뇨, 불행히도 플러그인을 제공 할 수는 없습니다 ... NDA 관련). 또한 언어는 제한되어 있습니다.
Nuance와 같은 다른 솔루션이 있지만 더 좋지만 비용이 많이 듭니다 (데모 게임의 범위를 벗어날 가능성이 큽니다). 그들의 API는 자동 리다이렉션을 위해 폰을 통한 음성과 같은 전문적인 상황에서 더 많이 발전되고 정기적으로 사용됩니다. 또한 Vuzix 장치에도 사용됩니다.
Google 음성을 사용할 수 있다고 생각하면 데이터를 제어 할 수 있습니다. 기본적으로 오디오 파일을 녹음하여 서버에 보내면 서버는 인식 된 단어 목록이 포함 된 json 객체로 성공 확률로 응답합니다.
첫 번째 콘텐츠를 가져 와서 콘텐츠를 파싱합니다. 당신이 원하는 고려하면 이동 동작을 얻기 위해 그 결과는 다음과 같습니다 pocketsphinx에 대한
// This is the result from GSP
string str = "Move player one unit";
if(str.Length == 4)
{
// Parse
string action = str[0];
string actor = str[1];
string amountStr = str[2];
string unit = str[3];
// Convert
float amoutFl = ParseAmount(amountStr);
// Check
if(hashSetActor.Contains(actor) == false){ // error }
if(hashSetUnit.Contains(unit) == false){ // error }
if(actionDictionary.Contains(action))
{
// Act
actionDictionary[action](actor, amountFl,unit);
}
}
제공되는 링크는 안드로이드 용 OSX 용입니다. –