怎么实现识别本地声音文件
独孤神族 发布于2015-08 浏览:2395 回复:1
0
收藏

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

        speechRecognizer = SpeechRecognizer.createSpeechRecognizer(this, new ComponentName(this, VoiceRecognitionService.class));

        speechRecognizer.setRecognitionListener(this);

start();

}

    private static final int REQUEST_UI = 1;

    private String path="/sdcard/KaiXin/Record/d2485557-cc46-4515-8640-2ff4b63f66fa.amr";

    

    private void start() {

        Intent recognizerIntent = new Intent();

         recognizerIntent.putExtra("asr-base-file-path", path);

         //TODO 为recognizerIntent设置参数,支持的参数见本文档的“识别参数”一节

        // 为了支持离线识别能力,请参考“离线语音识别参数设置”一节

//        startActivityForResult(recognizerIntent, REQUEST_UI);

         speechRecognizer.startListening(recognizerIntent);

//         speechRecognizer.stopListening();

    }




@Override

public void onResults(Bundle data) {

System.out.println("data="+data);

    @SuppressWarnings("unused")

ArrayList results = data.getStringArrayList(SpeechRecognizer.RESULTS_RECOGNITION);

 // 原始结果

//     String originResult = results.getString("origin_result");

}

核心代码如下。根本识别不到我的本地声音文件。直接错误代码:7          到底哪点不对

收藏
点赞
0
个赞
共1条回复 最后由liu10028回复于2015-08
#2liu10028回复于2015-08

你好,问题如下:

1.识别音频资源只支持 PCM wav 等无压缩的音频格式

2.参数设置错了,请参考

infileString音频源该参数支持设置为:
  1. 文件系统路径,如:”/sdcard/test/test.pcm”
  2. java资源路径,如:”res:///com/baidu.test/16k_test.pcm”
  3. 数据源方法全名,格式如:”#com.test.Factory.create8kInputStream()”(解释:Factory类中存在一个返回InputStream的方法create8kInputStream())

    注意:必须以井号开始;方法原型必须为:public static InputStream your_method()


0
TOP
切换版块