✨ What's New in v1.4
- Full stability: boost and compressor are now prepared before recording starts, completely eliminating the race condition that caused audio without effects.
- Triple protection layer:
- Early format detection (
AudioFormat.ENCODING_PCM_16BIT) before the firstread(). - Permissive mode: if WhatsApp returns an unknown format, the module assumes PCM16.
- Automatic fallback to prevent rejections or initialization errors.
- Early format detection (
- Smart compressor reset on every session → prevents inheriting low gain from previous audio.
- Black splash screen when opening the app (clean start, no flicker).
- Improved performance: lower CPU load, faster startup and consistent behavior.
- New support section in the README to collaborate and give stars ⭐.
🚀 Usage
- Install the APK as an LSPosed module and enable it for:
- WhatsApp (
com.whatsapp) - System Framework (
system) - Android System (
android)
If you don't see “system” or “android” in the scope list: go to LSPosed Settings → (top right icon) → Hide and uncheck “System apps”.
- WhatsApp (
- Open WhatsMicFix and adjust preferences:
- Gain in dB (–6 dB … +12 dB, up to ×4.0)
- Optional pre-boost
- AGC and Noise Suppression
- Force internal microphone
- Adjust the gain with the slider (recommended: 1.5× – 3.0×).
- (Optional) Force stop WhatsApp after changing settings:
- System Settings → Apps → WhatsApp → Force stop, then reopen WhatsApp.
- Open WhatsApp and record an audio note.
- If you only close it from Recents, the process may remain active and changes won't apply.
- Wait about 5 seconds for WhatsApp to initialize
AudioRecordand for the hooks to work properly.
Note: v1.4 supports hot changes, but force stopping ensures full activation of new parameters.
⚙️ Advanced Configuration
- Respect format: keeps the audio format requested by the app (recommended).
- Force MIC source: use only if the microphone isn't switching correctly.
- AGC / Noise suppressor: extra input quality improvement.
- Debug logs: visible with
adb logcat | grep WhatsMicFix.
📊 Technical Improvements
updateGlobalBoostFactor()moved to beforeHookedMethod() → boost applied before recording.- Early format detection of PCM16 and thread-safe caching with
ConcurrentHashMap. - Compressor reset per session: prevents residual gain states.
- Permissive mode in ensurePcm16() → processes even if WhatsApp delays format reporting.
- Full audio pipeline validation for maximum compatibility.
🛠️ Fixes
- Removed bug causing first audio without boost.
- Fixed invalid format detection (
AudioFormat.ENCODING_INVALID). - Prevented inheritance of old compressor values.
- No false negatives or hook rejections.
🔹 Technical Comparison
| Aspect | v1.3 | v1.4 (current) |
|---|---|---|
| First audio stable | ~90 % | ✅ 100 % |
| Consecutive audios OK | ~95 % | ✅ 100 % |
| “Invalid format” alerts | 1–2 per session | 🚫 0 |
| Hook timing | Variable | ⚡ Consistent |
📚 Technical Notes
WhatsMicFix was developed using the Project-Based Learning (PBL) method, combining hands-on learning with real-world development.
The module hooks and modifies AudioRecord to improve the input signal in WhatsApp, especially on Pixel devices where microphone volume is often low.
This v1.4 version marks the transition from an experimental fix to a professional-grade audio module, with major gains in stability, compatibility, and efficiency.
💬 Support the Project
If this module has been useful to you, please consider supporting it:
💡 Developed by D4vRAM using PBL and collaborative AI.
💚 License: GPLv3 – Free, open-source, and transparent software.
