Skip to main content

ambiscape

CI docs PyPI version Python License: MIT DOI

ambiscape is a Python toolbox for analysing soundscapes—the sonic ambiences of rooms and other places. It reads mono, stereo, binaural, or first-order ambisonic recordings of any length and describes a place's sound as a whole: level, spectrum, space, rhythm, sources, and more. Several recorders spread through a building can be read together as one acoustic network.

Install

pip install ambiscape

Optional extras add psychoacoustic indicators, machine listening, music analysis, live capture, and spatial visuals. See the install guide.

Quickstart

Point analyze at a session—a folder of WAV files from one recording occasion:

ambiscape analyze my-session/

This streams the audio in constant memory, however long it is. It extracts features, computes descriptors (Leq, LAeq, percentile levels, event statistics, diffuseness, and more), renders overview figures, and writes a README.md summarising the session. Start by reading that README and looking at analysis/overview.png:

Session overview figure: level timeline, spectrogram, anglegram, and diffuseness lane on one clock. The quickstart guide continues from there, on the command line and in Python.

Commands

analyze is one of nearly forty subcommands. The others cover taxonomy annotation, rhythm and tonality, room acoustics and impulse responses, ecological and source-domain indices, perceptual surveys, multi-recorder building networks (network), corpus aggregation, and privacy-aware publishing. The command overview lists them all; ambiscape --help prints the same list.

Documentation

  • User guide & API reference—the session model, feature and descriptor definitions, and a page per analysis module.
  • Wiki—field-recording protocol, recipes, worked case studies, design rationale, and research context.

ambiscape analyses sound; its sister toolbox MGT-python analyses video. The two meet at file boundaries—see Working with other packages.

The four toolboxes

Four packages from the fourMs lab, each released separately on PyPI. Which one you want is decided by what you have in hand rather than by what you want to know:

you have use it gives you
a recording of a place — mono, stereo, binaural or ambisonic ambiscape (this one) the sonic ambience of that place: level, spectrum, space, rhythm, sources
a motion time series from a body — optical markers, an accelerometer, a respiration belt, a force plate micromotion quantity of motion, posture, balance, and the band conventions the others follow
a video file, with or without its sound musicalgestures motiongrams, videograms, motion analysis from ordinary video
a folder of music, or a concert recording musiscape many tracks and albums compared at a glance

Where a measure appears in more than one package it has a single owner and a single implementation, so the answer does not depend on which package you called. micromotion owns filtering, lag estimation and circular statistics; ambiscape owns the soundscape descriptors; musicalgestures owns everything that starts from pixels. Music analysis moved out of ambiscape into musiscape on 2026-08-12, so a release of either from before then may still carry the other's functions.

ambiscape installs and runs without any of the others. It keeps its own copy of six short circular-statistics primitives rather than taking a dependency for them, which is a deliberate exception to the single-owner rule: tests/test_circstats_agreement.py checks them against micromotion's and skips when it is not installed. That test exists because the two Rayleigh implementations were once found to disagree on about a fifth of random cases — ambiscape used Zar's series expansion and micromotion uses Wilkie's approximation, both published, neither wrong, and nothing anywhere saying they were meant to match.

Licence

MIT—see LICENSE.

Credits

ambiscape is developed as part of the AMBIENT project at fourMs / RITMO, University of Oslo, supported by the Research Council of Norway. It is the streaming companion to ambiviz, which renders rich spatial visuals from short ambisonic files.

Citing

Cite the concept DOI, which always resolves to the newest version:

Jensenius, A. R., & Guo, J. (2026). ambiscape: analysis of soundscapes from mono, stereo, binaural and ambisonic recordings [Computer software]. Zenodo. https://doi.org/10.5281/zenodo.21965234

Where the exact behaviour matters, add the version you ran. Every release has its own DOI, listed on the Zenodo record.

An older concept DOI, https://doi.org/10.5281/zenodo.21948997, is frozen at 0.42.0. It was created by a hand deposit made on 2026-08-15, before the Zenodo GitHub integration was archiving this repository; the integration began working the next day and every release since is under the DOI above. Zenodo cannot merge two concepts, so both records exist and only one of them advances. Cite the DOI above.

CITATION.cff in this repository carries the same information in machine-readable form.

Download files

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

Source Distribution

ambiscape-0.46.0.tar.gz (384.2 kB view details)

Uploaded Source

Built Distribution

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

ambiscape-0.46.0-py3-none-any.whl (310.8 kB view details)

Uploaded Python 3

File details

Details for the file ambiscape-0.46.0.tar.gz.

File metadata

  • Download URL: ambiscape-0.46.0.tar.gz
  • Upload date:
  • Size: 384.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ambiscape-0.46.0.tar.gz
Algorithm Hash digest
SHA256 bb397f64d5333ee49af3724361d055a0f13a6d6fff340a5931b1efd50b0bf5b7
MD5 7e29fe773688d27eb8a296da46da4652
BLAKE2b-256 314023cf758ba9e3a55219a6090ac109c8c3ed07d719ced37bc07dd3431f064a

See more details on using hashes here.

Provenance

The following attestation bundles were made for ambiscape-0.46.0.tar.gz:

Publisher: python-publish.yml on fourMs/ambiscape

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ambiscape-0.46.0-py3-none-any.whl.

File metadata

  • Download URL: ambiscape-0.46.0-py3-none-any.whl
  • Upload date:
  • Size: 310.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ambiscape-0.46.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3b7d4d3fbd74dc5d3fb6d3299fb8605e6761093c4ae3fd6073db0ff2b80082c4
MD5 9666b0a034a0d76213db711238663fd3
BLAKE2b-256 507095b1dd3ceb1dba237afc8c67204680389c66c1050bbdeada361180797a82

See more details on using hashes here.

Provenance

The following attestation bundles were made for ambiscape-0.46.0-py3-none-any.whl:

Publisher: python-publish.yml on fourMs/ambiscape

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.49.0

2 files

0.48.0

2 files

0.47.0

2 files

This release

0.46.0 This release

2 files

0.45.0

2 files

0.44.0

2 files

0.43.0

2 files

0.42.0

2 files

0.41.0

2 files

0.40.0

2 files

0.39.0

2 files

0.38.0

2 files

0.37.0

2 files

0.36.0

2 files

0.35.0

2 files

0.34.0

2 files

0.33.0

2 files

0.32.0

2 files

0.31.0

2 files

0.30.0

2 files

0.29.0

2 files

0.28.1

2 files

0.28.0

2 files

0.27.0

2 files

0.26.0

2 files

0.25.0

2 files

0.24.1

2 files

0.24.0

2 files

0.23.3

2 files

0.23.2

2 files

0.22.0

2 files

0.17.0

2 files

0.16.0

2 files

0.15.1

2 files

0.15.0

2 files

0.14.0

2 files

0.2.0

2 files

0.1.0

2 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