Voxa.Audio.Abstractions 0.7.2-alpha

This is a prerelease version of Voxa.Audio.Abstractions.
dotnet add package Voxa.Audio.Abstractions --version 0.7.2-alpha
                    
NuGet\Install-Package Voxa.Audio.Abstractions -Version 0.7.2-alpha
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Voxa.Audio.Abstractions" Version="0.7.2-alpha" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Voxa.Audio.Abstractions" Version="0.7.2-alpha" />
                    
Directory.Packages.props
<PackageReference Include="Voxa.Audio.Abstractions" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Voxa.Audio.Abstractions --version 0.7.2-alpha
                    
#r "nuget: Voxa.Audio.Abstractions, 0.7.2-alpha"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Voxa.Audio.Abstractions@0.7.2-alpha
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Voxa.Audio.Abstractions&version=0.7.2-alpha&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Voxa.Audio.Abstractions&version=0.7.2-alpha&prerelease
                    
Install as a Cake Tool

Voxa.Audio.Abstractions

Audio-stage abstractions for the Voxa pipeline — the seams that sit on the mic path before the VAD.

IEchoCanceller (VRT-003)

The acoustic echo canceller seam for barge-in over speakers. While the bot is speaking, its own audio loops back through the speakers into the mic; a half-duplex gate avoids transcribing it, but that gate is what blocks true talk-over-the-bot. An echo canceller subtracts the bot's audio (the far-end reference) from the mic (the near-end) so the VAD/STT see only the user.

This package ships the seam, a passthrough default, and the wiring — not a DSP:

  • IEchoCancellerFeedReference(farEndPcm), CancelEcho(nearEndPcm) → pcm, Reset(), SampleRate. Buffering, frame alignment, and resampling between far-end and near-end are the implementation's job.
  • NullEchoCanceller — passthrough; returns the mic audio unchanged and ignores the reference.
  • EchoCancellerProcessor — runs CancelEcho per AudioRawFrame (placed before the VAD); resets on session start and on an interruption epoch.
  • EchoReferenceTapProcessor — feeds each outbound bot AudioRawFrame into the canceller as the far-end reference (placed after the TTS stage); observes only, forwards unchanged.

Enable a real canceller with Voxa:Aec:Engine once an implementation package is referenced; with it unset or None the composer inserts no AEC stage, so the pipeline is byte-identical to today. A production DSP (WebRTC APM / SpeexDSP / a managed canceller) is a separate, opt-in follow-up package.

IAudioEnhancer (VLS-004)

The spectral-enhancement (denoise) seam for the local STT tier: clean the mic signal so on-device transcription holds up in a noisy or reverberant room. The composer places it after the AEC stage and before the VAD, so detection and STT both see the cleaned audio.

  • IAudioEnhancerEnhance(pcm) → pcm (same length/rate/channels — signal conditioning, not a format change), Reset(), SampleRate.
  • NullAudioEnhancer — passthrough; returns the audio unchanged.
  • AudioEnhancerProcessor — runs Enhance per AudioRawFrame; resets on session start, disposes the engine on end.

Enable a real denoiser with Voxa:Enhance:Engine once an implementation package is referenced; unset / None inserts no stage (byte-identical, zero cost). The reference engine (DeepFilterNet3 on ONNX Runtime, in-process like Silero/Kokoro) is a separate opt-in Voxa.Audio.Enhance follow-up.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on Voxa.Audio.Abstractions:

Package Downloads
Voxa.AspNetCore

Fluent ASP.NET Core integration for Voxa. Provides MapVoxaVoice + a VoicePipelineBuilder so MAF-using apps can drop in a voice pipeline with a single fluent expression: app.MapVoxaVoice("/voice", v => v.UseSpeechToText(...).UseMicrosoftAgent(agent).UseTextToSpeech(...)).

Voxa.Transports.Telephony

Shared telephony media-stream transport for the Voxa pipeline (VTL-001). A vendor-neutral PipelineSource/PipelineSink pair that runs a phone call over a WebSocket — owning the read/write loops, the barge-in epoch purge, and the 8 kHz↔pipeline resample bridge — and delegates the JSON/base64 wire framing to a small ITelephonyMediaCodec. Includes a G.711 (μ-law) codec. No WebRTC. The Twilio codec lives in Voxa.Transports.Twilio.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.7.2-alpha 108 7/10/2026
0.7.1-alpha 81 7/10/2026
0.7.0-alpha 85 7/10/2026
0.6.0-alpha 96 6/22/2026