Salve a tutti. Starei cercando di creare una piccola applicazione java che funga da lettore multimediale sia audio
(mp3,wav...) che video e par farlo sto utilizzando il jmf. Nella parte audio avrei intenzione di
creare una sorta di playlist nella quale l'utente abbia la possibilità di inserire e ascoltare dei
brani in sequenza. Il problema si pone però quando devo riassegnare al player un nuovo file audio,
operazione che svolgo con le seguenti istruzioni:
codice:
...
player.stop();
player.deallocate();
creaPlayer(File fileMp3);
...
dove:
void creaPlayer crea il player e aggiunge il ControllerListener. Ogni volta che cerco di riassegnare un nuovo file audio
il programma si blocca nel controllerListener:
codice:
public synchronized void controllerUpdate(ControllerEvent ce)
{
if (player!=null)
{ // Se esiste il player
if (ce instanceof RealizeCompleteEvent) // Se il player è nello stato Realized
{
if ((control=player.getControlPanelComponent())!=null)
{
c.add(control, BorderLayout.NORTH); // Se c'è prendiamo il ControlPanel
}
gain=player.getGainControl();
validate(); // Mettiamo a posto il layout
show();
}
spero che qualcuno di voi possa darmi una mano, visto che è da tre giorni che ci sbatto.
Lo stesso
problema lo dà a volte quando carico il primo file (il programma dovebbre caricare il player
con il file e mostrarlo all'utente): si blocca ma non sempre (dipende da come gli gira...
)