birdnet-go

Realtime BirdNET soundscape analyzer

https://github.com/tphakala/birdnet-go

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.1%) to scientific vocabulary

Keywords

artificial-intelligence audio bioacoustics birdnet birdnet-pi birds birdweather contributions-welcome go golang linux raspberry-pi raspberrypi svelte tailwindcss tensorflow wildlife

Keywords from Contributors

hack autograder standardization interpretability sequences projections interaction meshing report actions
Last synced: 5 months ago · JSON representation

Repository

Realtime BirdNET soundscape analyzer

Basic Info
  • Host: GitHub
  • Owner: tphakala
  • License: other
  • Language: Go
  • Default Branch: main
  • Homepage:
  • Size: 178 MB
Statistics
  • Stars: 545
  • Watchers: 16
  • Forks: 40
  • Open Issues: 116
  • Releases: 81
Topics
artificial-intelligence audio bioacoustics birdnet birdnet-pi birds birdweather contributions-welcome go golang linux raspberry-pi raspberrypi svelte tailwindcss tensorflow wildlife
Created over 2 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Funding License Support Authors

README.md

BirdNET-Go



BirdNET-Go is an AI solution for continuous avian monitoring and identification

  • 24/7 realtime bird song analysis of soundcard capture, analysis output to log file, SQLite or MySQL
  • Utilizes BirdNET AI model trained with more than 6500 bird species
  • Local processing, Internet connectivity not required
  • Easy to use Web user interface for data visualisation
  • Supports over 40 languages for species names
  • Advanced features like Deep Detection for improved accuracy and Live Audio Streaming.
  • BirdWeather.com API integration
  • Realtime log file output can be used as overlay in OBS for bird feeder streams etc.
  • Minimal runtime dependencies, BirdNET Tensorflow Lite model is embedded in compiled binary
  • Provides endpoint for Prometheus data scraping
  • Runs on Windows, Linux and macOS
  • Low resource usage, works on Raspberry Pi 3 and equivalent 64-bit single board computers

Installation

Quick install script for Debian, Ubuntu and Raspberry Pi OS based systems:

bash curl -fsSL https://github.com/tphakala/birdnet-go/raw/main/install.sh -o install.sh bash ./install.sh

Web Dashboard

For detailed installation instructions, see the installation documentation. For securing your BirdNET-Go installation, see the security documentation. See recommended hardware for optimal performance.

Building

For instructions on how to build the project, see the building documentation.

Usage

```bash BirdNET-Go CLI

Usage: birdnet-go [command]

Available Commands: authors Print the list of authors benchmark Run performance benchmark directory Analyze all *.wav files in a directory file Analyze an audio file help Help about any command license Print the license of Go-BirdNET rangefilter Manage the range filter database realtime Analyze audio in realtime mode support Generate a support bundle

Flags: --debug Enable debug output -h, --help help for birdnet --locale string Set the locale for labels. Accepts full name or 2-letter code. (default "finnish") --overlap float Overlap value between 0.0 and 2.9 (High values like 2.7 enable Deep Detection) --sensitivity float Sigmoid sensitivity value between 0.0 and 1.5 (default 1) --threshold float Confidency threshold for detections, value between 0.1 to 1.0 (default 0.8)

Use "birdnet [command] --help" for more information about a command.

There is more detailed usage documentation at Wiki

License

Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International

Authors

Tomi P. Hakala

Contributions by Hampus Carlsson, Jan Vrska, @twt--, @aster1sk, @hoover67

Please let me know if you are missing from contributors list!

BirdNET AI model by the K. Lisa Yang Center for Conservation Bioacoustics at the Cornell Lab of Ornithology in collaboration with Chemnitz University of Technology. Stefan Kahl, Connor Wood, Maximilian Eibl, Holger Klinck.

BirdNET label translations by Patrick Levin for BirdNET-Pi project by Patrick McGuire. ```

Owner

  • Name: Tomi P. Hakala
  • Login: tphakala
  • Kind: user
  • Location: Finland

GitHub Events

Total
  • Fork event: 22
  • Create event: 475
  • Commit comment event: 2
  • Release event: 65
  • Issues event: 326
  • Watch event: 258
  • Delete event: 239
  • Issue comment event: 1,253
  • Push event: 1,497
  • Gollum event: 19
  • Pull request review event: 1,163
  • Pull request review comment event: 2,861
  • Pull request event: 853
Last Year
  • Fork event: 22
  • Create event: 475
  • Commit comment event: 2
  • Release event: 65
  • Issues event: 326
  • Watch event: 258
  • Delete event: 239
  • Issue comment event: 1,253
  • Push event: 1,497
  • Gollum event: 19
  • Pull request review event: 1,163
  • Pull request review comment event: 2,861
  • Pull request event: 853

Committers

Last synced: 6 months ago

All Time
  • Total Commits: 3,096
  • Total Committers: 25
  • Avg Commits per committer: 123.84
  • Development Distribution Score (DDS): 0.073
Past Year
  • Commits: 2,488
  • Committers: 16
  • Avg Commits per committer: 155.5
  • Development Distribution Score (DDS): 0.055
