Skip to main content

Python package to download, unpack and process impulse response datasets.

Project description

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/bitstreams/4b6cb9e5-f1e4-42c6-9b41-0a85e6ee9422/cont
         ent' to '/home/pelling/.cache/irdl/MIRACLE/provider'.
D1.h5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 302.3/302.3 MB 43.9 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]...

╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --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.                                                                                       │
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

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

irdl-1.0.0b4.tar.gz (39.3 kB view details)

Uploaded Source

Built Distribution

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

irdl-1.0.0b4-py3-none-any.whl (40.3 kB view details)

Uploaded Python 3

File details

Details for the file irdl-1.0.0b4.tar.gz.

File metadata

  • Download URL: irdl-1.0.0b4.tar.gz
  • Upload date:
  • Size: 39.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","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}

File hashes

Hashes for irdl-1.0.0b4.tar.gz
Algorithm Hash digest
SHA256 d8135901928e0901953dcc49d661056d92eff34b9281d6755d3b8ef3c63f6bcc
MD5 993b91de6771818eacc0fa39060c0037
BLAKE2b-256 c73acea8977b5d56cb7734076e3b426521ba971fbee7af6a41c692054c2cb7e4

See more details on using hashes here.

File details

Details for the file irdl-1.0.0b4-py3-none-any.whl.

File metadata

  • Download URL: irdl-1.0.0b4-py3-none-any.whl
  • Upload date:
  • Size: 40.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","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}

File hashes

Hashes for irdl-1.0.0b4-py3-none-any.whl
Algorithm Hash digest
SHA256 bded25b274fd8b66d429c8609ada8906b5ba3dccef279b5034749ee4258d9540
MD5 d43c572d29d026da6b758816224a8ae8
BLAKE2b-256 5a237b8ab9849d52d72180329ef8884c87979e1af4d5180ed8311940cc492d82

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