Skip to main content

Real-time audio denoising using DeepFilterNet with streaming

Project description

DeepFilterNet Streaming

A Python library for real-time audio denoising using DeepFilterNet, providing streaming audio processing capabilities through C API bindings.

Platform Support

Currently supports the following platforms:

  • macOS ARM64 (Apple Silicon)
  • Linux x86_64
  • Linux ARM64 (aarch64)

Installation

pip install dfnstream-py

Quick Start

from dfnstream_py import DeepFilterNetStreaming
import numpy as np

# Initialize the processor
processor = DeepFilterNetStreaming()

# Process audio chunks
audio_chunk = np.random.randn(1024).astype(np.float32)  # Your audio data
denoised_chunk = processor.process_chunk(audio_chunk)

# Don't forget to cleanup
processor.close()

Examples

The examples/ folder contains sample scripts demonstrating different use cases:

Single File Processing

uv run python examples/enhance_wav.py input_audio.wav

Processes a single WAV file and saves the denoised version as input_audio_denoised.wav.

Batch Directory Processing

uv run python examples/enhance_dir.py /path/to/wav/files/

Processes all WAV files in a directory and saves enhanced versions to an outputs/ folder.

API Reference

DeepFilterNetStreaming

The main class for audio processing.

DeepFilterNetStreaming(
    model_path=None,          # Optional custom model path
    atten_lim=None,           # Attenuation limit in dB (None = no limit)
    log_level="warn",         # Logging level: "error", "warn", "info", "debug", "trace"
    compensate_delay=True,    # Enable delay compensation
    post_filter_beta=0.0      # Post-filter beta (0.0 = disabled)
)

Key Methods

  • process_chunk(audio_chunk) - Process a chunk of audio data
  • process_frame(audio_frame) - Process a single frame
  • finalize() - Get remaining delayed samples
  • close() - Clean up resources

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dfnstream_py-0.1.1.tar.gz (78.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dfnstream_py-0.1.1-py3-none-any.whl (78.7 MB view details)

Uploaded Python 3

File details

Details for the file dfnstream_py-0.1.1.tar.gz.

File metadata

  • Download URL: dfnstream_py-0.1.1.tar.gz
  • Upload date:
  • Size: 78.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.13

File hashes

Hashes for dfnstream_py-0.1.1.tar.gz
Algorithm Hash digest
SHA256 00d25a8c8b7eeb666a26af288f3f2750d3c3524cce27dc5a7d44df8f9b403f61
MD5 db2db869b906c82afadba1639e61b59c
BLAKE2b-256 ce4638635dd36271a96e953c66c4f5fa655510b3ca1ac726999b0654b71bc9bc

See more details on using hashes here.

File details

Details for the file dfnstream_py-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for dfnstream_py-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4581f7f1fe617cc55ed332e6a76d05cf45f88d338c9604e8bb83d1ff51f58587
MD5 0d0efdf583061195c8f6534456f0d613
BLAKE2b-256 056c8e6278d9e14ff456efc09abf0ce4559649aa7b1273f1903a64c6db6296b7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page