Как я могу одновременно записывать звук с каждого микрофона на микрофонный массив в отдельный буфер в Android?

Многие планшеты и некоторые смартфоны используют массив микрофонов для таких вещей, как шумоподавление. Например, Motorola Droid X использует три микрофонных массива и даже позволяет вам устанавливать «звуковые сцены». Здесь обсуждается пример .

Я хочу иметь возможность записывать все микрофоны, которые доступны на планшете / телефоне одновременно. Я обнаружил, что с помощью AudioSource мы можем выбрать микрофон (я не знаю, какой микрофон это конкретно, но может быть тот, который стоит перед пользователем), или микрофон, который находится в той же ориентации, что и видеокамера, но не смог найти доступ к нему Все остальные микрофоны в микрофонной решетке. Любая помощь, которая указывает мне в правильном направлении, чтобы исследовать это, будет отличной. Спасибо заранее за ваше время.

Похоже, вы подтвердили, что нет стандартного API Android для доступа к определенным микрофонам в массиве. Я тоже ничего не мог найти.

Как и в случае с пользовательскими дополнениями к системе Android, разработчик должен освободить API разработчика. Motorola сделала это раньше . Я взглянул на все те, которые они перечислили, и кажется, что они просто не раскрывают его. Очевидно, что у них есть код где-нибудь, что может это сделать («звуковые сцены» его используют).

Итак, быстрый ответ: вам не повезло.

Более ответный ответ: вы можете идти вокруг исходного кода для Droid X, потому что он выпущен как открытый источник . Если вы действительно можете его найти, поймите, что вы используете недокументированный API, который можно было бы изменить в любое время. Кроме того, вам нужно будет сделать это для каждого устройства, которое вы хотите поддержать.