Version: 4.1
3.2.0
Features & Improvements
- Google Meet WebRTC Audio & Mic Routing Overhaul (
useMeetClient.js):- Resolved multi-client voice silence issue where participants speaking into their microphones could not be heard by other clients in the conference room.
- Routed pristine, native microphone audio tracks (
rawAudioTrackfromnavigator.mediaDevices.getUserMedia) directly to the WebRTC publisherRTCPeerConnection, restoring hardware Acoustic Echo Cancellation (AEC), Noise Suppression (NS), Automatic Gain Control (AGC), and 48kHz Opus encoding with in-band FEC. - Decoupled Voice Activity Detection (VAD / active speaker detection) from the WebRTC media pipeline: VAD now operates as a non-intrusive
AnalyserNodetap, completely avoiding synthetic Web AudioMediaStreamDestinationnode silencing and browserAudioContextsuspension issues. - Fixed transceiver lookup in
attachTrackToPubto properly find and reuse existing transceivers for audio and video rather than adding redundant transceivers upon unmute.
- Dedicated Persistent Remote Audio Player Pool (
MeetingRoom.jsx):- Implemented
<RemoteAudioPlayer>pool mounted permanently inside the meeting container, ensuring uninterrupted, continuous audio playback for all remote participants regardless of stage switching, grid re-rendering, or tile minimizing. - Added global user gesture autoplay unblocker on
window(click,touchstart,keydown) that automatically resumes any paused<audio>or<video>elements and AudioContexts blocked by strict browser autoplay policies.
- Implemented
- Muted Visual Video Elements (
VideoTile.jsx):- Configured video elements with
muted={true}so they exclusively render visual frames, eliminating duplicate audio playback, volume doubling, or sound echo conflicts with the dedicated audio player.
- Configured video elements with
- Migration & Update Automation (3.2.0): Created
version/3.2.0/UPDATE.shscript to automate service reloads, Webmail asset refresh, and system synchronization.
Was this helpful?