으로 음성을 캡처하여 Google 서버에서 음성을 인식하도록 권장합니다. Stephan의 answer에서 this question으로 제안 된대로 RecognitionListener와 함께 SpeechRecognizer 클래스를 사용합니다. 또한, 내가 좋아하는 RecognitionListener에서 onBufferReceived() 콜백을 사용하여 인식되는 오디오 신호를 캡처하려고 : 오디오의 덩어리가Google 음성 인식 서버
byte[] sig = new byte[500000] ;
int sigPos = 0 ;
...
public void onBufferReceived(byte[] buffer) {
System.arraycopy(buffer, 0, sig, sigPos, buffer.length) ;
sigPos += buffer.length ;
}
...
이 SpeechRecognizer는 구글 서버에 연결 실패 할 때를 제외하고 잘 작동 것 같다, 위에 언급 된 sig
배열로 복사되지 않으며 HTTP 연결 시간 초과 예외가 발생합니다. SpeechRecognizer는 결국 Google 서버에 연결되고 인식 결과는 완전한 오디오 신호가 수신되었음을 나타냅니다. sig
배열에만 일부 오디오 청크가 없습니다.
누구나 같은 문제가 발생합니까? 솔루션에 대한 힌트가 있습니까? 고맙습니다!
누락 된 청크를 인식하기 위해 원본 오디오 신호를 다시 얻으려면 sig를 어떻게 처리 했습니까? – ComputerEngineer88