2015-01-15 5 views
2

Я пытаюсь найти некоторые примеры кода о том, как закодировать необработанные файлы PCM (созданные с помощью AudioRecord) в другой сжатый формат.Android Raw PCM compression/encoding


Я видел много «подсказок» в сети, некоторые указывают на MediaCodec без примеров кода, а некоторые предлагают сторонние стороны, без которых есть какой-то пример использования для тех, кто не знаком с ним - вроде меня .. .

Я не ищу конвертацию MP3 (насколько я понял, это требует гонораров за роялти, если я ошибаюсь, я хотел бы услышать об этом).

Еще одна вещь, которая важна для меня - мне нужно, чтобы она была совместима с API> = 16. Я уже знаю некоторые примеры кода MediaMuxer, но он так грустно обратился к API> = 18, я не могу используй это.

Любая идея/хорошая отправная точка о том, как подойти к ней?

+0

try ogg vorbis: http://stackoverflow.com/questions/7314816/how-to-encode-recorded-voice-to-ogg-vorbis – samgak

+0

Спасибо, я попытался найти пример использования для преобразования pcm/wav используя ваше предложение, но не смогли найти. Можете ли вы указать мне пример использования? – Oren

ответ

1

Я недавно использовал Android AAC Encoder project для аналогичной цели, и он работал очень хорошо. Мне нужно было поддерживать API 16+, поэтому я не мог использовать подход на основе MediaMuxer. Однако связанная библиотека соответствовала требованиям. Единственное (немного) раздражает то, что вам нужно скомпилировать jni для использования этой библиотеки.

+0

Спасибо, я проверю это. Достаточно ли использовать класс AACEncoder или мне нужно делать некоторые материалы для до/после, чтобы это работало? – Oren

+0

Наконец-то я получил эту работу (мои проблемы были с включением .so файлов в Android Studio) – Oren

+0

Я рад, что это сработало для вас :) –

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