Top Committers
Name Email Commits
Tomi P. Hakala t****a@p****i 2,870
dependabot[bot] 4****] 102
Hampus Carlsson c****9@g****m 58
Petteri Ponsimaa p****p@g****m 22
github-actions[bot] 4****] 8
Kyle Niewiada k****a@g****m 4
Phaeton 8****n 4
Tomi P. Hakala t****a@e****i 3
Chris Kalafarski c****s@f****m 3
Pete Lawrence p****e@c****k 2
Joel Krauska j****a@g****m 2
Sean Kelly s****n@g****m 2
geekworldtour g****e@g****m 2
claude[bot] 2****] 2
Christopher Kalafarski f****i@m****m 2
Fabio Guedes f****s@g****m 1
Floris 4****e 1
Leonardo Colman Lopes d****v@l****r 1
PovilasID 3****D 1
Tim Tickel t****t@c****o 1
coderabbitai[bot] 1****] 1
vivi v****i@p****r 1
Pete Lawrence p****e@o****k 1
Joel Krauska j****a@J****l 1
janvrska 1****a 1

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 316
  • Total pull requests: 1,014
  • Average time to close issues: 26 days
  • Average time to close pull requests: 3 days
  • Total issue authors: 122
  • Total pull request authors: 23
  • Average comments per issue: 1.8
  • Average comments per pull request: 1.23
  • Merged pull requests: 763
  • Bot issues: 8
  • Bot pull requests: 302
Past Year
  • Issues: 237
  • Pull requests: 860
  • Average time to close issues: 5 days
  • Average time to close pull requests: 3 days
  • Issue authors: 106
  • Pull request authors: 15
  • Average comments per issue: 1.7
  • Average comments per pull request: 1.27
  • Merged pull requests: 642
  • Bot issues: 8
  • Bot pull requests: 264
Top Authors
Issue Authors
  • tphakala (88)
  • Lenbok (10)
  • farski (9)
  • aav7fl (8)
  • xconverge (7)
  • PovilasID (6)
  • coderabbitai[bot] (6)
  • tomlut (6)
  • isZumpo (5)
  • matthew73210 (5)
  • jkrauska (5)
  • PeteLawrence (4)
  • HWittingen (4)
  • pack2010 (4)
  • mfortini (4)
Pull Request Authors
  • tphakala (618)
  • dependabot[bot] (231)
  • github-actions[bot] (66)
  • isZumpo (33)
  • aav7fl (10)
  • petterip (9)
  • Phaeton (8)
  • coderabbitai[bot] (5)
  • PeteLawrence (5)
  • farski (4)
  • geekworldtour (4)
  • matthew73210 (3)
  • xconverge (3)
  • Fotguedes (2)
  • vibragiel (2)
Top Labels
Issue Labels
enhancement (38) bug (35) help wanted (6) documentation (3) claude-completed (3) good first issue (2) pkg:diskmanager (2) pkg:telemetry (2) performance (2) dependencies (1) pkg:api (1) pkg:datastore (1) claude-error (1) pkg:testing (1) pkg:myaudio (1) pkg:audiocore (1) pkg:birdnet (1) pkg:analysis (1) pkg:conf (1) pkg:notification (1) automated (1) test-failure (1) already fixed (1)
Pull Request Labels
dependencies (231) enhancement (203) go (102) bug (50) pkg:datastore (4) pkg:telemetry (2) pkg:monitor (1)

Packages

  • Total packages: 1
  • Total downloads: unknown
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 20
proxy.golang.org: github.com/tphakala/birdnet-go
  • Versions: 20
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 9.6%
Dependent repos count: 10.8%
Stargazers count: 11.7%
Average: 12.7%
Forks count: 18.7%
Last synced: 6 months ago

Dependencies

go.mod go
  • github.com/gen2brain/malgo v0.11.10
  • github.com/go-audio/audio v1.0.0
  • github.com/go-audio/riff v1.0.0
  • github.com/go-audio/wav v1.1.0
  • github.com/mattn/go-pointer v0.0.1
  • github.com/smallnest/ringbuffer v0.0.0-20230728150354-35801fa39d0e
  • github.com/tphakala/go-tflite v0.0.0-20231013114437-e78004b1b843
go.sum go
  • 492 dependencies
.github/workflows/docker-build.yml actions
  • actions/cache v4.0.1 composite
  • actions/checkout v4.1.1 composite
  • docker/build-push-action v5.1.0 composite
  • docker/login-action v3.0.0 composite
  • docker/setup-buildx-action v3.1.0 composite
Dockerfile docker
  • debian bookworm-slim build
  • golang 1.22.0-bookworm build
.github/workflows/golangci-lint.yml actions
  • actions/checkout v4 composite
  • actions/setup-go v5 composite
  • golangci/golangci-lint-action v4 composite
.github/workflows/release-build.yml actions
  • actions/checkout v4 composite
  • tphakala/go-release-action master composite
.github/workflows/golangci-test.yml actions
  • actions/checkout v4 composite
  • actions/setup-go v5 composite
  • actions/upload-artifact v2 composite
.github/workflows/nightly-build.yml actions
  • actions/checkout v4 composite
  • tphakala/go-release-action master composite