Odtwarzanie wave działa tylko raz

Odtwarzanie wave działa tylko raz
  • Rejestracja: dni
  • Ostatnio: dni
0

Poniższym sposobem mogę na windowsie odsłuchać plik wave.
Kłopot w tym, że ponowne wciśnięcie przycisku odtwarzania nic nie daje(natomiast wczytanie innego łejwa już pomaga).
Próbowałem za każdym razem zamykać i otwierać clip, flushować, czy resetować audio, ale to nic nie daje.
Co zrobić żeby móc kilka razy(funkcji loop()) z rzędu odtworzyć dany plik?

Wczytywanie pliku:

Kopiuj
Actions.audio = AudioSystem.getAudioInputStream(jfc.getSelectedFile()); 

Odtwarzanie pliku, po kliknięciu w przycisk:

Kopiuj
Clip clip = AudioSystem.getClip();
clip.open(audio);
clip.start();
 
  • Rejestracja: dni
  • Ostatnio: dni
0

Ty nie wczytujesz pliku, tylko otwierasz strumień. Spróbuj tak:

Kopiuj
URL clipFile=new URL("file:"+jfc.getSelectedFile().getAbsolutePath());
AudioClip clip=Applet.newAudioClip(clipFile);
Olamagato
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Polska, Warszawa
  • Postów: 1066
0

Javadoc interfejsu Clip:
"To restart playback from the beginning of the clip's audio data, simply follow the invocation of stop with setFramePosition(0), which rewinds the media to the beginning of the clip."

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.