小编mmm*_*mmx的帖子

保存Android Stock语音识别引擎的音频输入

我试图在文件中保存由android的语音识别服务监听的音频数据.

实际上我RecognitionListener按照这里的解释实现: Android上的语音到文本

将数据保存到缓冲区中,如下所示: 捕获发送到Google语音识别服务器的音频

并将缓冲区写入Wav文件,如此处所示. Android将原始字节记录到HVEp Streaming的WAVE文件中

我的问题是如何获得适当的音频设置以保存在wav文件的标题中.事实上,当我播放wav文件时,只听到奇怪的噪音,这个参数,

short nChannels=2;// audio channels
int sRate=44100;    // Sample rate
short bSamples = 16;// byteSample
Run Code Online (Sandbox Code Playgroud)

或者没有这个:

short nChannels=1;// audio channels
int sRate=8000;    // Sample rate
short bSamples = 16;// byteSample
Run Code Online (Sandbox Code Playgroud)

令人困惑的是从logcat查看语音识别任务的参数我发现第一个Set PLAYBACK采样率为44100 HZ:

    12-20 14:41:34.007: DEBUG/AudioHardwareALSA(2364): Set PLAYBACK PCM format to S16_LE (Signed 16 bit Little Endian)
    12-20 14:41:34.007: DEBUG/AudioHardwareALSA(2364): Using 2 channels for PLAYBACK.
    12-20 14:41:34.007: DEBUG/AudioHardwareALSA(2364): Set PLAYBACK sample rate to 44100 HZ
    12-20 14:41:34.007: DEBUG/AudioHardwareALSA(2364): …
Run Code Online (Sandbox Code Playgroud)

audio android speech-recognition wav voice-recognition

38
推荐指数
1
解决办法
7239
查看次数