Microphone — что это, типы и как работает в мобильных устройствах

Автор: IT Sectr Опубликовано: 2026-03-24 Время чтения: 10 мин

Микрофон в мобильных устройствах — акустико-электрический преобразователь, который превращает звуковые волны в электрический сигнал для последующей оцифровки и обработки. В современных смартфонах используются MEMS-микрофоны с ёмкостным принципом работы и встроенным АЦП. По данным Yole Group, 2025, ежегодно отгружается более 6 миллиардов MEMS-микрофонов, из которых 35% устанавливается в смартфоны — по 3–4 микрофона на устройство.

Главное

  • MEMS-микрофон — основной тип микрофона в смартфонах: кремниевая мембрана меняет ёмкость под действием звукового давления, сигнал оцифровывается встроенным АЦП (PDM-выход)
  • Типовая конфигурация — современный смартфон содержит 3–4 микрофона: основной (нижний), фронтальный (верхний) и тыловой для шумоподавления
  • Шумоподавление (ANC) — дифференциальный метод, при котором основной микрофон записывает голос, а дополнительный — фоновый шум, затем сигналы вычитаются цифровым процессором
  • AudioRecord (Android) и AVAudioEngine (iOS) — основные API для захвата аудиопотока с микрофона в мобильных приложениях
  • Частота дискретизации 44.1 кГц и 16 бит — минимальный стандарт качества для записи голоса и музыки в мобильных приложениях

Что такое микрофон?

Микрофон — электроакустическое устройство, преобразующее колебания звукового давления в электрический сигнал. По принципу действия делятся на динамические (катушка в магнитном поле), конденсаторные (изменение ёмкости) и пьезоэлектрические. В мобильных устройствах абсолютное большинство — конденсаторные MEMS-микрофоны благодаря миниатюрным размерам (2.5 × 1.5 мм) и совместимости с поверхностным монтажом (SMD).

Микрофон состоит из мембраны, колеблющейся под действием звукового давления, и неподвижного электрода, образующих конденсатор. Изменение расстояния между обкладками меняет ёмкость, что модулирует напряжение на выходе. В MEMS-микрофонах мембрана изготавливается из поликремния методом фотолитографии — это обеспечивает идентичность характеристик всех микрофонов в партии.

Выходной сигнал MEMS-микрофона — PDM (Pulse Density Modulation) — однобитный поток с частотой дискретизации 1–4 МГц. Кодеки смартфона декодируют PDM в PCM (Pulse Code Modulation) через цифровой фильтр-дециматор, получая стандартный аудиоформат 16–24 бит с частотой 44.1–96 кГц для обработки приложением.

MEMS vs электретные микрофоны

До прихода MEMS в мобильных устройствах использовались электретные конденсаторные микрофоны (ECM). В них мембрана имела постоянный электрический заряд (электрет), а колебания мембраны создавали переменное напряжение. ECM-микрофоны крупнее (4–6 мм) и требуют отдельного предусилителя, что увеличивает площадь на плате.

ПараметрMEMS-микрофонЭлектретный (ECM)
Размер корпуса2.5 × 1.5 × 1.0 мм4 × 2.5 × 1.5 мм
Чувствительность−26 ± 1 дБ (FS)−38 ± 3 дБ (FS)
SNR (типовой)64–69 дБА58–64 дБА
AOP (макс. SPL)125–135 дБ115–125 дБ
Ток потребления150–300 мкА300–500 мкА
Температурный диапазон−40…+105 °C−20…+70 °C

MEMS-микрофоны доминируют благодаря меньшим габаритам, стабильности характеристик и паяемости на стандартных SMD-линиях. Однако ECM продолжают использоваться в бюджетных устройствах из-за более низкой стоимости компонента ($0.15–0.30 против $0.25–0.60 для MEMS).

Многомикрофонная конфигурация: основной, фронтальный, тыловой

Современные смартфоны содержат от 3 до 4 микрофонов, расположение которых определяет качество записи и шумоподавления. Основной микрофон (bottom) расположен на нижнем торце рядом с портом USB-C — он записывает голос пользователя при разговоре и видеосъёмке. Фронтальный (top) — на верхнем торце для голосовых команд и второго канала при стереозаписи.

