Skip to content
/ pbp Public

Process ocean audio data archives to daily analysis products of hybrid millidecade spectra using PyPAM.

Notifications You must be signed in to change notification settings

mbari-org/pbp

Repository files navigation

PyPAM based data processing

The mbari-pbp package allows to process ocean audio data archives to daily analysis products of hybrid millidecade spectra using PyPAM.

Status: Functional version, including support for cloud based processing.

  • JSON generation of timekeeping with indication of start and duration of recognized sound files
  • Audio file processing
    • Frequency and psd array output
    • Concatenation of processed 1-minute segments for daily product
    • Calibration with given sensitivity file (NetCDF), or flat sensitivity value
  • Data products
    • NetCDF with metadata
    • Summary plot
  • Cloud processing
    • Inputs can be downloaded from and uploaded to S3
    • Inputs can be downloaded from public GCS bucket
    • Outputs can be uploaded to GCS

Documentation

docs.mbari.org/pbp.

Installation

The only requirement is Python 3.9, 3.10, or 3.11 on your environment.1 You can run python3 --version to check the version of Python installed.

As a general practice, it is recommended to use a virtual environment for the installation.

python3.11 -m venv virtenv
source virtenv/bin/activate

Install the package:

pip install mbari-pbp

Programs and API

The mbari-pbp package includes command line interface (CLI) programs, and also provides APIs you can use in your Python scripts or notebooks.

CLI Programs

The package includes the following CLI programs:

Program Description
pbp-meta-gen Generate JSON files with audio metadata
pbp-hmb-gen Main HMB generation program
pbp-cloud Program for cloud based processing
pbp-hmb-plot Utility program to plot HMB product

API

TODO link to the API documentation.

References

Development

See DEVELOPMENT.md for details.

Footnotes

  1. As currently required by PyPAM.