java - 使用JLayer播放mp3资源

标签 java mp3 jlayer

我正在尝试使用 JLayer 播放 mp3。该文件在我的 jar 里,但我不知道如何让它播放。我如何为我的应用程序提供与我的类位于同一包中的 mp3 文件的路径? 这是我的代码:

File file = new File("audio.mp3");

System.out.println("located media at "+file.getAbsolutePath());

AdvancedPlayer player = null;

try {

    player = new AdvancedPlayer(new FileInputStream(file), 

    FactoryRegistry.systemRegistry().createAudioDevice());
} catch (FileNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (JavaLayerException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
System.out.println("Starting the music... ");
try {
    player.play();
} catch (JavaLayerException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

最佳答案

您不应将File 用于源文件夹中的资源。
尝试
InputStream is = getClass().getResourceAsStream("/(包名)/audio.mp3");

关于java - 使用JLayer播放mp3资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26946826/

相关文章:

audio - html5 音频播放器和网络上的 .aif 文件

java - 我按照 oracle 中关于 JLayer 的教程进行操作,但它不适用于此代码

java - 组件分层 Java Swing,悬停时显示层

java - 局部变量同步,比同步方法更好?

java - 无法将数据从 FireBase 加载到 Recycler View 中

audio - 如何使用 “Shine-MP3-Encoder-on-AS3-Alchemy”?

javascript - 为 GWT 创建 MP3 播放器

java - 字符串 url 获取扩展名

java - 安卓工作室 : Boolean function crashes my app

java - 如何导入我下载的这些 Java 类?