Mobil cihazlardaki mikrofon, ses dalgalarını daha sonra dijitalleştirme ve işleme için elektrik sinyaline dönüştüren akustik-elektrik bir dönüştürücüdür. Modern akıllı telefonlar, kapasitif çalışma prensibi ve yerleşik ADC ile MEMS mikrofonlar kullanır. Yole Group, 2025'e göre, yılda 6 milyardan fazla MEMS mikrofon sevk edilmekte olup, bunların %35'i akıllı telefonlara takılmaktadır — cihaz başına 3–4 mikrofon.
Önemli Noktalar
Mikrofon, ses basıncı salınımlarını elektrik sinyaline dönüştüren bir elektroakustik cihazdır. Çalışma prensibine göre dinamik (manyetik alanda bobin), kondansatör (kapasitans değişimi) ve piezoelektrik olarak ayrılır. Mobil cihazlarda, büyük çoğunluk minyatür boyutları (2,5 × 1,5 mm) ve yüzey montaj teknolojisi (SMD) ile uyumluluğu nedeniyle kondansatör MEMS mikrofonlardır.
Bir mikrofon, ses basıncı altında titreşen bir diyafram ve sabit bir elektrottan oluşur ve bir kapasitör oluşturur. Plakalar arasındaki mesafenin değişmesi kapasitansı değiştirir ve bu da çıkış voltajını modüle eder. MEMS mikrofonlarda, diyafram fotolitografi yöntemiyle polisilisyumdan üretilir — bu, bir partideki tüm mikrofonların aynı özelliklerini garanti eder.
Bir MEMS mikrofonun çıkış sinyali PDM'dir (Darbe Yoğunluk Modülasyonu) — 1–4 MHz örnekleme hızına sahip tek bitlik bir akış. Akıllı telefon kodekleri, PDM'yi dijital bir alt örnekleme filtresi aracılığıyla PCM'ye (Darbe Kod Modülasyonu) çözerek uygulama işleme için 44,1–96 kHz'de 16–24 bit standart ses formatı elde eder.
MEMS'in gelişinden önce, mobil cihazlar elektret kondansatör mikrofonlar (ECM) kullanıyordu. Bunlarda, diyaframın kalıcı bir elektrik yükü (elektret) vardı ve diyafram titreşimleri alternatif bir voltaj oluşturuyordu. ECM mikrofonlar daha büyüktür (4–6 mm) ve ayrı bir ön amplifikatör gerektirir, bu da kart üzerindeki alanı artırır.
| Parametre | MEMS mikrofon | Elektret (ECM) |
|---|---|---|
| Paket boyutu | 2,5 × 1,5 × 1,0 mm | 4 × 2,5 × 1,5 mm |
| Hassasiyet | −26 ± 1 dB (FS) | −38 ± 3 dB (FS) |
| SNR (tipik) | 64–69 dBA | 58–64 dBA |
| AOP (maks. SPL) | 125–135 dB | 115–125 dB |
| Akım tüketimi | 150–300 µA | 300–500 µA |
| Sıcaklık aralığı | −40…+105 °C | −20…+70 °C |
MEMS mikrofonlar, daha küçük boyut, kararlı özellikler ve standart SMD hatlarında lehimlenebilirlik sayesinde baskındır. Bununla birlikte, ECM'ler daha düşük bileşen maliyeti nedeniyle (MEMS için $0,25–0,60'a karşı $0,15–0,30) bütçe cihazlarında kullanılmaya devam etmektedir.
Modern akıllı telefonlar, konumları kayıt kalitesini ve gürültü engellemeyi belirleyen 3 ila 4 mikrofon içerir. Birincil mikrofon (alt) USB-C bağlantı noktasının yanında alt kenarda bulunur — aramalar ve video kaydı sırasında kullanıcının sesini kaydeder. Ön (üst) mikrofon, sesli komutlar ve stereo kayıtta ikinci bir kanal için üst kenardadır.
Arka (arka) mikrofon genellikle arka panelde kameranın yanına yerleştirilir ve yalnızca gürültü engelleme için kullanılır. Sinyali ses dosyasına kaydedilmez — yalnızca dijital işlemci tarafından birincil mikrofon sinyalinden çıkarılır. Bazı amiral gemilerinde (iPhone 16 Pro, Samsung Galaxy S25), görüntülü aramalar sırasında kaydı iyileştirmek için ön kamera çentiğine dördüncü bir mikrofon takılır.
Stereo video kaydı, alt ve üst mikrofonların bir kombinasyonuyla gerçekleştirilir. iOS, cihaz yönüne bağlı olarak otomatik olarak mikrofon çiftini seçer — yatay modda, sol kanal sol kenardan, sağ kanal sağ kenardan gelir. Android'de bu mantık OEM üreticisinin uygulamasına bağlıdır ve modeller arasında farklılık gösterebilir.
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 arabellek işleme
}
AudioSource.CAMCORDER, video kaydı için en uygun mikrofonu seçer — genellikle otomatik kazanç kontrollü alt birincil mikrofon. Ses kaydı için VOICE_RECOGNITION kullanılır — bu kaynak, konuşma tanıma için temiz bir sinyal elde etmek üzere tüm filtreleri ve gürültü engellemeyi devre dışı bırakır.
Akıllı telefonlardaki aktif gürültü engelleme (ANC) diferansiyel yönteme dayanır: ikinci (referans) mikrofon esas olarak arka plan gürültüsünü kaydederken, birincil mikrofon ses ve gürültü karışımını yakalar. Dijital sinyal işlemcisi (DSP), referans sinyalini birincil sinyalden çıkararak yalnızca temiz sesi bırakır.
Gürültü engelleme kalitesi, mikrofonlar arasındaki mesafeye ve yönlülüklerine bağlıdır. Düzgün gürültünün (uçak, fan) tipik bastırılması 20–35 dB'dir. Darbeli gürültüler (kapı çarpması, tabak çarpışması) için, bozuk segmenti komşu örneklerden yaklaşık bir sinyalle değiştiren ek bir geçici bastırma bloğu kullanılır.
Geliştiriciler, gürültü engelleme algoritmalarını yalnızca ses oturumu parametreleri aracılığıyla etkileyebilir: Android'de — AudioManager.setParameters("noise_suppression=on/off"), iOS'te — .allowBluetoothA2DP seçeneğiyle .playAndRecord kategorisi AVAudioSession. Tanıma için kayıt yaparken, gürültü engelleme genellikle devre dışı bırakılır — STT algoritmaları orijinal sinyalle daha doğru çalışır.
AudioRecord (Android), mikrofondan doğrudan PCM verisi kaydı için düşük seviyeli bir API'dir. Uygulama, gerçek zamanlı olarak işlenebilen ham ses verileri içeren arabellekler alır: ses düzeyi analizi, frekans analizi (FFT), VAD (Ses Etkinliği Algılama). Minimum arabellek, AudioRecord.getMinBufferSize() ile hesaplanır — daha küçük boyut kullanmak kayıt gecikmesine veya hatasına neden olur.
AVAudioEngine (iOS), giriş düğümünün (AVAudioInputNode) ana mikser veya doğrudan bir dokunma işleyicisine bağlandığı modüler bir ses işleme grafıdır. Motor, RMS'nin (Root Mean Square) — bir sinyal ses düzeyi göstergesi — ve AVAudioUnitEQ aracılığıyla frekans spektrumunun gerçek zamanlı analizine olanak tanır.
Temel platform farklılıkları: iOS'te, kayıt .playAndRecord veya .record kategorisiyle AVAudioSession'ın zorunlu olarak etkinleştirilmesini gerektirir; Android'de, RECORD_AUDIO izni (çalışma zamanı izni) ve bir mikrofon AudioSource gereklidir. Flutter, bu farklılıkları soyutlamak için record eklentisini kullanır.
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 ses düzeyi: \(rms)")
}
try engine.start()
Kod, AVAudioEngine'nin giriş düğümüne bir dokunma ayarlar. Her ses arabelleği, mikrofondan monofonik sinyalin float verilerini içerir. RMS, genliğin karekök ortalama değeri olarak hesaplanır — 0,0 (sessizlik) ila ~0,5–1,0 (yüksek ses) aralığında ses düzeyinin standart bir göstergesidir.
Mikrofon kalitesini değerlendirmek için anahtar parametreler kullanılır. SNR (Sinyal-Gürültü Oranı), sinyal seviyesinin mikrofonun kendi gürültüsüne oranıdır ve dBA cinsinden ölçülür. SNR ne kadar yüksekse, kayıttaki arka plan gürültüsü o kadar düşüktür. Sesli aramalar için 62–64 dBA yeterlidir; müzik kaydı için 68+ dBA gerekir.
AOP (Akustik Aşırı Yük Noktası), bir mikrofonun kırpma olmadan dönüştürebileceği maksimum ses basıncı seviyesidir (SPL). Tipik bir MEMS mikrofon için AOP = 125 dB'dir. Konserlerde (110–120 dB), kayıt temiz olacaktır, ancak 130+ dB'de (yakın havai fişek), doğrusal olmayan bozulma görünecektir (THD > %10).
Frekans aralığı, mikrofonun zayıflama olmadan hangi frekansları kaydettiğini belirler. Ses için 300–3400 Hz (telefon standardı, POTS) yeterlidir. Müzik ve video için 20–20000 Hz gerekir. En son nesil akıllı telefonlardaki (Knowles SPH9855) MEMS mikrofonlar, ±3 dB düzlükle 30–18000 Hz aralığı sağlar.
Sıkça Sorulan Sorular
Modern akıllı telefonlar 3 ila 4 mikrofon içerir: birincil (alt kenar, aramalar ve video kaydı için), ön (üst kenar, sesli komutlar), arka (arka panel, gürültü engelleme). Amiral gemileri (iPhone 16 Pro, Galaxy S25), görüntülü aramalar sırasında kaydı iyileştirmek için ön kameranın yanına dördüncü bir mikrofon ekler.
Android'de — RECORD_AUDIO çalışma zamanı iznini isteyin ve AudioRecord veya MediaRecorder kullanın. iOS'te — .playAndRecord kategorisiyle AVAudioSession'ı etkinleştirin ve AVAudioEngine veya AVAudioRecorder kullanın. Her iki platform da sistem iletişim kutusu aracılığıyla açık kullanıcı onayı gerektirir.
SNR (Sinyal-Gürültü Oranı), yararlı sinyalin mikrofonun kendi gürültüsüne oranıdır. 64 dBA değeri, ses kaydedilirken gürültü seviyesinin ses seviyesinden 64 dB daha düşük olacağı anlamına gelir. Aramalar için SNR 62–64 dBA ve müzik kaydı için 68+ dBA iyi kabul edilir.
Tipik nedenler: RECORD_AUDIO çalışma zamanı izni istenmedi (Android 6+); AudioSource belirtilmedi (örneğin, VOICE_RECOGNITION yerine CAMCORDER); cihazda mikrofon yok (Android TV); başka bir işlem mikrofonu zaten yakaladı. AudioRecord.getState() ile başlatma durumunu kontrol edin.
Android'de — AudioRecord.read() ile PCM arabelleği alın, RMS'yi sqrt(sum(örnekler²) / count) olarak hesaplayın. iOS'te — installTap(forBus:) ile AVAudioInputNode'da bir dokunma ayarlayın ve floatChannelData'dan benzer şekilde RMS hesaplayın. RMS normalize edilmiştir: 0,0 (sessizlik) ila yaklaşık 1,0 (ADC maksimum).
Özet
Anahtar teslim bir mobil uygulama geliştireceğiz
IT Sectr, 2017'den beri girişimler ve işletmeler için iOS ve Android uygulamaları oluşturmaktadır. Size danışmanlık yapacak ve en iyi çözümü önereceğiz.
Ayrıca okuyun