Utilities

The guano-py Python module includes several helpful commandline utilities for working with GUANO metadata. When you install guano-py with pip install guano, the following scripts will then be callable from the commandline.

guano_dump.py

Print the GUANO metadata found in a file or files.

usage:

$> guano_dump.py WAVFILE...

guano_edit.py

guano_edit.py - Manipulate GUANO metadata of individual files or in bulk.

Specify GUANO fields and values, followed by a list of files which the changes should be applied to. The values of existing fields may be used by specifying the field as ${Fieldname}.

Be careful to properly escape values for your shell commandline, especially if using value templates! Study the examples below.

Examples:

# Add NABat grid cell to all recordings under the `foo` directory
$> guano_edit.py  "NABat|Grid Cell ID: 45678"  ~/bat_calls/foo/

# Append additional text to the end of the existing Note text
$> guano_edit.py  'Note: ${Note} Recorded by Dave.'  EPFU_refcall.wav
TODO::
  • Ensure that we persist all RIFF chunks
  • Add support for adding GUANO metadata to “new” files
  • Support Anabat files

d500x2guano.py

Convert files with raw D500X metadata to use GUANO metadata instead.

usage:

$> d500x2guano.py WAVFILE...

sb2guano.py

Convert files with SonoBat-format metadata to use GUANO metadata instead.

usage:

$> sb2guano.py WAVFILE...

wamd2guano.py

Convert Wildlife Acoustics WAMD metadata files to use GUANO metadata instead.

usage:

$> wamd2guano.py WAVFILE...

batlogger2guano.py

Convert files from the Elekon BatLogger to use GUANO metadata instead.

usage:

$> batlogger2guano.py WAVFILE...

disperse.py

“Disperse” files by moving them into folders according to their species label.

The Species Manual ID field will be preferred over Species Auto ID.

usage:

$> disperse.py [--copy] ROOTDIR