JavaSound: обнаружение смены устройства - PullRequest
1 голос
/ 12 сентября 2011

Folks, Я работаю над апплетом, который захватывает аудио с локального компьютера и передает его на сервер. Я использую Java-апплет, который в настоящее время подключается к устройству по умолчанию и выполняет восходящий поток. Все идет хорошо.

Теперь я хочу расширить функциональность, чтобы пользователи могли выбирать устройство ввода звука, а также отображать индикатор уровня звука выбранного устройства на веб-странице.

Я написал многопоточную утилиту, которая периодически делает AudioSystem.getMixerInfo(); и ищет изменения. Существует также поток, который читает с выбранного устройства и отображает уровни звука.

Моя проблема в том, что когда я запускаю свой код и подключаю USB-гарнитуру, новое устройство не обнаруживается. Однако, если я закрою свой код, а затем подключу USB, устройство действительно появится.

Является ли это известным и задокументированным ограничением JavaSound, заключающимся в том, что он не выполняет выборку набора устройств после запуска процесса?

Я использую OSX Lion.

Спасибо за любые идеи.

-Raj

...