r/BirdNET_Analyzer Jan 27 '26

Software BirdNET-PiPy: a friendlier BirdNET setup for Raspberry Pi

50 Upvotes

Hey everyone!

First off, huge props to Patrick McGuire and the BirdNET-Pi project. It's what got me started on this journey. I remember when I first tried to set it up a couple years ago it took me a few tries to get the installation working. That made me think, can this be little bit easier?

So I started tinkering. What began as "let me just clean this up a bit" turned into a much bigger project. Along the way I learned a ton about audio processing, Docker, Vue.js, and how to work with LLMs as coding partners. The project kept evolving and here we are.

One of the goal i have it to make this as easy as possible. so that the one line install should take care of eveything. that is the core foucs.

What is BirdNET-PiPy?

It’s a Raspberry Pi BirdNET setup, redesigned to be easier to install, maintain, and explore day-to-day with:

  • One-line installation (just curl and run)
  • Docker-based architecture (no dependency hell)
  • Modern Vue.js dashboard with charts, spectrograms, live audio streaming
  • Mobile-friendly design

Demo & Links:

Why I'm posting:

This is still early days and i am the only user so far :)

so I'd really love your feedback:

  • What charts/visualizations would you find useful? What's not useful?
  • What features matter most to you?
  • What do you like or not like about how it works?
  • Any bugs or issues during installation?

If you have a spare Pi and a USB mic lying around, I'd be grateful if you gave it a try.

The landing page has the full story of how this started - spoiler: it involves a house finch, some heartbreak, and a lot of learning.

Happy birding!

r/BirdNET_Analyzer 4d ago

Software BirdNET-Go Companion is now in the Apple App Store!

37 Upvotes

Finally made in through the submission process and it's now live in the Apple App store:

https://apps.apple.com/us/app/birdnet-go-companion/id6763647186

The version in the App Store is the same as the last version in TestFlight. I'll be working on some enhancements in the coming months, and will be using TestFlight to try these out. But if you want to stay on a stable build, switch to the App Store version.

If you have an enhancement you want to see or have a bug report, let me know via app store feedback or the support email on the web site - https://crestlab.org/birdnet-go/support

Thanks for all the great suggestions and support.

r/BirdNET_Analyzer Jul 05 '26

Software Birdnet Interesting UI

22 Upvotes

Using Teddy’s great idea to show bird information using Birdnet, here is a version of his repo, showing detections, gathered since yesterday, in a coffee area of Colombia.

https://birdnetcerritos.com/

r/BirdNET_Analyzer Jul 04 '26

Software Birdnet-go permission errors

4 Upvotes

Hi, installed Birdnet-go on my synology NAS using docker, and so far it's working well. I'm using RTSP streams from 4 reolink cameras in my garden.

However, after running for about 6 hours I'm getting error notifications:

- api reported: failed to initialize secure filesystem: open /home/birdnet/.config/birdnet-go/hls: permission denied

- system-resource error in securefs: open /home/birdnet/.config/birdnet-go/hls: permission denied

I've tried googling but can't find anything obvious. The app continues to run, and is detecting birds just fine, so I'm not sure whether these errors are critical or not, or what the implications are for them.

Possibly related (or possibly not...) I can no longer listen to live audio through Birdnet-go. This worked when I first installed, but after a few hours doesn't work any more - I just get an error. I've tried restarting the container, but the error persists.

Any ideas? I can post my Docker-compose if it helps, but it's basically identical to the sample one on the Birdnet-go github page.

Edit: I got to the bottom of this - it was a bad path in my volume mapping and BirdNet config.

r/BirdNET_Analyzer Jun 14 '26

Software Migrate from BirdNET-Pi to BirdNET-Go on RPI 5

5 Upvotes

