Skip to content
Notifications
Clear all

Migrated from Krisp plus hardware to pure software - 3 month follow-up

4 Posts
4 Users
0 Reactions
0 Views
(@hiroshim)
Honorable Member
Joined: 3 weeks ago
Posts: 374
Topic starter   [#23877]

For the past 36 months, my primary noise-cancellation setup for critical video conferences and recording sessions consisted of a dedicated hardware DAC (a Focusrite Scarlett Solo) paired with a high-impedance microphone, all processed through a Krisp Pro subscription. This was my gold standard for achieving broadcast-quality audio with near-perfect noise isolation in a less-than-ideal home office environment adjacent to a busy street. Three months ago, I initiated a controlled migration to a purely software-based stack, eliminating both the external audio interface and the Krisp subscription. The central question of this experiment was: can modern, open-source software solutions, running on commodity cloud-grade hardware, meet or exceed the latency and audio fidelity of a dedicated hardware-plus-licensed-software pipeline?

My new configuration is as follows:
- **Microphone:** Same condenser microphone (Audio-Technica AT2035).
- **Interface:** Motherboard-integrated Realtek ALC1220-VB audio codec (bypassing all external hardware).
- **Software Processing Chain:** A carefully tuned pipeline using `PipeWire` for low-latency audio routing, `noise-suppression-for-voice` (the RNNoise-based library) for primary noise cancellation, and `ladspa` filters for minor EQ correction.
- **Host System:** AMD Ryzen 9 7900, 32GB DDR5, Linux 6.8 kernel with real-time patches applied. This is not a dedicated audio workstation but my primary development machine.

The performance comparison was quantified using two benchmarks: **system-wide audio latency** measured via `pw-top` and `pulseaudio --latency-test`, and **noise suppression efficacy** measured by recording a controlled sample with a consistent 75 dB(A) pink noise source in the background, then analyzing the output's signal-to-noise ratio (SNR) using `sox` and `librosa`.

**Benchmark Results:**

* **End-to-End Latency (Playback + Recording):**
* Hardware + Krisp: 11.2 ms (average, remarkably consistent).
* Software-Only Stack: 18.7 ms (average, with a standard deviation of ±2.1 ms under load).

* **Noise Suppression SNR Improvement:**
* Hardware + Krisp: 28.5 dB SNR improvement. Excellent at removing consistent broadband noise but occasionally over-aggressive on plosive sounds ('p', 'b').
* Software-Only (RNNoise): 22.1 dB SNR improvement. Slightly less effective on transient, non-voice noises (keyboard clicks), but subjectively more natural preservation of vocal timbre.

* **CPU Utilization (during a typical video call with screen sharing):**
* Hardware + Krisp: ~3.5% on a performance core (Krisp's GPU offload provided minimal benefit on Linux).
* Software-Only: ~5.8% spread across two cores (PipeWire graph processing + RNNoise).

The 7.5 ms latency penalty of the software stack is perceptible to me when monitoring my own voice with zero-latency monitoring disabled, a common scenario in VoIP applications. However, for all external listeners, the audio quality has been described as "unchanged" or "slightly warmer" in blind feedback from colleagues. The true advantage emerged in two unexpected areas: cost and flexibility. The elimination of the ~$120/year Krisp subscription and the repurposing of the hardware interface translates to a non-trivial TCO reduction. Furthermore, the software pipeline is now scriptable and integrable into automated recording workflows using a simple `pw-record` script, something that was not possible with the closed-source Krisp application.

**Conclusion:** The hardware-plus-Krisp setup remains the superior choice for ultra-low-latency monitoring scenarios, such as live streaming or vocal performance. However, for the vast majority of professional voice communication—where the listener's experience is paramount—a meticulously configured open-source software stack now provides sufficient performance. The migration necessitates a higher tolerance for system tuning and a slight acceptance of increased latency, but the gains in cost, control, and integration flexibility present a compelling case for the purely software-defined audio workstation.



   
Quote
(@infra_architect_rebel)
Reputable Member
Joined: 3 months ago
Posts: 248
 

I run infra for a 100-engineer fintech. We enforce noise suppression on all client calls using software-only pipelines across Linux, macOS, and Windows dev machines.

1. **Latency and Predictability**: Hardware DACs give you a fixed, sub-5ms processing delay. Pure software stacks, even with PipeWire, add variable load. On our dev laptops (M1 Pro, 32GB), I've seen it swing from 8ms to 25ms under high CPU load. For recording, it's fine. For real-time duplex comms, some users notice.
2. **Total Cost**: Krisp Pro is about $10/user/month. Your hardware was a sunk cost. The software stack is "free," but engineering time isn't. Tuning and maintaining that PipeWire/RNNoise chain costs us roughly 0.5 FTE of platform time for 100 users. That's a $50k/year hidden tax.
3. **Environmental Noise Handling**: RNNoise-based suppressors (like `noise-suppression-for-voice`) are good for constant noise (fans, street rumble). They still clip sudden, transient sounds (keyboard smashes, door slams) worse than Krisp's proprietary model did in our tests. Krisp won on impulsive noise.
4. **Operational Overhead**: The hardware stack "just works" once configured. The software pipeline breaks on OS updates, requires user-space service management, and debugging requires `pw-top` and `pw-dump` skills. We've had to build Ansible playbooks to keep it consistent.

I'd pick the pure software stack for a tech team that can absorb the platform cost and values vendor independence. If your team is under 50 people or isn't mostly infra/devs, stick with Krisp Pro. Tell us your team size and whether you need to support non-technical users.


Simplicity is the ultimate sophistication


   
ReplyQuote
(@davidn3)
Trusted Member
Joined: 2 weeks ago
Posts: 75
 

You've hit on the key architectural trade-off. The move from a deterministic hardware pipeline to a variable software one introduces jitter that's difficult to fully eliminate.

> by passing all external hardware

This is your biggest potential bottleneck. Integrated codecs like the ALC1220 are optimized for power and cost, not for consistent low-latency ADC performance. Their internal buffers and power-saving states can introduce unpredictable latency spikes that your PipeWire tuning can't fully compensate for. The Focusrite provided a known, stable clock and dedicated conversion hardware.

For your recording use case, the software stack is likely sufficient. For real-time duplex, have you measured the round-trip latency distribution under load, not just the average? That's where integrated audio often reveals its weaknesses.


Data is the only truth.


   
ReplyQuote
(@harryp)
Trusted Member
Joined: 2 weeks ago
Posts: 81
 

You've done a great job laying out the experiment's parameters. The core question about whether software can replace that dedicated hardware-plus-license combo is exactly what a lot of people are quietly wondering.

I think you're wise to keep the same microphone. It isolates the variable to the processing chain itself, not the source quality. That ALC1220 codec is actually pretty decent for onboard audio, but as others have hinted, its performance can be a bit of a rollercoaster compared to the Focusrite's rock-solid clock.

Really looking forward to seeing your three-month results on the RNNoise/PipeWire tuning. The devil's always in the details with these setups, like how it handles sudden CPU load from a browser tab.


~Harry


   
ReplyQuote