Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

PyPI PyPI DOI

irdl: Impulse Response Downloader

Python package to download, unpack and process impulse response datasets in a unified way.

Highlights

  • Returns data in a standardised format either
    • a dictionary of pyfar-objects (default) ('pyfar')
    • a dictionary of NumPy arrays ('numpy')
    • a path to an HDF5-file for partial data access not having to load the entire data into memory ('hdf5')
    • a path to a SOFA-file, the standardised format for spatially oriented acoustic data ('sofa')
    • a path to the unprocessed provider files as downloaded ('raw')
  • Leverages pooch to download impulse response datasets and verifies their integrity with a checksum.
  • Only downloads, extracts and processes what is actually needed.
  • Adds pooch-support for dSpace repositories, such as TU Berlin depositonce.
  • Data storage location can be set by the IRDL_CACHE_DIR environment variable (defaults to the user cache directory).
  • Output can be processed and exported to a custom location via the export_dir argument.

Links

Usage (Python API)

The package can be included in a Python script as simple as:

from irdl import MiracleDataset

data = MiracleDataset.get(scenario='D1')
print(data)
INFO     Downloading MIRACLE scenario D1                              
INFO     Downloading file 'D1.h5' from                                
         'https://api-depositonce.tu-berlin.de/server/api/core/bitstre
         ams/4b6cb9e5-f1e4-42c6-9b41-0a85e6ee9422/content' to         
         '/home/pelling/.cache/irdl/MIRACLE/provider'.                
D1.h5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 302.3/302.3 MB 51.8 TB/s 0:00:00
INFO     Convention SingleRoomMIMOSRIR v1.0 is up to date             
{'impulse_response': time domain energy Signal:
(1, 1089, 64) channels with 1024 samples @ 32000.0 Hz sampling rate and none FFT normalization
, 'source_coordinates': 1D Coordinates object with 1089 points of cshape (1089,)

Does not contain sampling weights, 'receiver_coordinates': 2D Coordinates object with 64 points of cshape (64, 1)

Does not contain sampling weights}

Usage (CLI)

Once installed, the package provides a convenient command line script which can be invoked with irdl.

 Usage: irdl [OPTIONS] COMMAND [ARGS]...                              
                                                                      
 Main callback for version flag handling.                             
                                                                      
╭─ Options ──────────────────────────────────────────────────────────╮
│ --version                     Show version and exit.               │
│ --install-completion          Install completion for the current   │
│                               shell.                               │
│ --show-completion             Show completion for the current      │
│                               shell, to copy it or customize the   │
│                               installation.                        │
│ --help                        Show this message and exit.          │
╰────────────────────────────────────────────────────────────────────╯
╭─ Commands ─────────────────────────────────────────────────────────╮
│ list   List all available datasets.                                │
│ cache  Manage cache directory.                                     │
│ get    Download datasets.                                          │
╰────────────────────────────────────────────────────────────────────╯

Release files for irdl 1.0.0b5

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

Source distribution (sdist)

Source distribution for irdl 1.0.0b5
File Size Uploaded
irdl-1.0.0b5.tar.gz 37.5 kB Details

Built distribution (wheel)

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

Total release size: 78.5 kB

Release files / irdl-1.0.0b5.tar.gz

Download URL irdl-1.0.0b5.tar.gz
Size 37.5 kB
Tags Source
SHA-256 checksum
How to use checksums
944fdaeb3a5d439bad4872a6fba1adae84746f56e96be5b7ecbafbf8e721ccf7
BLAKE2b-256 checksum
How to use checksums
23678eaac205b821be75d7974621ff2e65af22b5eee0974ec3520081fbe4a4db
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / irdl-1.0.0b5-py3-none-any.whl

Download URL irdl-1.0.0b5-py3-none-any.whl
Size 41.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e47a6556141b0a1d9e8fb0254e447008afced1975e30632cadba3a07daf3c970
BLAKE2b-256 checksum
How to use checksums
fdec9ea43d6f560c747083272d4cbe15368bed07710d790fc3710e527fec102b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
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