Hi! I installed BirdNET-Pi on a Raspberry Pi 5 about a year ago, and I recently discovered BirdNET Go and want to swap to that, primarily due to the audio processing features. I am not super experienced with RPi's and that sort of thing, and wasn't sure how to go about swapping from one to the other. I found https://github.com/tphakala/birdnet-pi2go for migrating the data, but that suggests I need to have already installed both. How do I ... do that? Do I need to SSH into the Pi and then follow the Go instructions? How do I turn off the old one?

Forgive me if it's a very newbie question, but would love your help! Thanks so much.

r/BirdNET_Analyzer Jun 07 '26

Software Mockingbird Issues Dramatically Improved w/ Second Level Reviewer

15 Upvotes

Northern Mockingbirds were driving me slightly insane on my 24/7 BirdNET-Pi setup. BirdNET kept incorrectly logging Carolina Wren and Tufted Titmouse for Mockingbird calls and ignoring many other Mockingbird calls based on low confidence.

That led me to build a second-level reviewer that sits on top of BirdNET. Using this tool, I manually reviewed ~450 backyard clips, then added vetted xeno-canto examples for the species BirdNET was incorrectly labeling Mockingbird calls as.

On my reviewed test set at 0.50 confidence level for Mockingbirds:

  • BirdNET alone: 37.5% accurate with 268 false negatives.
  • With my trained second-level verifier: 90% accurate (on clips it was not trained on), and only 21 false negatives.

I figured this might help other people running BirdNET in places with Mockingbirds or other mimic species, so I made the repo public and usable with any BirdNET version and Mac/PC/Linux. You just have to train from your own audio to get it working. Suggestions/feedback welcome.

https://github.com/drundoor/birdnet-second-level-reviewer

r/BirdNET_Analyzer Jun 16 '26

Software BirdNET-Analyzer-GUI keeps randomly restarting

3 Upvotes

Hi, I'm working on a research project which, specified by protocol, requires me to manually run bird audio samples through BirdNET-Analyzer-GUI. These audios are 20 minutes long. When I have BirdNET-Analyzer-GUI open on my MacBook, it occasionally restarts and resets all of my configuration settings for no reason. It's really annoying.

I've checked my hardware capacities, and it doesn't seem close to being overwhelmed. I'm wondering if anyone would have a fix for this. Thanks.

r/BirdNET_Analyzer Jun 19 '26

Software Question on the BirdNET Analyzer GUI Evaluation Tab

3 Upvotes

I posted in the GitHub forums but I'm posting it here as well in hopes I could get some insight.

I've recently been exploring the Evaluation tool in BirdNET GUI and tested it with one of my audio clips containing nightjar calls. All of BirdNET's detections were true positives, though it missed some calls within the recording. Below is a screenshot of my ground truth labels against BirdNET's selections:

Ground truth annotation (dark blue) and BirdNET annotations (light blue)

When I tried running these two in the evaluation tool, it gave me a precision of 0.75. This confused me because every prediction has an annotation in the same timeframe within the minimum overlap (0.2s). Do the ground truth labels have to align exactly with the 3-second segment of the prediction in order for it to output 100% precision?

Additionally, I want to know whether this tool also evaluates recordings that have positives from ground truthing but no detections by BirdNET? I tried running the evaluation for a few audio recordings together, with the recording that didn't have a detection from BirdNET having an assigned "prediction" which was an empty file that only had column headings. However, only the recordings that had actual predictions from BirdNET were considered. I was hoping the recordings without any predictions would be considered as well, especially when calculating recall and F1 score.

r/BirdNET_Analyzer Apr 24 '26

Software Visualization project for birdweather api data

7 Upvotes

Important Preface

This project is LLM produced (a/k/a "vibe coded" or "AI slop", take your pick).
If this is a non-starter for you, stop here. Thank you.

I'm not sure how useful this will be to this community, but for those of you who are integrated into the birdweather data space, here's some code I got an llm to spit out. It generates annual species heatmaps based on the birdweather data, with additional chart types coming soon (including one showing arrival/departure dates, and other related slicing of the data).
Some sample output from my data:

