Mini-odtwarzacz - jak zatrzymać muzykę?

0

Piszę mini-odtwarzacz mp3, korzystam z JLayer'a.
Napisałem już kilka ciekawych funkcji, ale problem jest przy zatrzymywaniu muzyki. Może problem wydaj się być trywialny, ale chyba wcale taki nie jest:

Otóż po uruchomieniu muzyki (tworzę AdvacePlayer i korzystam z funkcji play()) muzyka gra aż do momentu zakonczenia utworu. Próba wybierania następnego utwóru sprawia tylko, że piosenki się nakładają.

Proszę o pomoc, pozdrawiam :)

0

System.exit(0);

0

Dzięki, ale to nie rozwiazuje problemu - gdyz zamyka program calkowice.
Chodzi o coś co przerwie odtwarzanie muzyki, a nie całego programu. Dodam że operuję na wątkach.

Wie ktoś jak coś takiego zrobić? :)

0

tak tylko głupio ort!, sam robie w audiere na razie, ale skoro masz play, to może i funkcja stop ?

0

Jest funkcja stop i close, ale obie nie działają, a być może ja coś źle robię?

Path dir = Paths.get("wolf.mp3");
String song = dir.toString();
FileInputStream fis = new FileInputStream(song);
AdvancedPlayer playMp3 = new AdvancedPlayer(fis);
playMp3.play(1600,2000);
			
playMp3.close(); //<---- kompiluije się normalnie, 
// ale to wcale nie przerywa, muzyka odtwarza sie do konca
playMp3.stop();

Co jest źle?

0

Dzieki za wskazowki, niemniej jednak zamiana kolejności stop i close nic nie dalo, piosenka gra ciagle nieprzerwanie. Jedyne co je przerywa to "chamskie" zamknięcie programu, nic innego nie pomaga.

Macie jakie sugestie do rozwiazania?

0

Spróbuj wywołanie metody play umieścić w osobnym wątku, którego w odpowiednim momencie możesz spróbować skillować za pomocą bardzo dziś niezalecanej metody Thread.stop. Nie wiem czy to cos da skoro wygląda na to, że play jest asynchroniczna, ale możesz w takim wątku spróbować umieścić również tworzenie całego obiektu AdvancedPlayer. Gdyby takie twarde przerywanie się to udało (choć to mało prawdopodobne), to pamiętaj, że takie "patchowanie" jest bardzo niezalecane i będzie co najmniej kontrowersyjne. Prościej jest napisać do autora biblioteki zgłaszając problem lub poszukać jej nowszej wersji (o ile istnieje).

1 użytkowników online, w tym zalogowanych: 0, gości: 1