Skip to content

Releases: XuruDragon/XuruVOIP

1.0.0-RC1: Advanced VoIP HUD, Custom Chime Designer, Voice Macros & Companion App Diagnostics

15 Jun 14:26

Choose a tag to compare

📝 Description

Welcome to the first Release Candidate for XuruVOIP 1.0.0! This release represents a massive evolution from 0.4.1, introducing a completely redesigned client interface, major audio engine enhancements, dynamic spatial acoustics, localized voice macros, deep Stream Deck support, and a robust diagnostics companion hub.

Below is the structured changelog of the features, improvements, and fixes included in this release.


🎙️ Advanced Audio Engine & Acoustics

  • Noise Gate DSP: Integrated RMS-based noise gate thresholding (-60dB to -20dB) to eliminate background hiss and ambient noise.
  • Push-to-Talk (PTT) Latch Mode: Added option to toggle voice transmission on/off on single key taps.
  • Interactive Audio Calibration Wizard: Added a 5-second loopback calibration tool to record, test, and tune microphone sensitivity.
  • Manufacturer Hailing Ringtone Profiles: Custom mathematical chime profiles for ship hailing based on manufacturers (Aegis, Anvil, Drake, Origin, RSI).
  • Atmosphere Density & Muffling Simulation: Dynamic planetary voice damping that low-passes and muffles audio depending on the local environment and ship boundary zones.
  • Local Voice Loopback: 200ms delayed playback mode for local loopback testing.

⚙️ Custom PTT Chime Designer

  • Sweep Wave Synthesis: Selectable waveform styles (Sine, Triangle, Square, Sawtooth) with adjustable start/end frequencies (300Hz - 3000Hz).
  • Envelope Shaping: Attack (0 - 200ms) and Decay (0 - 500ms) envelope parameters to shape custom tones mathematically.
  • Visual Preview Canvas: Real-time vector rendering of the attack/decay envelope polygon and generated sweep wave path in client settings, complete with a "Play Preview" local button.

🤖 Voice Commands & Visual Macro Builder

  • Voice Wake-Word Engine: Hands-free segment-by-segment Whisper transcription using WebRtc VAD to trigger ship actions without holding keys.
  • Visual Macro Builder Tab (TabMacros): A master-detail macros configuration tab allowing pilots to:
    • Manage trigger phrases and step-by-step keystroke operations.
    • Reorder steps with ▲/▼ controls.
    • Record interactive keystroke bindings (supporting Ctrl, Alt, Shift modifiers).
    • Configure custom delays (10ms - 2000ms) between steps.
  • Voice-Triggered Screen Capture: Automatically captures the active Star Citizen window boundary via speech command, saving PNG files to /Screenshots with HUD feedback.