Тыловой (back) микрофон обычно размещается рядом с камерой на задней панели и используется исключительно для шумоподавления. Его сигнал не записывается в аудиофайл — только вычитается цифровым процессором из сигнала основного микрофона. В некоторых флагманах (iPhone 16 Pro, Samsung Galaxy S25) устанавливается четвёртый микрофон — front camera notch для улучшения записи при видеозвонках.

Стереозапись видео реализуется через комбинацию нижнего и верхнего микрофонов. iOS автоматически выбирает пару микрофонов в зависимости от ориентации устройства — при ландшафтной съёмке левый канал берётся с левого торца, правый — с правого. На Android эта логика зависит от реализации OEM-производителя и может отличаться между моделями.

Пример выбора аудиоисточника на Kotlin (Android)

kotlin
val recorder = AudioRecord(
    MediaRecorder.AudioSource.CAMCORDER,
    44100,
    AudioFormat.CHANNEL_IN_MONO,
    AudioFormat.ENCODING_PCM_16BIT,
    bufferSize
)
recorder.startRecording()

val buffer = ShortArray(bufferSize)
while (recorder.recordingState == AudioRecord.RECORDSTATE_RECORDING) {
    recorder.read(buffer, 0, buffer.size)
    // Обработка PCM-буфера
}

AudioSource.CAMCORDER выбирает микрофон, оптимальный для видеосъёмки — обычно это нижний основной микрофон с автоматической регулировкой усиления. Для голосовой записи используется VOICE_RECOGNITION — этот источник отключает все фильтры и шумоподавление для чистого сигнала на распознавание речи.

Как работает шумоподавление в смартфонах

Активное шумоподавление (Active Noise Cancellation, ANC) в смартфонах основано на дифференциальном методе: второй микрофон (reference) записывает преимущественно фоновый шум, а основной (primary) — смесь голоса и шума. Цифровой сигнальный процессор (DSP) вычитает сигнал reference из primary, оставляя только чистый голос.

Качество шумоподавления зависит от расстояния между микрофонами и их направленности. Типовое подавление равномерного шума (самолёт, вентилятор) — 20–35 дБ. Для импульсных шумов (хлопок дверью, удар посуды) используется дополнительный блок transient suppression, который заменяет искажённый участок на аппроксимированный сигнал соседних сэмплов.

Разработчик может влиять на алгоритмы шумоподавления только через параметры аудиосессии: на Android — AudioManager.setParameters("noise_suppression=on/off"), на iOS — AVAudioSession категория .playAndRecord с опцией .allowBluetoothA2DP. При записи для распознавания шумоподавление обычно отключают — алгоритмы STT работают точнее с исходным сигналом.

Захват аудио: Android AudioRecord и iOS AVAudioEngine

AudioRecord (Android) — низкоуровневый API для прямой записи PCM-данных с микрофона. Приложение получает буферы с сырыми аудиоданными, которые можно обрабатывать в реальном времени: анализ громкости, частотный анализ (FFT), VAD (Voice Activity Detection). Минимальный буфер вычисляется через AudioRecord.getMinBufferSize() — использование меньшего размера вызывает задержку или сбой записи.

AVAudioEngine (iOS) — модульный граф для аудиообработки, где входной нод (AVAudioInputNode) подключается к основному микшеру или напрямую к tap-обработчику. Engine позволяет в реальном времени анализировать RMS (Root Mean Square) — показатель громкости сигнала — и частотный спектр через AVAudioUnitEQ.

Ключевые отличия платформ: на iOS запись требует обязательной активации AVAudioSession с категорией .playAndRecord или .record; на Android — разрешения RECORD_AUDIO (runtime permission) и микрофонный AudioSource. Flutter использует плагин record для абстракции этих различий.

Пример захвата аудио на Swift (iOS)

swift
import AVFoundation

let engine = AVAudioEngine()
let inputNode = engine.inputNode
let format = inputNode.outputFormat(forBus: 0)

inputNode.installTap(onBus: 0, bufferSize: 1024,
    format: format) { buffer, time in
    guard let channelData = buffer.floatChannelData else { return }
    let frameLength = Int(buffer.frameLength)
    var sumSquares: Float = 0

    for i in 0..<frameLength {
        sumSquares += channelData[0][i] * channelData[0][i]
    }
    let rms = sqrt(sumSquares / Float(frameLength))
    print("RMS громкость: \(rms)")
}

try engine.start()