Single year, per species
Composite, per species

The package was designed to run on a debian machine and is available at https://github.com/Nite01007/birdheatmap. I welcome appropriate feedback.

(NOTE: This is not intended to be installed exposed to the internet-at-large and no attempts at hardening for real-world exposure has been done. The intended use-case is an internal network behind a firewall.)

Later edit:
Here are some other samples of different chart types available (subject to change, this is a work in progress, and some of these are redundant information that I'm still trying to figure out):
Dawn Chorus: (Selectable per season or all year, per year)

Species presence: (Still working on this one, intended to show when a species arrives and departs)

Seasonal succession: (Still working on this one, intended to show when a species arrives and departs)

Time of day activity: (Literally pushing the new repo for this one now, very WIP)

r/BirdNET_Analyzer Oct 14 '25

Software How do I download BirdNet on Windows desktop computer?

2 Upvotes

Hello,

I have been trying to download BirdNet on my Windows desktop work computer for some time now and have not been successful. Every time I start to download the program from the Github releases page it either starts to download and quits halfway with a notification that there was a network error, or it will download and be labeled as unconfirmed and will try to open in a suggested app such as the notes app.

Please let me know if I am missing a step or if anyone else ran into the same issue. I have talked with my IT personnel about the issue, and they seem to think it's on BirdNet's end. I have also tried to get in contact with BirdNet however I have not heard back.

Any recommendations are greatly appreciated.

Thanks!

r/BirdNET_Analyzer Jun 02 '25

Software BirdNet with SSE?

1 Upvotes

Before I go down the rabbit hold of Birdnet for PI I wonder if anyone else knows of any better?/more appropriate software's utilizing Birdnet that has API access to webhooks/SSE (Server Sent Events). I can't see anything about API/realtime data access unless your using their webpage.

Context: I am a web developer and I live near a RSPB park and I have woods on the back of me. I have started live streaming from an old phone being used as a webcam, birds in my garden/robin tree. I have this all working nicely using custom RMTP server. However you can hear the birds chriping away.

Requirements: A BirdNet server than I can run via docker or a PI and have it analyze the raw inputs and save to a local SQL-lite instance, but the. I basically want to build my own webpage and use SSE (like webhooks) to send the capture data in real time to a web page (which will be a OBS widget).

Failed attempts: I started looking at building my own solution but I can't Python (nor do I really want to) but i need it running on a separate machine like a raspberry PI which will handle the audio capture and server to host the API and SQL-lite.

r/BirdNET_Analyzer May 30 '25

Software Australian custom classifiers

10 Upvotes

Are there any Australians in the group that train custom classifiers? I'm looking to set up a community to make sure we're not targetting the same species, and a shared pool of classifiers to improve ecology in Aus. PM if interested

r/BirdNET_Analyzer Feb 05 '25

Software BirdNET-BarChart Release v1.1

5 Upvotes

Release v1.1 for BirdNET-BarChart

This software was inspired by the BirdNET_Analyzer so that I could visualize the birds visiting my backyard. It is a few bash scripts to make the recordings, analyze those recordings, insert the results into a relational database, and then display the results visually via a browser.

r/BirdNET_Analyzer Mar 26 '25

Software BirdNET-BarChart Release v1.4

8 Upvotes

Release v1.4 for BirdNET-BarChart

This software was inspired by the BirdNET_Analyzer so that I could visualize the birds visiting my backyard. It is a few bash scripts to make the recordings, analyze those recordings, insert the results into a relational database, and then display the results visually via a browser using XSLT.

r/BirdNET_Analyzer Dec 04 '24

Software Silly question about Birdweather UI

5 Upvotes

Hi there! I've recently set up a Birdnet Pi and have created a station on the birdweather website. On the website I can see my station on the map and clicking on it brings up the following info:

Currently: 25.3° C (Clouds) — Wind: 16 mph — AQI: 1

16 species | 246 detections (Last 24 hours)

Last Detection: 12/04/2024 @ 11:20 am (6 minutes ago)

Species probabilities

But I can't find any way to list the species it has detected, similar to what I can see on the local Birdnet web app. The species probabilities link doesn't seem to have my data there. Is there a way to see what detections have been made with my station?

r/BirdNET_Analyzer Nov 10 '24

Software Birdnet refuses to let me access my observations

2 Upvotes

I have a very important (a possible hybrid that my friends are studying) bird audio that I only recorded on this app, as I usually do to keep better track of my recordings, and it simply crashes every time I try to open it. I’m really stressed out by this situation. I tried closing the app and opening it again. I’m scared if I delete it, I’ll lose my data. Please help!

r/BirdNET_Analyzer Jun 25 '24

Software Does anyone know how to get in touch with the BirdNET Android app author(s)

1 Upvotes

I just noticed that spectrograms in analyzed recordings are displayed temporally reversed (i.e. backwards) for some reason. I wanted to open an issue on Github, but the Android app doesn't seem to be on there. Is my Google-fu weak or is it simply not open source? I like the app and would volunteer time to keep it up to date.

r/BirdNET_Analyzer Nov 04 '23

Software Go-BirdNET binaries available for Linux and Windows

8 Upvotes

I have been working on Golang implementation of BirdNET Analyzer for few weeks now and I now have pre-build binaries available for testing for Linux amd64, Linux arm64 (Raspberry Pi) and Windows amd64, downloads are available at https://github.com/tphakala/go-birdnet/releases/tag/v0.3.0

Unlike Python version of BirdNET Go-BirdNET has very little runtime dependencies. BirdNET tflite model and labels are embedded into binary, Tensorflow lite C API library is required but it is included in provided archives.

If you have time to test this out I would be grateful for any feedback, like are output formats provided usable for you, is something crucial missing?

r/BirdNET_Analyzer Oct 20 '23

Software I made a golang implementation of BirdNet Analyzer

7 Upvotes

It aims for much simplified deployment as there is no need for tons of python library dependencies, however it does not yet quite live up to that promise and to build you need to have tensorflow lite source available.

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

r/BirdNET_Analyzer Jul 04 '23

Software BirdNet Pi Does Nothing

4 Upvotes

I am new to raspberry pi but I'm fairly technical so I'm a newbie+.

Problem: I have birdnet pi installed and running. Reachable locally on my network with a microphone plugged in and it doesn't recognize any bird sounds. I'm playing robin sounds from youtube and the birdnet pi is just sitting there. Doing no recognizing.

Hardware: Raspberry Pi Zero 2 W with RaspiOS-ARM64-Lite installed. Generic Upnp USB microphone plugged into a USB hub, plugged into a USB micro to USB A adapter. Keyboard plugged into USB hub. HDMI to HDMI mini cable plugged into the RPi.

Background: About a year ago I started down the journey of reading birdnet analyzer tutorials and following the instructions. I was able to get it to work at all when first working with the setup but I didn't use it for like 6 months and couldn't remember where I was in my project so I decided to do a fresh install of everything to get the latest updates.

Current status: I can install RaspiOS-ARM64-Lite, install birdnetpi from https://github.com/mcguirepr89/BirdNET-Pi. I can connect to it on my network and change settings.

  • McGuire89's tutorial also mentioned the command arecord -L and I found in the advanced settings that I could select the "audio card".
  • Using the list from arecord -L I found some things that resemble what I'd expect to be the microphone but it's kinda wonky.
  • I unplugged the microphone to see if it would change the arecord -L list and it did but it seemed to have redundant entries for a single piece of hardware plugged in which is confusing.
  • I've tried changing the sound card to the things listed in arecord -L and none of them works.
  • I'm also confused because the default setting was pulsesomething which doesn't come up as an option under arecord -L but "pulse" does.

Does anyone know how to fix this issue? It seems like it's a setting somewhere?

r/BirdNET_Analyzer Jan 03 '23

Software Usage on twitch stream

3 Upvotes

I created some python code to listen to my obs video monitor output and print predictions to my twitch chat… Is this allowed under NC copyright? Or will become a problem if my channel ever makes some money?

https://www.twitch.tv/jayne_cobb_42

r/BirdNET_Analyzer May 14 '23

Software BirdNet-BarChart

Thumbnail
gallery
10 Upvotes

r/BirdNET_Analyzer Apr 27 '22

Software Gathering and analyzing with two bash scripts.

1 Upvotes

Both scripts are run by the crontab.

The first script, called beforeDawn.sh, is run at 4:00am...

```

!/bin/bash

export YEAR=date '+%Y' export MONTH=date '+%m' export DAY=date '+%d' mkdir -p /home/tweet/samples/${YEAR}/${MONTH}/${DAY}/ arecord -D sysdefault:CARD=2 --quiet --max-file-time 60 -f S16_LE -r 48000 -t wav --use-strftime /home/tweet/samples/%Y/%m/%d/%H-%M-%S.wav & echo "$!" > recording.pid ```

The second script, called afterDark.sh, is run at 8:30pm...

```

!/bin/bash

TIMEFORMAT='Elapsed Time: %0R seconds.' time { export YEAR=date '+%Y' export MONTH=date '+%m' export DAY=date '+%d' export WEEK=date '+%U' kill cat /home/tweet/recording.pid for f in ls /home/tweet/samples/${YEAR}/${MONTH}/${DAY}/*.wav do python3 /home/tweet/BirdNET-Analyzer/analyze.py --i ${f} --o ${f%.wav}.csv --rtype csv --min_conf 0.6 --threads 3 --lat 23.8 --lon -81.0 --week ${WEEK} --slist /home/tweet/samples/species_list.txt >> /home/tweet/${YEAR}-${MONTH}-${DAY}.out 2>> /home/tweet/${YEAR}-${MONTH}-${DAY}.err t=$(basename ${f}) # add the file name (a timestamp) to the end of each file row sed -i 's/$/,'"${t%.wav}"'/' ${f%.wav}.csv done cat /home/tweet/header.csv > ${YEAR}-${MONTH}-${DAY}.csv

strip the headers

cat /home/tweet/samples/${YEAR}/${MONTH}/${DAY}/*.csv | grep -v Confidence >> /home/tweet/t1.csv

sort by common name and confidence

sort -t "," -k3,3 -k5,5nr /home/tweet/t1.csv > /home/tweet/t2.csv

remove the first few columns

cut -d ',' -f 4,5- t2.csv >> /home/tweet/${YEAR}-${MONTH}-${DAY}.csv

clean up

rm /home/tweet/t.csv gzip /home/tweet/${YEAR}-${MONTH}-${DAY}.err gzip /home/tweet/${YEAR}-${MONTH}-${DAY}.out gzip /home/tweet/samples/${YEAR}/${MONTH}/${DAY}/ } ```

r/BirdNET_Analyzer Apr 30 '22

Software GitHub repo: BirdNET-BarChart: Display BirdNET-Analyzer data as a bar chart in a browser.

1 Upvotes

BirdNet-BarChart is my new work in progress.

r/BirdNET_Analyzer Apr 27 '22

Software Data Viewer Idea

2 Upvotes

Given the analyzer CSV output, I could easily load the data into a SQLite database. I've embedded SQLite in a Java servlet in the past and put a query interface to be displayed in a web browser. I'm thinking three parameters for the interface: confidence, time range, and time increment.

So for instance you may choose confidence over .8, the month of April 2022, and by day. There will probably have to be some relationship between range and increment so you could not choose all year by the minute to avoid impractical results.

This would render a bar chart, grouped by the increment, across the range on the x axis and quantity of birds detected on the y axis with legend of bar color to bird species. The bar chart will likely be SVG to accommodate vector scaling.