OpenSoundscape

OpenSoundscape

open_source

OpenSoundscape is a free, open-source Python library for bioacoustic data analysis, featuring CNN training, spectrogram tools, automated sound detection, and acoustic localization.

About

OpenSoundscape is a powerful open-source Python utility library designed for bioacoustics researchers, ecologists, and data scientists working with wildlife sound data. It provides a comprehensive suite of tools that can be chained together to form complete data analysis pipelines. Core capabilities include loading and manipulating audio files, creating and transforming spectrograms, and training convolutional neural networks (CNNs) on spectrogram data using PyTorch. Researchers can also run pre-trained CNNs to detect specific animal vocalizations, use the RIBBIT algorithm to identify periodic calls, and leverage transfer learning by training shallow classifiers on embeddings from models like BirdNET or Perch. OpenSoundscape also supports acoustic localization — estimating the physical location of a sound source from synchronized multi-recorder deployments — and integrates with Raven annotation files for labeled training data workflows. The library is particularly well-suited for large-scale passive acoustic monitoring projects. Tutorials are provided as downloadable Jupyter Notebooks compatible with Google Colab, making it accessible to students and researchers without high-powered local hardware. It supports Windows, Mac, and Linux environments and integrates with conda, Poetry, and cloud computing clusters. Cited in Methods in Ecology and Evolution (2023), OpenSoundscape is an actively maintained, community-backed tool ideal for ecological research, biodiversity monitoring, and AI-driven wildlife conservation efforts.

Key Features

  • CNN Training on Spectrograms: Train custom convolutional neural networks on spectrogram data using PyTorch to classify animal vocalizations.
  • Pre-trained Model Inference: Run pre-trained CNNs and leverage BirdNET or Perch embeddings for transfer learning with minimal labeled data.
  • RIBBIT Periodic Vocalization Detector: Detect species with periodic calls (e.g., frogs) using the RIBBIT signal processing algorithm.
  • Acoustic Localization: Estimate the geographic location of sound sources using synchronized recordings from multiple AudioMoth or similar recorders.
  • Audio & Spectrogram Utilities: Load, manipulate, and preprocess audio files and spectrograms, with support for Raven annotation formats.

Use Cases

  • Automated detection of bird, frog, or insect species in passive acoustic monitoring recordings
  • Training custom CNN classifiers on labeled wildlife audio datasets for species identification
  • Large-scale biodiversity surveys using AudioMoth recorders deployed in forests or wetlands
  • Transfer learning with BirdNET or Perch embeddings to classify rare species with limited training data
  • Acoustic localization of individual animals across multi-recorder arrays for behavior and movement studies

Pros

  • Completely Free and Open Source: Licensed openly and developed by an academic lab, with no cost or usage restrictions for research or commercial use.
  • End-to-End Bioacoustic Pipelines: Covers every step from raw audio ingestion to trained classifier deployment, reducing the need for multiple disparate tools.
  • Academic Credibility: Peer-reviewed and published in Methods in Ecology and Evolution, making it citable and trusted in scientific research.
  • Google Colab Compatible: All tutorials run in Jupyter/Colab environments, lowering the hardware barrier for students and field researchers.

Cons

  • Python Expertise Required: As a code library, it requires comfort with Python and data science tooling — there is no graphical user interface.
  • Narrowly Focused Domain: Designed specifically for bioacoustics; not suitable for general audio processing, music analysis, or speech applications.
  • Active Development Means Breaking Changes: The library is under active development, so APIs and workflows may change between versions.

Frequently Asked Questions

What is OpenSoundscape used for?

OpenSoundscape is used for analyzing bioacoustic data — primarily wildlife and nature sounds. It supports training machine learning classifiers, detecting animal vocalizations, and estimating the location of sound sources from field recordings.

Is OpenSoundscape free to use?

Yes. OpenSoundscape is completely free and open-source. It is developed and maintained by the Kitzes Lab at the University of Pittsburgh with no licensing cost.

Do I need a GPU to use OpenSoundscape?

A GPU is recommended for training CNNs efficiently, but not strictly required. The library also supports Google Colab, which provides free GPU access for running tutorials and experiments.

Can I use pre-trained models with OpenSoundscape?

Yes. OpenSoundscape supports running pre-trained CNNs and integrates with embeddings from models like BirdNET and Perch, enabling transfer learning without training from scratch.

How do I get started with OpenSoundscape?

The documentation includes step-by-step Jupyter Notebook tutorials covering audio processing, CNN training, and transfer learning. These can be run locally or on Google Colab. Installation is supported on Windows, Mac, and Linux via conda or pip.

Reviews

No reviews yet. Be the first to review this tool.

Alternatives

See all