Код устанавливает tap на входной нод движка AVAudioEngine. Каждый аудиобуфер содержит float-данные монофонического сигнала с микрофона. RMS вычисляется как среднеквадратичное значение амплитуды — стандартный показатель громкости звука в диапазоне 0.0 (тишина) до ~0.5–1.0 (громкий голос).

Характеристики микрофона: SNR, AOP, частотный диапазон

Для оценки качества микрофона используются ключевые параметры. SNR (Signal-to-Noise Ratio) — отношение уровня сигнала к собственному шуму микрофона, измеряется в дБА. Чем выше SNR, тем тише фоновый шум в записи. Для голосовых вызовов достаточно 62–64 дБА, для музыкальной записи — 68+ дБА.

AOP (Acoustic Overload Point) — максимальный уровень звукового давления (SPL), который микрофон может преобразовать без клиппирования. Для типового MEMS-микрофона AOP = 125 дБ. На концертах (110–120 дБ) запись будет чистой, но при 130+ дБ (фейерверк рядом) появится нелинейное искажение (THD > 10%).

Частотный диапазон определяет, какие частоты микрофон записывает без затухания. Для голоса достаточно 300–3400 Гц (телефонный стандарт, POTS). Для музыки и видео — 20–20000 Гц. MEMS-микрофоны в смартфонах последнего поколения (Knowles SPH9855) обеспечивают диапазон 30–18000 Гц с неравномерностью ±3 дБ.

Часто задаваемые вопросы

Сколько микрофонов в современном смартфоне?

Современные смартфоны содержат от 3 до 4 микрофонов: основной (нижний торец, для звонков и видеозаписи), фронтальный (верхний торец, голосовые команды), тыловой (задняя панель, шумоподавление). Флагманы (iPhone 16 Pro, Galaxy S25) добавляют четвёртый микрофон возле фронтальной камеры для улучшения записи при видеозвонках.

Как получить доступ к микрофону в мобильном приложении?

На Android — запросить runtime-разрешение RECORD_AUDIO и использовать AudioRecord или MediaRecorder. На iOS — активировать AVAudioSession с категорией .playAndRecord и использовать AVAudioEngine или AVAudioRecorder. Обе платформы требуют явного согласия пользователя через системный диалог.

Что такое SNR микрофона и какой показатель считается хорошим?

SNR (Signal-to-Noise Ratio) — отношение полезного сигнала к собственному шуму микрофона. Значение 64 дБА означает, что при записи голоса уровень шума будет на 64 дБ ниже уровня голоса. Хорошим считается SNR 62–64 дБА для звонков и 68+ дБА для музыкальной записи.

Почему приложение не получает звук с микрофона на Android?

Типичные причины: не запрошено runtime-разрешение RECORD_AUDIO (Android 6+); не указан AudioSource (например, CAMCORDER вместо VOICE_RECOGNITION); устройство не имеет микрофона (Android TV); другой процесс уже захватил микрофон. Проверьте через AudioRecord.getState() статус инициализации.

Как измерить громкость звука с микрофона в реальном времени?

На Android — получить PCM-буфер через AudioRecord.read(), вычислить RMS как sqrt(sum(samples²) / count). На iOS — установить tap на AVAudioInputNode через installTap(forBus:) и аналогично вычислить RMS из floatChannelData. RMS нормализован: 0.0 (тишина) до примерно 1.0 (максимум ADC).

Итоги

  • MEMS-микрофон — доминирующий тип в смартфонах с кремниевой мембраной, PDM-выходом и размерами 2.5 × 1.5 мм
  • Смартфон содержит 3–4 микрофона для стереозаписи, голосовых команд и активного шумоподавления
  • Шумоподавление реализовано дифференциальным методом — DSP вычитает сигнал reference-микрофона из основного, подавляя шум на 20–35 дБ
  • Android AudioSource.CAMCORDER выбирает оптимальный микрофон для видео; VOICE_RECOGNITION отключает фильтры для STT
  • Частота 44.1 кГц / 16 бит — минимальный стандарт качества, достаточный для голоса и музыки
  • SNR 64+ дБА обеспечивает чистую запись голоса без заметного шума микрофона
  • AOP важна для записи громких событий — 125 дБ типичного MEMS достаточно для концертов и уличной съёмки

Мы разработаем мобильное приложение под ключ

IT Sectr создаёт приложения для iOS и Android для стартапов и бизнеса с 2017 года. Мы проконсультируем вас и предложим наилучшее решение.

Обсудить проект

Читайте также