使用Java访问CD-ROM

使用Java访问CD-ROM,java,audio,javasound,cd,Java,Audio,Javasound,Cd,我想问一下,是否有可能通过Java中的声音库访问cdrom设备 我想做的是使CD模拟静音。我已经用谷歌搜索了很长一段时间,但是没有关于这种操作的信息。我认为这是琐碎的或非常复杂的 此简单代码列出了我的混音器: try { Mixer.Info [] mixerList = AudioSystem.getMixerInfo(); for (Mixer.Info mixerInfo : mixerList) { System.out.println();

我想问一下,是否有可能通过Java中的声音库访问cdrom设备

我想做的是使CD模拟静音。我已经用谷歌搜索了很长一段时间,但是没有关于这种操作的信息。我认为这是琐碎的或非常复杂的

此简单代码列出了我的混音器:

try
{
    Mixer.Info [] mixerList = AudioSystem.getMixerInfo();
    for (Mixer.Info mixerInfo : mixerList)
    {
        System.out.println();
        System.out.println("MIXER: "+ mixerInfo.getName());
        Mixer mixer = AudioSystem.getMixer(mixerInfo);
        Line.Info[] li = mixer.getSourceLineInfo();
        System.out.println("LINES:");
        for (Line.Info info2 : li)
        {
            System.out.println(info2.toString());
        }

    }
} 
catch (Exception e)
{
    e.printStackTrace();
}
输出为:

MIXER: Primary Sound Driver LINES: interface SourceDataLine supporting 8 audio formats, and buffers of at least 32 bytes interface Clip supporting 8 audio formats, and buffers of at least 32 bytes MIXER: Speakers (Realtek High Definition Audio) LINES: interface SourceDataLine supporting 8 audio formats, and buffers of at least 32 bytes interface Clip supporting 8 audio formats, and buffers of at least 32 bytes MIXER: Primary Sound Capture Driver LINES: MIXER: Desktop Microphone (Cinema - Mi LINES: MIXER: Microphone (Realtek High Defini LINES: MIXER: Port Speakers (Realtek High Definiti LINES: MIXER: Port Desktop Microphone (Cinema - Mi LINES: MICROPHONE source port MIXER: Port Microphone (Realtek High Defini LINES: MICROPHONE source port 混音器:主要声音驱动器 线: 接口SourceDataLine支持8种音频格式和至少32字节的缓冲区 接口剪辑支持8种音频格式和至少32字节的缓冲区 混音器:扬声器(Realtek高清音频) 线: 接口SourceDataLine支持8种音频格式和至少32字节的缓冲区 接口剪辑支持8种音频格式和至少32字节的缓冲区 混音器:主要声音捕获驱动程序 线: 混音器:台式话筒(影院-Mi) 线: 混音器:麦克风(Realtek高清) 线: 混音器:端口扬声器(Realtek高清) 线: 混音器:端口桌面话筒(影院-Mi) 线: 麦克风源端口 混音器:端口话筒(Realtek高清) 线: 麦克风源端口 但是没有像cd analog这样的设备。当我尝试使用
port.Info.COMPACT\u DISC
从混音器获取特定端口时,出现了一个异常
没有这样的设备

有人能帮我解决这个问题吗?

看看图书馆:

JavaAVM(音频视频媒体)是一个用于访问和访问的JavaAPI 控制光盘驱动器,特别是CD-ROM和CD-R(W)驱动器, 可移动驱动器和环回设备

光盘专用:

  • 通过音量调节控制CD音频播放

我只想在没有其他方法的情况下使用第三方库。@user2018059我不知道其他方法(除了通过JavaScript媒体api)此外,库也不错,它们实际上很有帮助,在大多数情况下比我们自己做得更好,因为它在许多平台上都有一些改进的时间……您可以看到第三方库是如何做到这一点的,但最有可能使用JNI。也可以看到,虽然这与静音CD的任务略有不同,但Java声音可能与我们自己的一样我对这一点很满意,因为它是在改变系统卷。因此,我支持@DavidKroukamp的建议-使用第三方API。似乎David的建议是不可避免的。但是如何使用它?我很困惑。据我所知,我需要下载这个包并将其构建到jar文件中。然后导入到我的项目中。我说的对吗?David你用过它吗艾尔?