Я написал для забавы программу Java для воспроизведения некоторых мелодий в формате .wav.
Во время разработки звук воспроизводился нормально на моей машине Windows, но, тем не менее, при попытке выполнить то же самое код на Ubuntu аудио не проигрывается. Нет ошибок, зарегистрированных в консоли, я нажимаю кнопку «Воспроизвести», и ничего не происходит.
Вот код, который я использовал, также содержит некоторый код регистрации:
try {
System.out.println("All mixers:");
for (Mixer.Info m : AudioSystem.getMixerInfo()) {
System.out.println(m.getName());
}
System.out.println("Default mixer: " + AudioSystem.getMixer(null).getMixerInfo());
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(new File("bsc.wav"));
Clip clip = AudioSystem.getClip();
clip.open(audioInputStream);
clip.start();
} catch (UnsupportedAudioFileException ex) {
ex.printStackTrace();
} catch (IOException ex) {
ex.printStackTrace();
} catch (LineUnavailableException ex) {
ex.printStackTrace();
}
Это выводит:
All mixers:
Port HDMI [hw:0]
Port PCH [hw:1]
Port Snowball [hw:2]
HDMI [plughw:0,3]
HDMI [plughw:0,7]
HDMI [plughw:0,8]
PCH [plughw:1,0]
PCH [plughw:1,1]
PCH [plughw:1,2]
Snowball [plughw:2,0]
Default mixer: HDMI [plughw:0,3], version 5.3.0-51-generic
Считал, что это скорее проблема с моей настройкой, чем с кодом, поэтому подумал, что это подходит для суперпользователя. Также написал код, чтобы попробовать другие доступные микшеры, но ни один из них не сработал.
Оглядываясь вокруг, слышал что-то о необходимости установки JMF, но не мог найти, действительно ли это решение.
Запуск Ubuntu 19.10 и Java 11.0.7 OpenJDK.
Edit1; нашел эту страницу в StackOverflow о Java Sound. Пробовал запускать пример кода, но тоже безрезультатно ...