Я нашел несколько возможных ответов на Stack Overflow, но они старые и похоже, что в них используются устаревшие технологии.
Мне нужно воспроизвести mp3-файл с абсолютным именем файла.
Вот что я пробовал:
1. JavaFX
MediaPlayer player = new MediaPlayer(new Media(uriString));
Я получаю java.lang.IllegalStateException: Toolkit not initialized
.
Вероятно, я мог бы найти способ инициализировать этот набор инструментов, но я хотел бы знать, является ли это предпочтительным способом.
2. Intellij UIUtil
final InputStream is = new FileInputStream(fileName);
UIUtil.playSoundFromStream(new Factory<InputStream>() {
@Override
public InputStream create() {
return is;
}
});
Я получаю Audio format is not yet supported: could not get audio input stream from input file
Я сделал еще несколько попыток, но это то, о чем у меня есть записи.
Единственное, что у меня пока работает, это воспроизведение файлов из оболочки: на Mac,
Runtime.getRuntime().exec("afplay " + filePath);
Но я бы предпочел решение на Java. Любые идеи?