Panduranga
Panduranga2d ago

Normcore Audio with Echo and Cracking voice on Android mobile phones

Please check this android APK==) https://drive.google.com/file/d/1G9Z6SWdJYLZ05uMvVJ3u9LRq2LRSXf5z/view?usp=sharing We’re integrating Normcore voice chat in a Unity mobile project and are seeing crackling/popping and echo on Android speakerphone. Looking for guidance on recommended settings / known device issues. Summary Issue: When both devices are on speaker, audio has intermittent crackling and users hear their own voice echoed back. When it’s clean: Using the earpiece or headphones removes echo and crackle (both directions are clear). Goal: Full-duplex, echo-free voice on speaker in-game (like a normal phone call). Environment Unity: [e.g., 6000.4.5f1], Normcore: [2.0] Target platform: Android Please let us know how to resolve issue Please find attached sample apk:)  https://drive.google.com/file/d/1G9Z6SWdJYLZ05uMvVJ3u9LRq2LRSXf5z/view?usp=sharing
Google Docs
meta0.99.apk
9 Replies
kapa.ai
kapa.ai2d ago
Hi @Panduranga. I'm kapa.ai, your friendly support bot. I will try to answer your question by searching through the knowledge base. :wave: ---------------------- Thanks for the detailed report. Based on the Normcore docs, here are the actionable checks and settings to address echo and crackling on Android: - Ensure microphone permissions are correctly requested on Android, and verify the default mic device. Normcore logs errors if mic init fails—check device logs to catch any issues (for example permission denials) that can manifest as degraded audio quality (Voice chat – common questions). - Use RealtimeAvatarVoice on a RealtimeView with a clear owner so it correctly switches between capturing (local) and playback (remote). You can add your own AudioSource to control spatialization/volume; RealtimeAvatarVoice will use it instead of creating one at runtime (Voice Chat component). - RealtimeAvatarVoice includes an AudioPreprocessor that sets mic gain and filters background noise, reverb, and echo; most platforms also apply hardware echo cancellation. If you need to tune behavior for specific devices, you can modify/fork the RealtimeAvatarVoice source to adjust preprocessing parameters (Voice Chat component). - Normcore’s audio pipeline uses the Opus codec with adaptive bitrate and jitter buffering to reduce dropouts and pops under varying network conditions. Crackling often indicates buffer underruns or packet arrival variance; let Normcore manage the buffer and ensure stable network conditions when testing (High Quality, Low Latency, Audio & Video). - On WebGL, Unity’s audio engine isn’t used and spatialization differs, but on Android Unity’s audio engine is used; configure your AudioSource accordingly if you’re spatializing. For simple speakerphone tests, avoid aggressive spatial rolloff or 3D settings that could cause uneven playback levels (Voice chat spatialization). Limitations: The knowledge sources don’t list device-specific Android speakerphone issues or a definitive set of Android-only flags to force AEC on all models. If echo persists only on loudspeaker, it may be related to device-level AEC behavior; you can experiment by forking RealtimeAvatarVoice to adjust preprocessor echo settings as a workaround (Voice Chat component). If you continue to see echo/crackle after the above checks, please share device models/OS versions and Unity/Normcore versions, and consider posting in the Normcore Discord for targeted guidance from the team and community (they can also review your APK) (Documentation home). ---------------------- Note: you can ask me a follow up question by @ mentioning me again :speech_balloon: ----------------------
kapa.ai
kapa.ai2d ago
<@1410953477001183375> Kapa.ai is still learning and improving, please let me know how I did by reacting below.
Panduranga
PandurangaOP2d ago
Unity: [e.g., 6000.4.5f1], Normcore: [2.0] Target platform: Android @Normal Team Please help do you have any sample android project for normcore audio @kapa.ai do you have any sample android project for normcore audio
kapa.ai
kapa.ai2d ago
Let me check the knowledge base for you again. One moment! :books: ---------------------- I’m sorry, but the knowledge sources don’t mention a specific Android-only sample project for Normcore audio. However, the XR Avatars and Voice Chat guide includes a ready-to-use setup with RealtimeAvatarVoice that works on Android, and the Getting Started guide points to example scenes (e.g., Realtime + Hoverbird Player) you can build for Android to test voice chat (XR Avatars and Voice Chat, Getting Started). If you need an Android-focused sample, I recommend asking in the Normcore Discord for a project or APK tailored to Android audio testing (Docs home). ---------------------- Note: you can ask me a follow up question by @ mentioning me again :speech_balloon: ----------------------
kapa.ai
kapa.ai2d ago
<@1410953477001183375> Kapa.ai is still learning and improving, please let me know how I did by reacting below.
Panduranga
PandurangaOPthis hour
@Towellie Please help here
maxweisel
maxweiselthis hour
Please stop pinging our whole team Our team will answer as soon as we can, but you need to wait.
Panduranga
PandurangaOPthis hour
okay thanks we are using discord first time so dont have much idea thanks
maxweisel
maxweisel20h ago
What Android device are you using? If you add logs to RealtimeAvatarVoice is the echoCancellation bool evaluating to true?

Did you find this page helpful?