2016-12-10 4 views
1

В настоящее время я использую Java Media Framework (JMF) JMF LINK для воспроизведения звуков MP3 для моей программы. Однако я хочу сделать свой музыкальный цикл, т. Е. Играть с самого начала, когда все закончится, и для этого я использовал следующий код.Java Media Framework - начало с начала

 player.addControllerListener(new ControllerListener() { 
      public void controllerUpdate(ControllerEvent e) { 
       if (e instanceof EndOfMediaEvent) { 
        System.out.println("MUSIC STOPPED! HELP!!!"); 
        player.setMediaTime(new Time(0)); 
       } 
      } 
     }); 

Идея, есть слушатель на mp3-плеер, который устанавливает время в СМИ начала (время «0»), когда она попадает в конец. Тем не менее, я не слишком уверен в том, как работает настройка времени в среде, потому что, пока слушатель работает для вызова события, когда музыка заканчивается, музыка, очевидно, не перезапускается, и мне остается неловкое молчание (и сообщение отладки, которое говорит: «МУЗЫКА ОСТАНОВЛЕНА! ХЕЛП !!!»). Любые советы, что я могу сделать, чтобы начать музыку с самого начала? Заранее спасибо!

+0

А, я плохо, я забыл добавить обновленный код, где у меня было отладочное сообщение внутри него. И нет, ошибка не возникает - я думаю, что проблема заключается в вызове setMediaTime, поскольку она не делает то, что я ожидаю от нее (установите музыку в исходное положение, 0:00). –

ответ

1

Ошибка заключалась в том, что мне пришлось остановиться и запустить плеер, установив время для носителя в 0. Работает как шарм!

Смежные вопросы