Я ищу библиотеки для:
Я уже знаю и не доволен:
Это то, что показало мое собственное расследование. Я был бы очень признателен за все отзывы, предложения, критику, ...




JLayer должен делать все, что вам нужно. Он не мертвый, а просто стабильный. Автор закончил его довольно давно, и с тех пор формат MP3 не претерпел больших изменений. Вы заметите, что его кодовая база MP3SPI немного новее. Что делает MP3SPI, так это то, что он переводит возможности JLayer в API JavaSound. Таким образом, вы можете взять любой код JavaSound, добавить MP3SPI в путь к классам и ожидать, что файлы MP3 начнут работать. Это довольно здорово. :)
OGG - это другая библиотека. Вы хотите использовать JOrbis и / или VorbisSPI. VorbisSPI принадлежит тому же автору, что и JLayer. Если вы хотите выполнять цифровую обработку, используйте фреймворки SPI. Они позволяют использовать API JavaSound для цифровой обработки, сколько душе угодно. Вы понимаете, как работают SPI?
К сожалению, закончилось место. AAC - это новейший формат, но у вас возникнут проблемы с поиском бесплатных кодеков. Он строго охраняется держателями патентов, чтобы предотвратить повторение проблем с MP3. Для AAC я рекомендую Quicktime4Java или IBM MPEG4 API.
Я использую TinySound (основанный на JLayer и Java Sound API), и в моем пути к классам были tinysound, tritonus и jlayer. MP3 не работали, поэтому я нашел этот ответ и попытался добавить mp3spi в свой путь к классам - это тоже не сработало. Какие-либо предложения?
Вы должны попытаться заглянуть в gstreamer-java, мне удалось воспроизвести через него мультимедиа, и с его помощью можно будет конвертировать аудиофайлы. Существует также JFFMpeg, который интегрируется в JMF, я не особо разбирался с ним, поэтому я не знаю общего объема его возможностей и состояния, но это то, на что стоит посмотреть более внимательно.
Кстати, я только что переместил свой проект MetaMusic на http://github.com/cpesch/MetaMusic/, так как там инфраструктура намного лучше.
Вы можете попробовать Xuggler. Вот как это происходит в ваших тестах:
* read and write meta data (for example ID3v2 tags in mp3 and all):
если базовый тип контейнера имеет поддержку метаданных в FFmpeg, Xuggler поддерживает его.
* convert compressed to to raw audio data and if possible raw audio data to mp3, ogg, aac, ...
Xuggler поддерживает mp3, ogg (vorbis или speex), speex, vorbis, flac, aac и т. д.
* digitally process the audio data (energy, timbre, Mel Frequency Cepstral Coefficients - MFCC, FFT, LPC, Autocorrelation, Wavelet, ...)
В Xuggler нет модулей DSP, поэтому вам нужно найти для этого другую библиотеку. Но Xuggler предоставит вам необработанные данные.
Просто, чтобы люди знали, Xuggler, похоже, основан исключительно на Intel и, следовательно, не может использоваться на устройствах iOS или Android. (Есть собственный код, который необходимо создать, это не только Java).
Спасибо за ответ, и вы правы, он отлично подходит для mp3, но ... насколько я видел (поправьте меня, если я ошибаюсь), он не поддерживает какие-либо будущие аудиоформаты, такие как ogg, aac,. .. - и "закончено" означает, что этого никогда не будет. Также отсутствует цифровая обработка.