2014-12-03 26 views
7

我正在尋找一種使用離子框架來進行語音識別的方法。我想在iOS和Android設備上運行應用程序。 目前我在ios和android中都提供了一個web視圖,並且有一個公共代碼庫。我想包含語音識別功能並獲取語音輸出。使用離子框架的語音識別

+0

沒有ü找到任何解決辦法?我也有同樣的問題 – Satz 2015-09-21 17:49:43

+0

@ saurabh-jain如果下面的答案有幫助,請考慮標記爲您的問題的正確答案。 – jpoveda 2015-11-24 15:15:05

回答

6

如果您在Google上搜索「cordova語音識別」,並且您在Apache Cordova網站上查看插件回購,您看起來至少有幾個選項。

這是我找到的兩個快速的。

這裏的關鍵是,離子型框架是建立在科爾多瓦,所以真的是你想要一個科爾多瓦插件語音識別。

+0

看起來Cordova SpeechRecognitionPlugin是基於Google Web Speech API的,對吧? – 2016-07-12 13:07:19

3

我被困在同一點。然後我找到了一個url,我得到了一個解決方案。根據url,他們跟着cordova plugin。所以,你需要遵循以下步驟:

1 - 添加科爾多瓦插件

cordova plugin add https://github.com/macdonst/SpeechRecognitionPlugin 

2 - 增加TTS插件

cordova plugin add cordova-plugin-tts 

3 - 執行插件代碼

app.controller('AppCtrl', function($scope) { 
    $scope.data = { 
    speechText: '' 
    }; 
    $scope.recognizedText = ''; 

    $scope.speakText = function() { 
    window.TTS.speak({ 
      text: $scope.data.speechText, 
      locale: 'en-GB', 
      rate: 0.7 
     }, function() { 
      // Do Something after success 
     }, function (reason) { 
      // Handle the error case 
     alert(reason+""); 
     }); 
    }; 

    $scope.record = function() { 
    var recognition = new SpeechRecognition(); 
    recognition.onresult = function(event) { 
     if (event.results.length > 0) { 
      $scope.recognizedText = event.results[0][0].transcript; 
      $scope.$apply() 
     } 
    }; 
    recognition.start(); 
    }; 
}); 

享受你的代碼的時間:)