gpt4 book ai didi

java - InputStream 和 URL 不兼容

转载 作者:行者123 更新时间:2023-11-29 05:15:49 25 4
gpt4 key购买 nike

我在 Eclipse Helios Java 1.6 中工作。我已经下载了 CMU Sphinx-4 并添加到 Java 项目中。下面的代码是将音频文件转换为文本文件。

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();
}
}

行内错误:

recognizer.startRecognition(new File("D:/audio.mp3").toURI().toURL());

错误:

- 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() 定义时,

public void startRecognition(InputStream stream) {
recognizer.allocate();
context.setSpeechSource(stream);
}

如何解决这个兼容性问题?代码取自here

从 Helios 转移到升级版本或 Java 1.6 到更高版本可能代价高昂,因为很多以前的代码都是在 Helios 和 Java 1.6 上编写的。

最佳答案

该方法需要一个 InputStream 作为参数,您不能传入一个 File 或一个 URL 来代替。

只需传入一个InputStream:

recognizer.startRecognition(new FileInputStream("D:/audio.mp3"));

关于java - InputStream 和 URL 不兼容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26596857/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com