Napisałem kilkaset aplikacji liniowych w Clojure, które używają biblioteki JLayer Java dla audio, w której uruchamiam pliki mp3 w tle. Działa to dobrze, ale gdy tylko uruchomię inną muzykę, YouTube itp. W tle (używam Arch Linux), dźwięki w mojej aplikacji całkowicie się zatrzymują.Muzyka w JLayer zatrzymuje się, gdy inne aplikacje odtwarzają muzykę
Zmarnowałem ostatnie dwie godziny i wypróbowałem dziesiątki rzeczy, aby to naprawić, więc każda rada jest doceniana.
Moim pierwszym przypuszczeniem jest, że twoja aplikacja jest zatrzymana, jeśli jest umieszczona w tle. Moim drugim domysłem byłoby, że bufor dźwiękowy działa tylko dla jednej aplikacji. Czy twoja aplikacja robi cokolwiek innego, jeśli jest w tle? Spróbuj napisać do pliku i sprawdź, czy plik ten nadal rośnie, nawet gdy aplikacja jest w tle. Czy możesz dać nam http://sscce.org/, abyśmy mogli spróbować go odtworzyć i naprawić? –
brzmi bardziej jak problem ze sterownikiem dźwięku niż problem Clojure/Java jako taki .... może lepiej zapytać na forum ekspertów Linuksa! – mikera
dziękuję za odpowiedź, wciąż jest to problem, mogę uruchamiać wiele strumieni dźwięku z innych źródeł, np. Skype + youtube + mp3 w tym samym czasie działa dobrze, dodatkowo mogę sprawić, by moja aplikacja tworzyła wykresy, podczas gdy muzyka działa w tle, więc może działać, gdy dźwięk jest włączony. Tylko gdy inne urządzenie ma dźwięk, zatrzyma się natychmiast i nie wznowi aż do resetu. – ChrisR