Mobil qurilmalardagi mikrofon — tovush to'lqinlarini keyingi raqamlashtirish va qayta ishlash uchun elektr signaliga aylantiruvchi akustik-elektrik o'zgartirgichdir. Zamonaviy smartfonlarda sig'im prinsipi bilan ishlaydigan va o'rnatilgan ADCga ega MEMS-mikrofonlar qo'llaniladi. Yole Group, 2025 ma'lumotlariga ko'ra, har yili 6 milliarddan ortiq MEMS-mikrofon yetkazib beriladi, ulardan 35% smartfonlarga o'rnatiladi — har bir qurilmaga 3–4 mikrofondan.
Asosiy ma'lumotlar
Mikrofon — tovush bosimi tebranishlarini elektr signaliga aylantiruvchi elektroakustik qurilma. Ishlash prinsipiga ko'ra dinamik (magnit maydonidagi g'altak), sig'im (sig'imning o'zgarishi) va piezoelektrik turlarga bo'linadi. Mobil qurilmalarda mutlaq ko'pchilik miniatyur o'lchamlari (2.5 × 1.5 mm) va sirt montaji (SMD) bilan muvofiqligi tufayli sig'im MEMS-mikrofonlardir.
Mikrofon tovush bosimi ta'sirida tebranuvchi membrana va kondensator hosil qiluvchi harakatsiz elektroddan iborat. Plitalar orasidagi masofaning o'zgarishi sig'imni o'zgartiradi, bu esa chiqish kuchlanishini modulyatsiya qiladi. MEMS-mikrofonlarda membrana fotolitografiya usuli bilan polikremniydan tayyorlanadi — bu partiyadagi barcha mikrofonlarning xususiyatlari bir xilligini ta'minlaydi.
MEMS-mikrofonning chiqish signali — PDM (Pulse Density Modulation) — 1–4 MHz namuna olish chastotasi bilan bir bitlik oqim. Smartfon kodeklari PDMni raqamli desimator filtr orqali PCM (Pulse Code Modulation) ga dekodlab, ilova tomonidan qayta ishlash uchun standart 16–24 bitli 44.1–96 kHz audio formatini oladi.
MEMS mobil qurilmalarga kelishidan oldin elektret sig'im mikrofonlari (ECM) ishlatilgan. Ularda membrana doimiy elektr zaryadiga (elektret) ega edi va membrana tebranishlari o'zgaruvchan kuchlanish hosil qilardi. ECM-mikrofonlar kattaroq (4–6 mm) va alohida old kuchaytirgichni talab qiladi, bu esa platalardagi maydonni oshiradi.
| Parametr | MEMS-mikrofon | Elektret (ECM) |
|---|---|---|
| Korpus o'lchami | 2.5 × 1.5 × 1.0 mm | 4 × 2.5 × 1.5 mm |
| Sezgirlik | −26 ± 1 dB (FS) | −38 ± 3 dB (FS) |
| SNR (odatdagi) | 64–69 dBA | 58–64 dBA |
| AOP (maks. SPL) | 125–135 dB | 115–125 dB |
| Tok iste'moli | 150–300 µA | 300–500 µA |
| Harorat diapazoni | −40…+105 °C | −20…+70 °C |
MEMS-mikrofonlar kichik o'lchamlari, xususiyatlarning barqarorligi va standart SMD liniyalarida lehimlanish qobiliyati tufayli ustunlik qiladi. Biroq ECM arzonroq komponent narxi ($0.15–0.30 MEMS uchun $0.25–0.60 ga nisbatan) tufayli byudjet qurilmalarida qo'llanilishda davom etmoqda.
Zamonaviy smartfonlarda 3 dan 4 gacha mikrofon mavjud, ularning joylashuvi yozish va shovqinni bostirish sifatini belgilaydi. Asosiy mikrofon (pastki) USB-C porti yonida pastki chekkada joylashgan — suhbat va video yozish paytida foydalanuvchi ovozini yozadi. Old (yuqori) — yuqori chekkada ovozli buyruqlar va stereo yozishda ikkinchi kanal uchun.
Orqa mikrofon odatda orqa panelda kamera yonida joylashgan va faqat shovqinni bostirish uchun ishlatiladi. Uning signali audio faylga yozilmaydi — faqat raqamli protsessor tomonidan asosiy mikrofon signalidan ayiriladi. Ba'zi flagmanlarda (iPhone 16 Pro, Samsung Galaxy S25) video qo'ng'iroqlar paytida yozishni yaxshilash uchun old kamera chertishida to'rtinchi mikrofon o'rnatiladi.
Stereo video yozish pastki va yuqori mikrofonlar kombinatsiyasi orqali amalga oshiriladi. iOS qurilma yo'nalishiga qarab avtomatik ravishda mikrofon juftligini tanlaydi — landshaft rejimida chap kanal chap chekkadan, o'ng — o'ng chekkadan olinadi. Androidda bu mantiq OEM ishlab chiqaruvchining implementatsiyasiga bog'liq va modellar orasida farq qilishi mumkin.
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 buferini qayta ishlash
}
AudioSource.CAMCORDER video yozish uchun optimal mikrofonni tanlaydi — odatda bu avtomatik kuchaytirish sozlashiga ega pastki asosiy mikrofondir. Ovoz yozish uchun VOICE_RECOGNITION ishlatiladi — bu manba nutqni aniqlash uchun toza signal olish maqsadida barcha filtrlarni va shovqinni bostirishni o'chiradi.
Faol shovqinni bostirish (Active Noise Cancellation, ANC) smartfonlarda differensial usulga asoslanadi: ikkinchi mikrofon (reference) asosan fon shovqinini, asosiy mikrofon (primary) esa ovoz va shovqin aralashmasini yozadi. Raqamli signal protsessori (DSP) reference signalini primarydan ayirib, faqat toza ovozni qoldiradi.
Shovqinni bostirish sifati mikrofonlar orasidagi masofa va ularning yo'naltirilganligiga bog'liq. Bir xil shovqinni (samolyot, ventilyator) odatdagi bostirish — 20–35 dB. Impuls shovqinlar (eshik taqillashi, idish sadosi) uchun qo'shimcha transient suppression bloki ishlatiladi, u buzilgan qismni qo'shni namunalarning approksimatsiyalangan signali bilan almashtiradi.
Dasturchi shovqinni bostirish algoritmlariga faqat audio sessiya parametrlari orqali ta'sir qilishi mumkin: Androidda — AudioManager.setParameters("noise_suppression=on/off"), iOSda — AVAudioSession kategoriyasi .playAndRecord .allowBluetoothA2DP opsiyasi bilan. Tanib olish uchun yozish paytida shovqinni bostirish odatda o'chiriladi — STT algoritmlari original signal bilan aniqroq ishlaydi.
AudioRecord (Android) — mikrofondan PCM ma'lumotlarini to'g'ridan-to'g'ri yozish uchun past darajali API. Ilova real vaqtda qayta ishlanishi mumkin bo'lgan xom audio ma'lumotlari bilan buferlarni oladi: ovoz balandligi tahlili, chastota tahlili (FFT), VAD (Voice Activity Detection). Minimal bufer AudioRecord.getMinBufferSize() orqali hisoblanadi — kichikroq o'lchamdan foydalanish kechikish yoki yozish xatosiga sabab bo'ladi.
AVAudioEngine (iOS) — audio qayta ishlash uchun modulli graf, bunda kirish tuguni (AVAudioInputNode) asosiy mikser yoki to'g'ridan-to'g'ri tap-handlerga ulanadi. Engine real vaqtda RMS (Root Mean Square) — signal balandligi ko'rsatkichi — va AVAudioUnitEQ orqali chastota spektrini tahlil qilish imkonini beradi.
Platformalarning asosiy farqlari: iOSda yozish .playAndRecord yoki .record kategoriyasi bilan AVAudioSessionni majburiy faollashtirishni talab qiladi; Androidda — RECORD_AUDIO ruxsati (runtime permission) va AudioSource manbai. Flutter bu farqlarni abstraksiya qilish uchun record plaginidan foydalanadi.
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 ovoz balandligi: \(rms)")
}
try engine.start()
Kod AVAudioEngine dvigatelining kirish tugunida tap o'rnatadi. Har bir audio bufer mikrofondan monofonik signalning float ma'lumotlarini o'z ichiga oladi. RMS amplitudaning o'rtacha kvadratik qiymati sifatida hisoblanadi — 0.0 (sukunat) dan ~0.5–1.0 (baland ovoz) gacha bo'lgan standart ovoz balandligi ko'rsatkichi.
Mikrofon sifatini baholash uchun asosiy parametrlardan foydalaniladi. SNR (Signal-to-Noise Ratio) — signal darajasining mikrofonning o'z shovqiniga nisbati, dBA da o'lchanadi. SNR qanchalik yuqori bo'lsa, yozishda fon shovqini shunchalik past bo'ladi. Ovozli qo'ng'iroqlar uchun 62–64 dBA yetarli, musiqa yozish uchun — 68+ dBA.
AOP (Acoustic Overload Point) — mikrofon kliplanishsiz o'zgartira oladigan maksimal tovush bosimi darajasi (SPL). Odatdagi MEMS-mikrofon uchun AOP = 125 dB. Konsertlarda (110–120 dB) yozish toza bo'ladi, lekin 130+ dB da (yaqin atrofdagi salyut) nochiziqli buzilish (THD > 10%) paydo bo'ladi.
Chastota diapazoni mikrofon qaysi chastotalarni zaiflashmasdan yozishini belgilaydi. Ovoz uchun 300–3400 Hz (telefon standarti, POTS) yetarli. Musiqa va video uchun — 20–20000 Hz. So'nggi avlod smartfonlaridagi MEMS-mikrofonlar (Knowles SPH9855) ±3 dB notekislik bilan 30–18000 Hz diapazonini ta'minlaydi.
Tez-tez so'raladigan savollar
Zamonaviy smartfonlarda 3 dan 4 gacha mikrofon mavjud: asosiy (pastki chekka, qo'ng'iroqlar va video yozish uchun), old (yuqori chekka, ovozli buyruqlar), orqa (orqa panel, shovqinni bostirish). Flagmanlar (iPhone 16 Pro, Galaxy S25) video qo'ng'iroqlar paytida yozishni yaxshilash uchun old kamera yonida to'rtinchi mikrofon qo'shadi.
Androidda — RECORD_AUDIO runtime ruxsatini so'rash va AudioRecord yoki MediaRecorder ishlatish. iOSda — .playAndRecord kategoriyasi bilan AVAudioSessionni faollashtirish va AVAudioEngine yoki AVAudioRecorder ishlatish. Ikkala platforma ham tizim dialogi orqali foydalanuvchining aniq roziligini talab qiladi.
SNR (Signal-to-Noise Ratio) — foydali signalning mikrofonning o'z shovqiniga nisbati. 64 dBA qiymati shuni anglatadiki, ovoz yozish paytida shovqin darajasi ovoz darajasidan 64 dB past bo'ladi. Qo'ng'iroqlar uchun SNR 62–64 dBA, musiqa yozish uchun 68+ dBA yaxshi hisoblanadi.
Odatdagi sabablar: RECORD_AUDIO runtime ruxsati so'ralmagan (Android 6+); AudioSource ko'rsatilmagan (masalan, VOICE_RECOGNITION o'rniga CAMCORDER); qurilmada mikrofon yo'q (Android TV); boshqa jarayon mikrofoni allaqachon egallab olgan. AudioRecord.getState() orqali initsializatsiya holatini tekshiring.
Androidda — AudioRecord.read() orqali PCM buferini olish, RMSni sqrt(sum(samples²) / count) sifatida hisoblash. iOSda — installTap(forBus:) orqali AVAudioInputNode da tap o'rnatish va floatChannelData dan RMSni shunga o'xshash hisoblash. RMS normallashtirilgan: 0.0 (sukunat) dan taxminan 1.0 (ADC maksimumi) gacha.
Xulosa
Biz kalit topshirig'i bilan mobil ilovani ishlab chiqamiz
IT Sectr 2017-yildan beri startaplar va korxonalar uchun iOS va Android ilovalarini yaratadi. Biz sizga maslahat beramiz va eng yaxshi yechimni taklif qilamiz.