📲 Companion App & Diagnostics Hub

  • Real-Time RSSI & Network Graph: 4th dashboard tab rendering active canvas wave diagrams mapping network jitter, latency, packet loss, and RSSI metrics.
  • UDP Echo Diagnostics: Running diagnostics triggers active UDP echo pings on the Go servers, animating sliding scanner lines over the Companion web canvas.
  • OLED Flat Black Theme: A custom theme optimized for OLED screens setting backgrounds to absolute flat black (#000000).
  • Connection QR Code: Renders a quick QR code in client settings for easy LAN mobile pairing.
  • Channel Volume Sliders: Remote volume customization synchronized in real-time between client and web interfaces.

🖥️ Visor HUD & Usability Improvements

  • Visor HUD Clipping Indicator: Instant visual overlay border flash (🎙️ OVERGAIN / CLIPPING) holding for 800ms when mic output exceeds threshold.
  • In-App Caption Log Viewer: Real-time tab logging all parsed speech commands and subtitle histories.
  • Log Path Auto-Detection: Automatically discovers Star Citizen installation directories and active log file paths.
  • Stream Deck Integration: Exposes websocket actions allowing full external toggle control over Whisper mode, loopback, screenshot capture, noise gates, PTT latching, TTS, and the wake-word engine.

🌍 Localization & Quality of Life

  • 8 Languages Fully Supported: Localized translations (German, English, Spanish, French, Japanese, Portuguese-BR, Portuguese-PT, Chinese) completed for all UI labels, settings tooltips, and localized user readmes.
  • Connection Reliability: Replaced HTTP listener with TCP Listener to completely bypass HTTP 400 Invalid Hostname errors during LAN routing.
  • Test Isolation: Resolved STA thread affinity deadlocks and dispatcher issues in test suites. 163 unit tests now compile and pass cleanly.

Full Changelog: 0.4.1...1.0.0-RC1

0.4.1

12 Jun 08:01

Choose a tag to compare

🚀 XuruVOIP v0.4.0 Release Notes

We are thrilled to announce the release of XuruVOIP v0.4.0! This major update brings a massive leap in immersion, utility, and tactical command capabilities for Star Citizen operations. Highlights include Head-Related Transfer Function (HRTF) audio, offline voice-activated controls, atmosphere density acoustics, and an interactive 3D After-Action Review (AAR) replay portal.


🌟 Key Highlights

🪐 1. Planetary Atmosphere Density Simulation

XuruVOIP now simulates real-time voice range scaling and frequency dampening depending on the local atmospheric density of the planet or moon you are on:

  • Volume Range Scaling: Proximity audio decays dynamically based on the atmosphere (e.g., 3.5x faster decay on airless/trace moons like Cellin, standard decay on MicroTech, and 0.75x slower decay on Crusader).
  • Thin Gas Muffling: Outdoor environments on thin-atmosphere moons apply a dynamic digital low-pass filter (e.g., an 800Hz cutoff on Cellin) to model realistic acoustic propagation constraints.
  • Pressurized Bypasses: The simulation is bypassed automatically inside ship cabins, facilities, outposts, and hangars, keeping voices clear when pressurized.

🎧 2. Binaural HRTF Spatial Audio & 3D Spectrogram

We have elevated our spatial audio to professional spatialized standards:

  • Binaural HRTF Rendering: Simulates the physical geometry of human hearing over standard stereo headphones. Utilizes Woodworth's ITD (Interaural Time Difference) for sub-millisecond left/right arrival delays and ILD (Interaural Level Difference) low-pass filtering to replicate the head-shadow effect.
  • Visor HUD 3D Spectrogram: Renders a real-time 3D Radix-2 64-point FFT spectral visualizer overlay next to active speaker tags on your HUD, grouped into 8 frequency bands with smooth decay.

🎙️ 3. Post-Op Voice Recorder & Server-Side 3D AAR Playback

A powerful administrative suite for server-side recording and post-mission debriefings:

  • Zero-Overhead Ogg/Opus Writer: Saves incoming Opus packets directly to disk inside browser-playable .ogg audio files. This consumes 5x less disk space than MP3 and requires zero server-side transcoding CPU load.
  • Canvas Timeline & 3D Replay Map: The Web Admin Portal features a 2D HTML5 canvas timeline displaying speaking periods. Clicking on speaking blocks launches the 3D Replay Canvas, which animates player trails and speaker pulse rings, synchronized with the recorded audio.

📞 4. Ship-to-Ship Hailing & Calling System

Cockpit-to-cockpit private calling is now active:

  • Private Loops: Allows initiating private calls to ships within a 5,000-meter range using custom AudioTypeHail packets that bypass proximity/radio.
  • Ringing & Chimes: NAudio-synthesized dialing tones, ringing loops (900Hz to 600Hz), and connection/disconnection alerts provide clear audio feedback.
  • Voice Activity Detection (VAD) Override: While in a call, the microphone is automatically captured via VAD, allowing pilot and co-pilot hands-free communication.

🔤 5. Visor HUD Real-Time Translation Subtitles

Break down communication barriers in multi-national fleets:

  • Offline Translation Subtitles: Transcribes and translates incoming foreign voice streams in real-time, displaying them directly on your visor HUD prefixed with source/target indicators (e.g., [FR -> EN] Bonjour -> Hello).
  • Whisper Integration: Leverages a lightweight, offline Whisper model (ggml-tiny.bin) downloaded asynchronously on-demand. Currently supports translation/transcription across 7 languages.

🗣️ 6. Voice-Activated Ship Controls

Control your ship by speaking directly to your onboard computer:

  • Hands-Free Operations: Hold the Voice Command key and speak commands (e.g., "open doors", "power up shields") to simulate in-game keystrokes.
  • Virtual Key Injection: Employs low-level Win32 keybd_event calls (holding keys for 50ms for reliable game registration, supporting modifier keys) matching custom dictionaries in 8 languages.

🎛️ 7. Massive Stream Deck Plugin Expansion

The Stream Deck plugin has been expanded with 11 new actions (bringing the total to 19):

  • New Actions: Initiate/Accept/Decline Hails, Toggle Translation, Toggle HRTF, Toggle Spectrogram, Beacon Mode, PA Broadcast, Intercom Status cycle, Location Telemetry, and Voice Command Macro.
  • Live GPS Key Telemetry: Displays your current zone and coordinates $(X, Y, Z)$ directly on the physical button in real-time.
  • Active Status Feedback: Buttons glow active cyan when functional, amber/red with strike-throughs when muted, and cycle through multi-state icons (e.g., Intercom statuses).
  • Rework of the Plugin: Upgrade the SDK version to version 3. Re-organize the plugin to the new structure for compatibility with buildig tools.

🛠️ Quality of Life & System Changes

  • Windows Package Manager Support: You can now install the client instantly via winget:
    winget install XuruDragon.XuruVOIPClient
  • Daily Log Rotation: The server now performs automatic daily log rotations of xuruvoip.log on startup, retaining only the 5 most recent logs to prevent disk clutter.
  • Feature Registries: Added maybe_features.md and nogo_features.md to formally track community proposals, experimental design patterns, and rejected architectures.
  • Multi-Language Support: Localized readmes and user guides have been updated in English, French, German, Spanish, Portuguese (PT & BR), Japanese, and Chinese.

Full Changelog: 0.3.0...0.4.1

0.3.0

11 Jun 13:12

Choose a tag to compare

🚀 XuruVOIP v0.3.0 - The Tactical Systems & Hardware Update

Welcome to XuruVOIP v0.3.0! This is the most feature-rich release of the spatial voice suite to date, bringing advanced offline voice control, web-based tactical co-pilot displays, simulated ship systems degradation, spatial radio relays, and deep hardware integrations (including Elgato Stream Deck Plus dials and local Sim-Pit UDP sync).


🌟 What's New in v0.3.0

🎙️ 1. Hands-Free PTT Voice Commands (Offline Speech Recognition)

  • Voice Macro Engine: A local, offline speech-to-text engine that parses voice inputs and triggers predefined key macros (e.g., "open hangar", "request landing", "toggle visor", "status report", "power up shields").
  • Hands-Free / PTT Toggle: Can be set to listen continuously (hands-free) or activated via a dedicated Push-to-Talk hotkey. Includes a visual "LISTENING" feedback state on both the Companion App and Stream Deck buttons.
  • On-Demand Model Download: To keep the client bundle lightweight, the local Whisper AI speech model is not included by default. Enabling this feature for the first time will trigger a secure background download of the model and show a warning in the interface.

🗺️ 2. Tactical Co-Pilot Map MFD (Companion App Update)

  • Web-Based Multi-Function Display: The Companion App dashboard now features a dedicated Tactical Map tab that mimics a real spaceship MFD screen.
  • Real-Time 3D Radar: Renders a 2D radar overlay plotting the real-time 3D spatial coordinate positions $(X, Y, Z)$ of your squadmates, their active heading directions, and container zones.
  • GPS Telemetry Integration: Position tracking operates unconditionally behind the scenes (exposing coordinates to the API) so external hardware and Stream Deck MFDs update even if the visual map is toggled off in the client settings.

📻 3. Ship Intercom & Degradation Simulation

  • Crew Communications Channel: A dedicated ship-wide audio channel bypassing radio frequencies for players aboard the same vehicle.
  • Environmental & System Degradation: Crew audio quality dynamically degrades based on simulated ship anomalies, applying band-pass DSP filters, radio static hum, and volume attenuation:
    • NORMAL: Crisp digital audio.
    • SHIELD HIT: High-frequency jitter and electric distortion to simulate shield impacts.
    • CRIT PWR: Low-pass muffled filter and volume drops to replicate emergency power routing.
    • QUANTUM: Periodic frequency shifts and warp distortion during quantum travel.

📢 4. Ship Public Address (PA) Broadcast System

  • Emergency Ship-Wide Override: Hold down the PA hotkey to broadcast voice alerts across all decks, cabins, and cargo holds of your vessel, bypassing standard spatial distance roll-offs to notify all passengers of critical threats.

📡 5. Tactical Radio Repeaters & Multi-Hop Beacons

  • Signal Relay Daisy-Chaining: Deploy physical radio beacons or configure ship transmitters to act as multi-hop repeaters. This allows daisy-chaining radio communications around mountain ranges, deep inside caves/bunkers, or over extreme planetary distances.

🤢 6. Physiological G-Force & Exertion Strain

  • Atmospheric and Voice Modulation: Voice feeds are modified by your character's physiological state. Sprinting or drawing heavy G-forces during high-speed atmospheric flight dynamically overlays breathing gasping sounds, vocal cord strain, and voice jitter.

🔌 7. Sim-Pit Telemetry Sync via Local UDP

  • Simulator Cockpit Integration: Spits out raw coordinate vectors, active radio channels, helmet visor states, and ship system parameters on a local UDP channel (port 8892) to sync physical simulator hardware (like Arduino controllers, external LED readouts, or telemetry dashboards).

🎛️ 8. Stream Deck Dial Encoders & Deployable Profiles

  • Encoder & Touch Strip Support: Custom action mappings for Stream Deck Plus and Plus XL dials:
    • Radio Channel Dial: Rotate to select frequency; push or tap the LCD screen to toggle radio mute.
    • Adjust Exertion/G-Force: Rotate to adjust G-force (or Exertion if rotated while pressed); push or tap to toggle distortion.
    • Voice Changer Dial: Rotate to select voice modulator (Alien, Cyborg, Robotic); push or tap to toggle.
  • Programmatic Coordinate Mapping: All 15 templates (Mini 3x2, Classic 5x3, XL 9x4, Plus, Plus XL) now generate using native "column,row" string coordinates (e.g. "0,2") to ensure plug-and-play profile import.
  • Automated Packaging: The GitHub release workflow now automatically packages, zips, and attaches all .streamDeckProfile layouts directly as release assets.

🔌 9. Discord Voice Bridge

  • Out-of-Game Relay: Enables server administrators to bridge XuruVOIP radio channels to external Discord Voice Channels via a secure relay bridge configured in the server's .env setup.

🛡️ 10. Admin Web Dashboard & Security Upgrades

  • Moderation Portal: A secure admin login portal with a scrollable and zoomable canvas-based positional radar, active player session manager, client connection controls, and automated log rotations.

🛠️ Detailed Git Changelog (Since v0.2.0)

  • feat(client): add voice commands, intercom degradation, tactical copilot map mfd to companion app
  • feat(audio): add ship public address (PA) broadcast system
  • feat(radio): add tactical radio relay repeater beacons
  • feat(voice): add g-force and physical exertion voice distortion
  • feat(streamdeck): add PropertyInspectorPath and States validation fixes
  • docs: add detailed component guides and expand server settings
  • fix(test): resolve hotkey conflict with PttPaKey
  • ci: add winget publish step conditionally in release pipeline

📦 Bundled Assets

  • XuruVoipClient-win-x64.msi — Installer package for the WPF client.
  • XuruVoipClient-win-x64.zip — Portable build of the client.
  • com.xuru.voip.streamDeckPlugin — Stream Deck plugin file.
  • XuruVOIP_{device}_{layout}.streamDeckProfile — Deployable profile packages for Mini, Classic, XL, Plus, and Plus XL.
  • xuruvoip-server-windows-x64.exe / xuruvoip-server-linux-x64 — Go server binaries.

Full Changelog: 0.2.0...0.3.0

0.2.0

10 Jun 12:19

Choose a tag to compare

🚀 Version 0.2.0 — The Immersion & Performance Update

We are excited to release v0.2.0! This release marks a significant milestone in the project's evolution, transforming the core audio architecture, introducing premium gameplay features (tactical radar, acoustics, and radio DSP), adding Discord integration, and hardening client/server reliability.

Below is the detailed list of changes and new features introduced since v0.1.0.


🌟 Major Highlights (Diff from v0.1.0)

📡 1. High-Performance UDP Audio Transport

  • WebSocket to UDP Transition: Shipped a major rewrite of the voice stream transport. Audio now travels over UDP rather than WebSockets, resulting in significantly lower latency, no head-of-line blocking, and resilience against packet jitter.
  • Auto-Reconnect Mechanism: Implemented an asynchronous connection manager that automatically reconnects the UDP stream and WebSocket control channel upon unexpected dropouts.

🎧 2. Dynamic Radio DSP & Acoustics

  • Radio Signal Degradation: Integrated distance-based low-fidelity audio degradation. Real-time bandpass filtering and white-noise mixing are applied to mimic distance-based radio signals.
  • Synthesized PTT Mic Chimes: Added satisfying key-down/up radio chirps to simulate tactile radio transceivers.
  • Acoustics & Deck Occlusion: Introduced dynamic audio occlusion. Voice streams are now dynamically muffled/occluded based on ship deck layouts and bulkheads.
  • Voice Presets & Speech-To-Text (STT): Implemented client-side voice presets and initial support for Speech-To-Text processing.

🖥️ 3. Vulkan/DirectX HUD Overlay & Tactical Mini-Radar

  • Transparent HUD Overlay: Developed a click-through WPF overlay window using Win32 styles that remains fully compatible with Vulkan/DirectX in borderless windowed mode. Shows real-time server information, user connectivity, and active speakers.
  • Tactical Mini-Radar: Renders active localized VOIP sources on a HUD-based mini-radar.
  • Position Source Toggle: Added an optional client toggle between OCR (Optical Character Recognition) screen scanning and Game.log parsing (GRTPR) to conserve CPU cycles while tracking coordinates.

🎮 4. Discord Rich Presence (RPC)

  • Added a settings toggle to enable/disable Discord RPC.
  • Displays current status, ship, and coordinate overlay cards directly on your Discord profile.

🛠️ Under-the-Hood Enhancements & Stability

💻 Client Enhancements

  • Startup & Dynamic Log Rotation: Cap logs at 100MB using a rotation system to prevent local storage bloat.
  • Native DLL Resolution: Resolved issues resolving native DLL dependencies when running as a single-file publish, adding fallback path matching.
  • Settings Crash & Compiler Fixes: Fixed a crash in the settings panel and resolved settings window constructor compiler warnings.

🗄️ Server Reorganization

  • Modular Go Architecture: Reorganized the entire Go server codebase into clean, modular packages (audio, websockets, config, logging) and fixed CI/CD delivery pipelines.
  • Administrative Radar Map: Extended the server admin panel with an HTML5 canvas real-time radar map displaying synchronized player locations.

🧪 Testing & Validation Diff

  • C# Unit Tests: Added tests for:
    • GameDetectionService coordinate parsing and helmet attachment monitoring.
    • AudioPlaybackService synthesized PTT chime generation.
    • RadioDspFilter processing at different degradation levels.
  • Go Integration Tests: Added tests for position-server admin authentication, asynchronous goroutine-based message receiving, and real-time player coordinate broadcasting to admin clients.

📝 Documented Features

  • Updated all localized documentation versions (English, Portuguese, German, French) in the doc/ directory to cover:
    • OCR vs GRTPR coordinate selection.
    • Radio DSP effects.
    • Transparent Vulkan-compatible HUD overlay.
    • Portable ZIP file extraction unblocking steps.

📋 Complete Commit Changelog (0.1.0 → 0.2.0)

  • c99e6aa - fix(client): resolve settings window constructor compiler warnings
  • b572fb9 - docs: update portable zip unblocking steps across all readmes
  • b3377b3 - docs: document voice changer, hud radar, deck occlusion, and stt in readmes
  • c84f2d2 - feat(client): implement tactical mini-radar, voice presets, deck occlusion, stt, and fix settings crash
  • e56c90e - feat(client): implement auto-reconnect loop on unexpected socket disconnects
  • 5e9fbc9 - fix(client): cap log file size at 100MB using counter-based rotation
  • 3774779 - fix(audio): handle socket disposal gracefully and limit join logging
  • 191f7b2 - feat(net): transition audio transport from WebSockets to UDP
  • d7c9868 - docs: update client and server architecture sections in readmes
  • 351bf6c - feat: implement startup log rotation, fix single-file native DLL resolution, and enhance Discord RPC
  • 0dd3b85 - feat(client): add Discord RPC settings toggle and overlay info card
  • ee92bf2 - feat: implement acoustics, discord rpc, and radar visuals
  • 05a7857 - refactor(server): reorganize Go codebase into modular packages and fix pipelines
  • c45c782 - docs,tests: document position source toggle, radio dsp effects, overlay, and radar map
  • 57f9cb4 - feat(client server): implement client positional toggle, radio dsp, hud overlay; and server radar map

0.1.0

09 Jun 11:20

Choose a tag to compare

  • WPF Client: Localized in 8 languages, with custom spatial DSP radio filters, OCR-based game screen coordinates tracking, audio processing, and an in-app update notification banner.
  • Go Server: Multi-client voice/coordinate routing using WebSockets, dynamic console update reminders, and integrated brute-force/rate-limiting protection.
  • Release Pipeline: GitHub Actions workflows configured for test automation and release packaging (generating both MSI installer and portable ZIP packages).

Full Changelog: https://github.com/XuruDragon/XuruVOIP/commits/0.1.0