java - 我可以在加载 Clip 对象后关闭 AudioInputStream 吗?

标签 java javasound

在我的代码中,我正在加载声音并关闭或不关闭 AudioInputStream,声音就会播放。最好关闭还是有问题?

        try {
        as = AudioSystem.getAudioInputStream(new File("som/trippygaia1.mid"));
        clip = AudioSystem.getClip();
        clip.open(as);

        as.close(); // ?

    } catch (Exception e) {
        e.printStackTrace();
    }

    if (clip != null) {
        clip.start();
    }

最佳答案

我刚刚在一个简短的测试程序中检查了这一点。 AudioInputStream 不需要保持打开状态,Clip 就能够播放其音频。顺便说一句,这也意味着可以使用 try-with-resources 加载 AudioInputStream(但不是 Clip)。

关于java - 我可以在加载 Clip 对象后关闭 AudioInputStream 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28565135/

相关文章:

java - 初始化非 null 的 Activity

javascript - 使用 nashorn 从 JavaScript 引用现有 Java 对象

java - 如何检测声音文件中的某些声音并与它们同步执行操作?

java - 在java中暂停mp3

java - 在浏览器中打开特定链接,而不是通过正则表达式打开 webview

java - 如何在Java中添加动态验证码

java - 使用 java 通过 .bat 运行 busybox

java - java中wav文件转换为字节数组

java - 使用 JAVA 从线路输入录制音频

java - *.wav 文件需要位于目录中的什么位置?