首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Javasound混音器不显示任何输出设备

Javasound混音器不显示任何输出设备
EN

Stack Overflow用户
提问于 2015-05-03 04:53:36
回答 1查看 291关注 0票数 0

当我运行这段代码时,我得到了4个对象的输出,它们都是输入的。我想要的只是我的电脑的默认输出(Macbook 2014年末支持OSX 10.9.5)。

代码语言:javascript
复制
public static void aPlayer(){
    Mixer.Info[] mixInfos = AudioSystem.getMixerInfo();
    for (Mixer.Info info : mixInfos){

        System.out.println("Name:  " + info.getName() +  ",     
        Description:  " + info.getDescription());
    }
}

此代码返回:

代码语言:javascript
复制
Name:  Java Sound Audio Engine, Description:  Software mixer and synthesizer
Name:  Built-in Microph, Description:  No details available
Name:  Soundflower (2ch), Description:  No details available
Name:  Soundflower (16ch), Description:  No details available    

这段代码与this tutorial的开头完全相同,对编写它的人有效,但它似乎不适用于我,我也不知道为什么。

EN

回答 1

Stack Overflow用户

发布于 2015-05-03 16:20:03

您可以尝试输出有关每个混音器的更多信息:

代码语言:javascript
复制
for (Mixer.Info info : mixInfos){
    System.out.println("Name:  " + info.getName() +  ",     
    Description:  " + info.getDescription());

    Mixer mixer = AudioSystem.getMixer(info);
    if (mixer != null) {
       Line.Info[] sourceLineInfo = mixer.getSourceLineInfo();
       if (sourceLineInfo != null) {
          for (final Line.Info info : sourceLineInfo)
             System.out.println(info.toString());
       }

       Line.Info[] targetLineInfo = mixer.getTargetLineInfo();
       if (targetLineInfo != null) {
         for (final Line.Info info : targetLineInfo)
            System.out.println(info.toString());
       }
   }
}

如果这显示了有关SourceDataLineClip的信息,则可以在该混合器上进行输出。如果你有TargetDataLine,你可以做输入。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30007361

复制
相关文章

相似问题

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