Пока я нашел только два пути:
- исключение
- ничего не играть
ad.2. Довольно недавний код (2010)
но ничего не делает, совсем не звучит.
ad.1. Например:
Все, что я получаю, это исключение "Аудиоустройство недоступно". В этой статье (2008) - lsof | grep snd - как освободить звуковое устройство linux - объясняется, что Java должна получить эксклюзивный доступ к аудиоустройству.
Однако я не могу позволить себе такое условие. Я использую звук, чтобы уведомить себя о длительном процессе (несколько часов), я не могу избавиться от всех звуков (включая те, которые вызываются с помощью Flash-рекламы) только для того, чтобы сделать Java удобной.
Итак, сейчас я использую Total Extreme - я просто запускаю внешнюю программу: https://stackoverflow.com/a/8370223/210342. Это ужасно ужасно, потому что новая программа запускается только для уведомления.
Вопрос
Есть ли способ воспроизведения файла WAV:
- в Linux,
- совместным способом (во время воспроизведения Java может также воспроизводиться другой звук),
- который издает звук
- в Java (без запуска внешних программ)?
Java 1.6, openSUSE 11.4