JavaSound Clip : Comment le stopper automatiquement ?
Bonjour, je cherche une solution pour arrêter de lire mon Clip à un moment donnée (par exemple 12.5s) où comment le lire pendant n secondes.
J'ai une solution mais qui est relativement bloquante...
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| public void readAudioPiece(double start, double stop){
// Convertir les secondes en micro-secondes
long microsecStart = (long)(start * 1000.0d * 1000.0d);
long microsecStop = (long)(stop * 1000.0d * 1000.0d);
// Placement du début
soundClip.setMicrosecondPosition(microsecStart);
soundClip.start();
// Attendre jusqu'à atteindre la fin du mot
while(soundClip.getMicrosecondPosition() < microsecStop){} // TODO: Trouver solution non bloquante
soundClip.stop();
} |
Avec cette solution, l'utilisateur est bloqué pendant la lecture. Ce qui peut être embêtant lors de lecture supérieure à quelques secondes...
Bien entendu, je ne veux pas passer par un bouton.
Une idée ?
Cdlt, Bastien.