Краткая информация форма (без установки случайных библиотек)?
public static void play(String filename)
{
try
{
Clip clip = AudioSystem.getClip();
clip.open(AudioSystem.getAudioInputStream(new File(filename)));
clip.start();
}
catch (Exception exc)
{
exc.printStackTrace(System.out);
}
}
Единственная проблема в том, что не существует хороший способ, чтобы сделать этот метод блокировки, чтобы закрыть и утилизировать данные после * .wav отделки. clip.drain()
говорит, что он блокирует, но это не так. Клип не работает ПРАВО ПОСЛЕstart()
. только работает, но UGLY способ я нашел:
// ...
clip.start();
while (!clip.isRunning())
Thread.sleep(10);
while (clip.isRunning())
Thread.sleep(10);
clip.close();
, что не работает и почему – Bozho