首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >InputStream与URL不兼容

InputStream与URL不兼容
EN

Stack Overflow用户
提问于 2014-10-27 21:07:35
回答 1查看 719关注 0票数 1

我在EclipseHeliosJava1.6中工作。我下载了CMUSphinx-4并添加到Java项目中。下面的代码是将音频文件转换为文本文件。

代码语言:javascript
复制
import java.io.File;

import edu.cmu.sphinx.api.Configuration;
import edu.cmu.sphinx.api.SpeechResult;
import edu.cmu.sphinx.api.StreamSpeechRecognizer;

public class AudioToText {
    public static void main(String [] args){
        Configuration configuration = new Configuration();

        // Set path to acoustic model.
        configuration.setAcousticModelPath("C:/Program Files/eclipse/sphinx4-5prealpha/models/acoustic");
        // Set path to dictionary.
        configuration.setDictionaryPath("C:/Program Files/eclipse/sphinx4-5prealpha/models/acoustic/wsj/dict/cmudict.0.6d");
        // Set language model.
        configuration.setLanguageModelPath("C:/Program Files/eclipse/sphinx4-5prealpha/models/language/en-us.lm.dmp");

        StreamSpeechRecognizer recognizer = new StreamSpeechRecognizer(configuration);
        recognizer.startRecognition(new File("D:/audio.mp3").toURI().toURL());
        SpeechResult result = recognizer.getResult();
        recognizer.stopRecognition();
    }
}

错误是一致的:

代码语言:javascript
复制
recognizer.startRecognition(new File("D:/audio.mp3").toURI().toURL());

错误:

代码语言:javascript
复制
- The method startRecognition(InputStream) in the type StreamSpeechRecognizer is not applicable for the 
 arguments (URL)
- The method startRecognition(InputStream) in the type StreamSpeechRecognizer is not applicable for the 
 arguments (File)
- Line breakpoint:AudioToText [line: 19] - main(String[])

当我查看startRecognition()定义时,

代码语言:javascript
复制
public void startRecognition(InputStream stream) {
    recognizer.allocate();
    context.setSpeechSource(stream);
}

如何解决此兼容性问题?代码取自这里

从Helios转换到升级版本或Java1.6到更高版本可能会很昂贵,因为许多以前的代码都是在Helios和Java1.6上编写的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-27 21:12:00

该方法需要一个InputStream作为参数,您不能传入一个FileURL

简单地传递一个InputStream

代码语言:javascript
复制
recognizer.startRecognition(new FileInputStream("D:/audio.mp3"));
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26596857

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档