Skip to main content

BirdNET-only inference package for ARIA (Acoustic Recognition for Inventories of Aviaries)

Project description

aria-inference-birdnet

BirdNET-only inference package for ARIA (Acoustic Recognition for Inventories of Aviaries).

This is the baseline detection system for the BioDCASE 2026 Challenge.

Installation

Requires Python 3.11 or 3.12.

pip install aria-inference-birdnet

This automatically installs BirdNET-Analyzer and all other dependencies.

Quick start

1. Download model files

aria-inference-birdnet download-models --dir ./models

This fetches the following from GitHub Releases:

  • ZooCustom_v1.tflite – custom BirdNET classifier trained on zoo species
  • ZooCustom_v1_Labels.txt – species label list

2. Run detection

aria-inference-birdnet detect \
  --input /path/to/audio_or_folder \
  --output predictions.csv \
  --model-dir ./models \
  --allowed-species-file allowed_species.txt

3. Python API

from pathlib import Path
from aria_inference_birdnet import run_detection

run_detection(
    input_path=Path("recordings/"),
    output_csv=Path("predictions.csv"),
    model_dir=Path("models/"),
    allowed_species_file=Path("allowed_species.txt"),
    temperature=1.8,
    top_k=3,
)

CLI reference

detect

Flag Default Description
--input (required) Audio file or directory
--output (required) Output CSV path
--model-dir (required) Directory with model files
--allowed-species-file None Species whitelist (one per line)
--min-confidence 0.05 Global confidence cutoff
--temperature 1.8 Confidence scaling (T>1 reduces saturation)
--overlap 0.0 Window overlap in seconds
--threads 4 CPU threads
--topk 3 Max species per window (0=disable)
--eval-csv (auto) Per-class threshold CSV

download-models

Flag Default Description
--dir (required) Local directory for model files
--skip-optional False Skip the evaluation CSV

Pipeline stages

  1. BirdNET analysis – runs birdnet_analyzer.analyze on the input audio
  2. Species filtering – keeps only species listed in allowed_species.txt
  3. Temperature scaling – calibrates over-saturated confidences (T=1.8 by default)
  4. CSV merging – combines per-file result CSVs into one
  5. Per-class thresholds – applies optimal thresholds from training evaluation (if available)
  6. Top-K filtering – keeps at most K species per 3-second window

Output format

The output CSV has BirdNET's standard columns:

File name,Start (s),End (s),Scientific name,Common name,Confidence
recording_001.wav,0.0,3.0,Phoenicopterus roseus,Greater Flamingo,0.8734
recording_001.wav,3.0,6.0,Bostrychia hagedash,Hadada Ibis,0.7521

Notes

  • This package is inference-only. It does not include training, data fetching, or segmentation.
  • Species filtering is controlled only by the user-provided allowed_species.txt. There is no zoo-specific configuration.
  • Model binaries are hosted as GitHub Release assets to keep the pip package small.
  • Python 3.10 is not supported because birdnet-analyzer requires ≥3.11.

License

Apache-2.0

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

aria_inference_birdnet-0.1.2.tar.gz (19.2 kB view details)

Uploaded Source

Built Distribution

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

aria_inference_birdnet-0.1.2-py3-none-any.whl (19.9 kB view details)

Uploaded Python 3

File details

Details for the file aria_inference_birdnet-0.1.2.tar.gz.

File metadata

  • Download URL: aria_inference_birdnet-0.1.2.tar.gz
  • Upload date:
  • Size: 19.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for aria_inference_birdnet-0.1.2.tar.gz
Algorithm Hash digest
SHA256 804943354d73f34aeb8b695ce2ce3d568e1c28e18734f961ddb490e7c508d4c4
MD5 86c0bfdedc6e2acd282425e96213b7af
BLAKE2b-256 c5732e8de58fca049fe61f302ad5494ce7f4fbf5892d32e3ac2c924f9f4d2f33

See more details on using hashes here.

File details

Details for the file aria_inference_birdnet-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for aria_inference_birdnet-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a1fa3ea393927618b13e46b0df6360595400752ec2dae97973300d9771a2279e
MD5 8839446afa1c609bd6d927ee7d4723a9
BLAKE2b-256 af64a32fb1b8fb8e46b07ac696c35b83b56ec6644598d328bcafbaf61f93ccbc

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