Skip to main content

FLARE

LBDP | poster

An Open-Source Library for Room Impulse Response Synthesis and Analysis in PyTorch based on FLAMO.

This library will be presented at the AES Conference on Artificial Intelligence and Machine Learning for Audio (AIMLA), Queen Mary University, London (UK), 8-10 September 2025

More information soon!

Installation

pip install flareverb

Project Structure

src/flareverb/
├── reverb.py            # Core FDN implementations
├── generate.py          # RIR generation utilities
├── sampling.py          # Delays, gains, and filters sampling
├── analysis.py          # Acoustic analysis functions
├── utils.py             # Utility functions
├── config/              # Configuration modules
└── data/                # Data folder (contains absorption coefficients)

Configuration

FLARE uses Pydantic models for configuration management. The suggested usage is via YAML files: you can write your configuration (for FDN, attenuation, mixing, etc.) in a YAML file, then load it in Python and passing it to the Pydantic config classes. The config classes (FDNConfig, GFDNConfig) are designed to accept dictionaries, so you can parse your YAML into a dict and instantiate the config objects:

import yaml
from flareverb.config.config import BaseConfig

with open("my_config.yaml", "r") as f:
    config_dict = yaml.safe_load(f)

config = BaseConfig(**config_dict)

The main configuration classes are:

FDNConfig

Core FDN configuration parameters:

  • N: Number of delay lines (default: 6)
  • fs: Sampling frequency in Hz (default: 48000)
  • in_ch / out_ch: Input/output channels (default: 1)
  • delay_range_ms: Delay lengths range in milliseconds (default: [20.0, 50.0])
  • delay_log_spacing: Use logarithmic spacing for delays (default: False)
  • early_reflections_type: Type of early reflections - 'gain', 'FIR', or None (default: None)
  • drr: Direct-to-reverberant ratio (default: 0.25, auto-set to 0 if early_reflections_type is None)
  • gain_init: Gain initialization - 'randn' or 'uniform' (default: 'randn')

FDNAttenuation

Attenuation filter configuration:

  • attenuation_type: Filter type - 'homogeneous', 'geq', or 'first_order_lp' (default: 'homogeneous')
  • attenuation_range: RT range in seconds when attenuation_param not given (default: [0.5, 3.5])
  • t60_center_freq: Center frequencies for T60 (default: [63, 125, 250, 500, 1000, 2000, 4000, 8000])
  • rt_nyquist: RT at Nyquist frequency for first-order filters (default: 0.2)

FDNMixing

Mixing matrix configuration:

  • mixing_type: Matrix type - 'orthogonal', 'householder', 'hadamard', or 'rotation' (default: 'orthogonal')
  • is_scattering: Use scattering matrix (default: False)
  • is_velvet_noise: Use velvet noise (default: False)
  • n_stages: Number of scattering stages (default: 3)

GFDNConfig

Grouped FDN configuration (inherits from FDNConfig):

  • n_groups: Number of groups (default: 2)
  • coupling_angles: Inter-group coupling angles (default: [0.0])
  • mixing_angles: Intra-group mixing angles (default: [0.0, 0.0])

The main orchestration function is fdn_dataset.

Requirements

  • Python >= 3.10
  • PyTorch
  • FLAMO >= 0.1.13
  • pydantic
  • pyyaml
  • pandas

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit issues and pull requests.

Links

Metadata

Release files for flareverb 0.0.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for flareverb 0.0.9
File Size Uploaded
flareverb-0.0.9.tar.gz 26.8 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for flareverb 0.0.9
File Interpreter ABI Platform
flareverb-0.0.9-py3-none-any.whl Python 3 none any Details

Total release size: 26.9 MB

Release files / flareverb-0.0.9.tar.gz

Download URL flareverb-0.0.9.tar.gz
Size 26.8 MB
Tags Source
SHA-256 checksum
How to use checksums
2250391cbffec8e00c378ecb99f09a442d54a8860db612dba0eb4ced07258410
BLAKE2b-256 checksum
How to use checksums
7c481d039db3c3b3248dc9e3cadba6ca0666f52247b980d73c7945b9fa22c08d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.15

Release files / flareverb-0.0.9-py3-none-any.whl

Download URL flareverb-0.0.9-py3-none-any.whl
Size 37.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
85d77bd71f299f69c563e91de987795b284bbb3b1943007bd7cd89814d8467d4
BLAKE2b-256 checksum
How to use checksums
86df2df3210bf007c3c2440f1b30f8c418c2414e6d44ce6c5549b42c6ad37703
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.15

Release history Release notifications | RSS feed

This release

0.0.9 This release

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page