موبائل آلات میں مائیکروفون ایک صوتی-برقی مبدل ہے جو آواز کی لہروں کو بعد میں ڈیجیٹائزیشن اور پروسیسنگ کے لیے برقی سگنل میں تبدیل کرتا ہے۔ جدید اسمارٹ فونز میں电容ی اصول کار اور بلٹ ان ADC کے ساتھ MEMS مائیکروفون استعمال ہوتے ہیں۔ Yole Group، 2025 کے مطابق، سالانہ 6 ارب سے زیادہ MEMS مائیکروفون بھیجے جاتے ہیں، جن میں سے 35% اسمارٹ فونز میں لگائے جاتے ہیں — 3–4 مائیکروفون فی ڈیوائس۔
اہم نکات
مائیکروفون ایک برقی صوتی آلہ ہے جو آواز کے دباؤ کے oscillations کو برقی سگنل میں تبدیل کرتا ہے۔ اصول کار کے مطابق، یہ متحرک (مقناطیسی میدان میں کنڈلی)، capacitor (گنجائش تبدیلی) اور پیزو الیکٹرک میں تقسیم ہوتے ہیں۔ موبائل آلات میں، بھاری اکثریت capacitor MEMS مائیکروفون ہیں ان کے چھوٹے سائز (2.5 × 1.5 mm) اور سطحی نصب ٹیکنالوجی (SMD) کے ساتھ مطابقت کی وجہ سے۔
مائیکروفون میں ایک جھلی ہوتی ہے جو آواز کے دباؤ میں ہلتی ہے اور ایک مقررہ الیکٹروڈ، جو ایک capacitor بناتے ہیں۔ پلیٹوں کے درمیان فاصلے کی تبدیلی گنجائش کو بدلتی ہے، جو آؤٹ پٹ وولٹیج کو ماڈیول کرتی ہے۔ MEMS مائیکروفون میں، جھلی فوٹولیتھوگرافی کے ذریعے پولی سلیکون سے بنائی جاتی ہے — یہ ایک بیچ کے تمام مائیکروفون کی یکساں خصوصیات کو یقینی بناتا ہے۔
MEMS مائیکروفون کا آؤٹ پٹ سگنل PDM (پلس ڈینسٹی ماڈیولیشن) ہے — 1–4 MHz کی نمونے کی شرح کے ساتھ ایک بٹ سٹریم۔ اسمارٹ فون کوڈیک ڈیجیٹل ڈی سیمیشن فلٹر کے ذریعے PDM کو PCM (پلس کوڈ ماڈیولیشن) میں ڈی کوڈ کرتے ہیں، ایپلیکیشن پروسیسنگ کے لیے 44.1–96 kHz پر 16–24 بٹ کا معیاری آڈیو فارمیٹ حاصل کرتے ہیں۔
MEMS کی آمد سے پہلے، موبائل آلات الیکٹریٹ capacitor مائیکروفون (ECM) استعمال کرتے تھے۔ ان میں، جھلی پر مستقل برقی چارج (الیکٹریٹ) ہوتا تھا، اور جھلی کے vibrations متبادل وولٹیج بناتے تھے۔ ECM مائیکروفون بڑے (4–6 mm) ہوتے ہیں اور علیحدہ پری ایمپلیفائر کی ضرورت ہوتی ہے، جس سے PCB پر رقبہ بڑھ جاتا ہے۔
| پیرامیٹر | MEMS مائیکروفون | الیکٹریٹ (ECM) |
|---|---|---|
| پیکیج سائز | 2.5 × 1.5 × 1.0 mm | 4 × 2.5 × 1.5 mm |
| حساسیت | −26 ± 1 dB (FS) | −38 ± 3 dB (FS) |
| SNR (عام) | 64–69 dBA | 58–64 dBA |
| AOP (زیادہ سے زیادہ SPL) | 125–135 dB | 115–125 dB |
| کرنٹ کھپت | 150–300 µA | 300–500 µA |
| درجہ حرارت کی رینج | −40…+105 °C | −20…+70 °C |
MEMS مائیکروفون چھوٹے سائز، مستحکم خصوصیات اور معیاری SMD لائنوں پر سولڈریبلٹی کی وجہ سے غالب ہیں۔ تاہم، ECM کم قیمت ($0.15–0.30 بمقابلہ MEMS کے $0.25–0.60) کی وجہ سے بجٹ ڈیوائسز میں استعمال ہوتے رہتے ہیں۔
جدید اسمارٹ فونز میں 3 سے 4 مائیکروفون ہوتے ہیں، جن کا محل وقوع ریکارڈنگ کے معیار اور شور منسوخی کا تعین کرتا ہے۔ بنیادی مائیکروفون (نیچے) USB-C پورٹ کے ساتھ نچلے کنارے پر واقع ہے — یہ کالز اور ویڈیو ریکارڈنگ کے دوران صارف کی آواز ریکارڈ کرتا ہے۔ سامنے کا (اوپر) مائیکروفون آواز کے حکموں اور سٹیریو ریکارڈنگ میں دوسرے چینل کے لیے اوپری کنارے پر ہے۔
پیچھے کا (پچھلا) مائیکروفون عام طور پر پچھلے پینل پر کیمرے کے پاس رکھا جاتا ہے اور خصوصی طور پر شور منسوخی کے لیے استعمال ہوتا ہے۔ اس کا سگنل آڈیو فائل میں ریکارڈ نہیں ہوتا — یہ صرف ڈیجیٹل پروسیسر کے ذریعے بنیادی مائیکروفون سگنل سے منہا کیا جاتا ہے۔ کچھ فلیگ شپس میں (iPhone 16 Pro، Samsung Galaxy S25)، ویڈیو کالز کے دوران ریکارڈنگ بہتر بنانے کے لیے فرنٹ کیمرہ نوچ میں چوتھا مائیکروفون لگایا جاتا ہے۔
سٹیریو ویڈیو ریکارڈنگ نیچے اور اوپر والے مائیکروفون کے امتزاج سے کی جاتی ہے۔ iOS ڈیوائس کی سمت کے مطابق خود بخود مائیکروفون جوڑی منتخب کرتا ہے — زمینی منظر میں، بایاں چینل بائیں کنارے سے، دایاں دائیں کنارے سے آتا ہے۔ Android پر، یہ منطق OEM مینوفیکچرر کے عمل درآمد پر منحصر ہے اور ماڈلز کے درمیان مختلف ہو سکتی ہے۔
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 استعمال ہوتا ہے — یہ ماخذ تقریر کی شناخت کے لیے صاف سگنل حاصل کرنے کے لیے تمام فلٹرز اور شور منسوخی کو غیر فعال کر دیتا ہے۔
اسمارٹ فونز میں فعال شور منسوخی (ANC) تفریقی طریقہ پر مبنی ہے: دوسرا (حوالہ) مائیکروفون بنیادی طور پر پس منظر کے شور کو ریکارڈ کرتا ہے، جبکہ بنیادی مائیکروفون آواز اور شور کا مرکب پکڑتا ہے۔ ایک ڈیجیٹل سگنل پروسیسر (DSP) حوالہ سگنل کو بنیادی سے منہا کرتا ہے، صرف صاف آواز چھوڑتا ہے۔
شور منسوخی کا معیار مائیکروفون کے درمیان فاصلے اور ان کی سمتیت پر منحصر ہے۔ یکساں شور (ہوائی جہاز، پنکھا) کا عام دباو 20–35 dB ہے۔ نبضی شور (دروازہ بند ہونا، برتن ٹکرانا) کے لیے، ایک اضافی عارضی دباو بلاک استعمال کیا جاتا ہے جو مسخ شدہ حصے کو پڑوسی نمونوں سے قریبی سگنل سے بدل دیتا ہے۔
ڈویلپر صرف آڈیو سیشن پیرامیٹرز کے ذریعے شور منسوخی الگورتھم کو متاثر کر سکتا ہے: Android پر — AudioManager.setParameters("noise_suppression=on/off")، iOS پر — .allowBluetoothA2DP آپشن کے ساتھ .playAndRecord زمرے کی AVAudioSession۔ شناخت کے لیے ریکارڈنگ کرتے وقت، شور منسوخی عام طور پر غیر فعال کر دی جاتی ہے — STT الگورتھم اصل سگنل کے ساتھ زیادہ درست کام کرتے ہیں۔
AudioRecord (Android) مائیکروفون سے براہ راست PCM ڈیٹا ریکارڈنگ کے لیے نچلی سطح کا API ہے۔ ایپلیکیشن خام آڈیو ڈیٹا کے ساتھ بفر حاصل کرتی ہے جسے حقیقی وقت میں پروسیس کیا جا سکتا ہے: حجم تجزیہ، فریکوئنسی تجزیہ (FFT)، VAD (آواز کی سرگرمی کا پتہ لگانا)۔ کم از کم بفر AudioRecord.getMinBufferSize() سے شمار کیا جاتا ہے — چھوٹا سائز استعمال کرنے سے ریکارڈنگ میں تاخیر یا ناکامی ہوتی ہے۔
AVAudioEngine (iOS) آڈیو پروسیسنگ کے لیے ایک ماڈیولر گراف ہے جہاں انپٹ نوڈ (AVAudioInputNode) مین مکسر یا براہ راست ٹاپ ہینڈلر سے جڑتا ہے۔ انجن RMS (روٹ مین اسکوائر) — سگنل حجم کا ایک اشارے — اور AVAudioUnitEQ کے ذریعے فریکوئنسی سپیکٹرم کا حقیقی وقت میں تجزیہ کرنے کی اجازت دیتا ہے۔
پلیٹ فارم کے اہم فرق: iOS پر، ریکارڈنگ کے لیے .playAndRecord یا .record زمرے کے ساتھ AVAudioSession کا لازمی فعال کرنا ضروری ہے؛ Android پر، RECORD_AUDIO اجازت (رن ٹائم اجازت) اور مائیکروفون AudioSource کی ضرورت ہے۔ Flutter ان فرقوں کو ختم کرنے کے لیے record پلگ ان استعمال کرتا ہے۔
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()
کوڈ AVAudioEngine کے انپٹ نوڈ پر ایک ٹاپ سیٹ کرتا ہے۔ ہر آڈیو بفر میں مائیکروفون سے مونوفونک سگنل کا فلوٹ ڈیٹا ہوتا ہے۔ RMS کا حساب طول و عرض کے جذر متوسط مربع کے طور پر کیا جاتا ہے — 0.0 (خاموشی) سے ~0.5–1.0 (اونچی آواز) کی رینج میں آواز کے حجم کا ایک معیاری اشارے۔
مائیکروفون کے معیار کا جائزہ لینے کے لیے اہم پیرامیٹرز استعمال ہوتے ہیں۔ SNR (سگنل تو شور تناسب) — سگنل کی سطح اور مائیکروفون کے اپنے شور کا تناسب، dBA میں ناپا جاتا ہے۔ SNR جتنا زیادہ ہوگا، ریکارڈنگ میں پس منظر کا شور اتنا ہی کم ہوگا۔ آواز کی کالز کے لیے، 62–64 dBA کافی ہے؛ موسیقی کی ریکارڈنگ کے لیے، 68+ dBA ضروری ہے۔
AOP (صوتی اوورلوڈ پوائنٹ) — زیادہ سے زیادہ آواز کا دباؤ سطح (SPL) جسے مائیکروفون کلپنگ کے بغیر تبدیل کر سکتا ہے۔ عام MEMS مائیکروفون کے لیے، AOP = 125 dB۔ کنسرٹس (110–120 dB) میں، ریکارڈنگ صاف ہوگی، لیکن 130+ dB (قریب میں آتش بازی) پر، غیر خطی مسخ ظاہر ہوگی (THD > 10%)۔
فریکوئنسی رینج یہ طے کرتی ہے کہ مائیکروفون کس فریکوئنسی کو بغیر توجیف کے ریکارڈ کرتا ہے۔ آواز کے لیے، 300–3400 Hz (ٹیلی فون معیار، POTS) کافی ہے۔ موسیقی اور ویڈیو کے لیے — 20–20000 Hz۔ تازہ ترین نسل کے اسمارٹ فونز (Knowles SPH9855) میں MEMS مائیکروفون ±3 dB کی ہمواری کے ساتھ 30–18000 Hz کی رینج فراہم کرتے ہیں۔
اکثر پوچھے گئے سوالات
جدید اسمارٹ فونز میں 3 سے 4 مائیکروفون ہوتے ہیں: بنیادی (نیچے کا کنارا، کالز اور ویڈیو ریکارڈنگ کے لیے)، سامنے (اوپر کا کنارا، آواز کے حکم)، پیچھے (پچھلا پینل، شور منسوخی)۔ فلیگ شپس (iPhone 16 Pro، Galaxy S25) ویڈیو کالز کے دوران ریکارڈنگ بہتر بنانے کے لیے فرنٹ کیمرے کے پاس چوتھا مائیکروفون شامل کرتی ہیں۔
Android پر — RECORD_AUDIO رن ٹائم اجازت طلب کریں اور AudioRecord یا MediaRecorder استعمال کریں۔ iOS پر — .playAndRecord زمرے کے ساتھ AVAudioSession فعال کریں اور AVAudioEngine یا AVAudioRecorder استعمال کریں۔ دونوں پلیٹ فارمز کو سسٹم ڈائیلاگ کے ذریعے صارف کی واضح رضامندی درکار ہے۔
SNR (سگنل تو شور تناسب) — مفید سگنل اور مائیکروفون کے اپنے شور کا تناسب۔ 64 dBA کی قدر کا مطلب ہے کہ آواز ریکارڈ کرتے وقت شور کی سطح آواز کی سطح سے 64 dB نیچے ہوگی۔ کالز کے لیے SNR 62–64 dBA اور موسیقی کی ریکارڈنگ کے لیے 68+ dBA اچھا سمجھا جاتا ہے۔
عام وجوہات: RECORD_AUDIO رن ٹائم اجازت طلب نہیں کی گئی (Android 6+)؛ AudioSource متعین نہیں کیا گیا (مثلاً، VOICE_RECOGNITION کے بجائے CAMCORDER)؛ ڈیوائس میں مائیکروفون نہیں ہے (Android TV)؛ کسی اور عمل نے پہلے ہی مائیکروفون حاصل کر لیا ہے۔ AudioRecord.getState() کے ذریعے ابتدائی حالت چیک کریں۔
Android پر — AudioRecord.read() کے ذریعے PCM بفر حاصل کریں، RMS کو sqrt(sum(نمونے²) / count) کے طور پر شمار کریں۔ iOS پر — installTap(forBus:) کے ذریعے AVAudioInputNode پر ٹاپ سیٹ کریں اور floatChannelData سے اسی طرح RMS شمار کریں۔ RMS معمول کے مطابق ہے: 0.0 (خاموشی) سے تقریباً 1.0 (ADC زیادہ سے زیادہ)۔
خلاصہ
ہم ایک موبائل ایپلیکیشن ٹرنکی تیار کریں گے
IT Sectr 2017 سے اسٹارٹ اپس اور کاروبار کے لیے iOS اور Android ایپلیکیشنز بناتا ہے۔ ہم آپ کو مشورہ دیں گے اور بہترین حل تجویز کریں گے۔
مزید پڑھیں