Преобразование данных PCM в аудиоформат низкого размера - Java/Android

В моем приложении для Android мне нужно конвертировать необработанные данные PCM (файл WAV) в другой тип музыки, потому что файл PCM составляет 40 МБ в течение 4-5 минут.

Кто-нибудь может порекомендовать, какой тип мне нужно конвертировать? mp3? АСКУЭ? ААС?

а также как я могу конвертировать, потому что из того, что я прочитал, нет библиотеки в Java для преобразования? может быть, хороший учебник вы использовали?

1 ответ

Позвольте мне ответить на разные части ваших вопросов
Рекомендуемый формат сжатия для аудио
Формат сжатия MP3 или AAC подходит для музыкального контента, а AMR лучше подходит для речевого контента.

Метод преобразования (сжатие)
Android 4.0 (Ice Cream Sandwich) и ниже не предоставляет медиакодеры в качестве API JAVA. Поэтому в этих версиях Android лучший вариант - использовать внешнюю библиотеку сжатия, например, FFMPEG или FAAC через JNI API.

Более подробную информацию об использовании FFMPEG можно найти на FFmpeg на Android

В версии Android 4.1 (версия Jelly Bean) API-интерфейсы медиа-кодировщика были представлены как Java-API и могут использоваться из приложений Java.

Другие вопросы по тегам