Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java和USB声卡中的声音问题_Java_Audio_Usb_Alsa - Fatal编程技术网

Java和USB声卡中的声音问题

Java和USB声卡中的声音问题,java,audio,usb,alsa,Java,Audio,Usb,Alsa,我在一个大学软件开发课上使用Java,最近我们做了一些构建MP3播放器的工作 我的问题是Java中的声音不能正确播放。我在Ubuntu 10.10上,我有一台笔记本电脑,但我使用的是外置声卡(USB,因为我的内置声音听起来不太好)。问题是Java总是通过我的笔记本电脑内部声卡播放声音(即使Ubuntu将内部声音列为关闭),所以我听到的声音来自我的小型笔记本电脑扬声器,而不是连接到声卡的扬声器 我可以使用aoss程序通过声卡播放,但这样做很痛苦。我在我的系统上使用的是带USB声卡的alsa,它可以

我在一个大学软件开发课上使用Java,最近我们做了一些构建MP3播放器的工作

我的问题是Java中的声音不能正确播放。我在Ubuntu 10.10上,我有一台笔记本电脑,但我使用的是外置声卡(USB,因为我的内置声音听起来不太好)。问题是Java总是通过我的笔记本电脑内部声卡播放声音(即使Ubuntu将内部声音列为关闭),所以我听到的声音来自我的小型笔记本电脑扬声器,而不是连接到声卡的扬声器


我可以使用aoss程序通过声卡播放,但这样做很痛苦。我在我的系统上使用的是带USB声卡的alsa,它可以很好地与其他声音程序和音乐播放器配合使用,关于如何解决这个问题有什么想法吗?我很乐意提供任何人需要或会觉得有用的信息。谢谢

注意:我不熟悉JavaSound

根据提供的示例代码,它看起来像

DataLine.Info   info = new DataLine.Info(SourceDataLine.class, audioFormat);
行是请求播放机制的行,并且您提供的音频格式与内置声卡匹配


您需要找出哪些机制可用于显式选择给定的一个,而不仅仅是第一个“足够好”的机制。

您的Java代码是如何到达声卡的?我没有为Java编写到达声卡的代码,我假设Java使用了系统默认值。我将如何告诉java访问声卡?您当前如何播放声音?我一直在使用这个测试文件,当我播放一个文件时,这个文件会导致前面描述的问题。文件播放,但它不在我的笔记本电脑内部声音中,而不是我的声卡。好吧,如果它能帮助任何人解决问题,如果我使用OpenJDK java 6运行时而不是sun java,我就可以正确地获得声音(无需任何设置或任何东西)。你知道为什么会有差异,一些配置设置或其他什么吗?如果我错了,请纠正我,但音频格式不是从我正在阅读的声音文件中获取的吗?我很确定这只是给了我们关于文件设置的信息。我认为问题可能与java使用了错误的混音器有关,但我不确定。你知道吗?