Skip to content
Tomi P. Hakala edited this page Dec 17, 2023 · 14 revisions

BirdNET-Go Guide

BirdNET-Go is a application inspired by BirdNET-Pi and BirdNET Analyzer, it aims to be high performance and simple to deploy alternative for both of these.

BirdNET-Go features

  • Audio analysis based on BirdNET 2.4 tflite model
  • Runs on Windows, Linux (inc. Raspberry Pi) and macOS
  • File analysis support for WAV files
  • 24/7 realtime analysis of soundcard capture
  • Analysis output to Raven table, csv file, SQLite or MySQL
  • Realtime analysis output compatible with OBS chat log input for wildlife streams
  • Birdweather API support on realtime analysis
  • Localized species labels thanks to translations by @patlevin
  • Minimal runtime dependencies, BirdNET TensorFlow Lite model is embedded in executable

Supported platforms

BirdNET-Go has been tested to work on

  • Raspberry Pi 3B+ with 512MB RAM
  • Raspberry Pi 4B with 4GB RAM
  • Intel NUC running Windows 10
  • Intel desktop PC running Windows 11
  • Intel MacBook Pro

For 24/7 realtime detection Raspberry Pi 3B+ is more than enough, it can process 3 second segments in ~500ms.

BirdNET tflite model does not support TPU accelerators such as Coral.

Installation

Pre-compiled BirdNET-Go executables are available at https://github.com/tphakala/birdnet-go/releases/, unzip birdnet-go in any directory you wish to run it in, on Windows for example c:\users\username\birdnet-go.

In addition to BirdNET-Go executable you also need TensorFlow Lite C library which is available for download at https://github.com/tphakala/tflite_c/releases. Download library for your target platform and install it in proper library path for your system

  • On Linux copy libtensorflowlite_c.so to /usr/local/lib and run "sudo ldconfig"
  • On macOS libtensorflowlite_c.dylib to /usr/local/lib
  • On Windows copy libtensorflowlite_c.so to BirdNET-Go executable directory or any other directory in system PATH

Configuration

BirdNET-Go accepts several settings from command line but main configuration method is through configuration file which is created when birdnet-go is first run

Configuration file location is operating system depended and there is alternative locations for user preference.

On Linux and macOS default and primary location for configuration file is $HOME/.config/birdnet-go/config.yaml for user specific deployment, alternative location is /etc/birdnet-go/config.yaml for system wide deployment.

On Windows default and primary configuration file location is config.yaml in birdnet-go.exe installation directory, secondary location is C:\User\username\AppData\Local\birdnet-go\config.yaml

Clone this wiki locally