Java Sound API, aby uzyskać dostęp do systemu / master regulacji głośności w Vista i Win 7

Historia i sytuacja:

Obecnie pracuję nad aktualizacją aplikacji Java, która została opracowana dla klienta kilka lat temu (do uruchomienia na WinXP) i jest używana do testowania i szkolenia osób z niektórymi wadami słuchu. Użytkownicy, którzy kupili tę aplikację, zostali wyposażeni w określone urządzenie dźwiękowe USB i słuchawki.

Jednym z najważniejszych wymagań dla tego oprogramowania jest to, że dźwięk musi być odtwarzany użytkownikowi przy określonych poziomach dźwięku w decybelach. Za pomocą Java Sound API, aplikacja została opracowana w celu dynamicznego dostosowania objętości systemu Windows do obliczonych poziomów (na podstawie pomiarów wykonanych podczas kalibracji urządzenia dźwiękowego USB i słuchawek podczas opracowywania).

Problem:

Aplikacja musi teraz zostać zaktualizowana, aby obsługiwać Windows Vista i Windows 7, jednak ze względu na nową architekturę dźwięku per-app dla Windows, nie udało mi się znaleźć żadnego sposobu na uzyskanie dostępu do woluminu Master / System za pomocą API Java Sound.

Sam system kontroli głośności okna aplikacji nie wycina go, ponieważ jest zależny od głośności systemu i nie ma możliwości zagwarantowania, że ​​użytkownik usłyszy dźwięk wyjściowy na określonym, znanym poziomie.

Czy ktoś wie, czy można to zrobić w Javie, a jeśli tak, to w jaki sposób? Jeśli nie jest to możliwe, czy możesz podać jakieś wskazówki dotyczące tego, co może być najprostszym sposobem na osiągnięcie tego celu? (Być może JNI i C - choć nigdy wcześniej nie korzystałem z JNI ... nie mogłem być tego świadomy?)

questionAnswers(2)

yourAnswerToTheQuestion