modernvoicechat-1.3.jar
Curse Maven Snippet
What's new
---
### 🌟 New Features & Architectural Enhancements
#### 1. 🎧 Pure Java 3D Spatial Stereo Audio Engine
- **2ch Stereo Support**: Upgraded audio playback pipeline to 48kHz 16-bit 2-channel stereo.
- **Real-Time 3D Positional Panning**: Tracks local player position and head orientation (Yaw angle) in real time, delivering directional Constant Power stereo panning (left/right channels).
- **Dynamic Distance Attenuation**: Smooth attenuation curve between 2m and server-defined maximum distance (`ServerConfig.VOICE_RANGE`).
#### 2. 📦 Native Opus Codec Jar-in-Jar Bundling
- Integrated `Opus4J` (v2.1.0) into the Mod JAR via NeoForge `jarJar`.
- Fixes native Opus library (`.dll` / `.so`) extraction and initialization failures in production server environments.
#### 3. ⚙️ Dynamic Config Range Synchronization
- Linked 3D audio distance attenuation bounds directly to `ServerConfig.VOICE_RANGE`.
- Distance attenuation thresholds automatically update when modified in `config/modernvoicechat-server.toml`.
---
### 🛠️ Bug Fixes & Audio Engine Refinements
- **Radio Audio Filter & DSP Loop Prevention**:
- Refactored `RadioAudioFilter` to maintain per-player (UUID) isolated filter instances, eliminating cross-player state contamination.
- Added automatic filter state resetting (`resetState()`) on silence/low-input to prevent IIR Biquad filter oscillation, feedback, and echo loops.
- **Audio Transmission & Self-Echo Filtering**:
- Added self-packet filter (`packet.senderUuid == localPlayer.uuid`) to prevent self-echo and feedback loops.
- Fixed Push-To-Talk (PTT) mode issue where speaker playback received over radio could trigger voice activation incorrectly.
- **UDP Transport & Handshake Fixes**:
- Corrected UDP handshake packets to use empty Opus payloads (`opusData = ByteArray(0)`).
- Resolved potential DNS resolution delays by enforcing immediate IP address resolution for `voiceHost`.
---
This mod has no additional files

