BirdNET (-PI)

Hi, I just stumbled on this. I am running Birdcage on Unraid. If I understand this correctly, if I install this add-on I no longer need Birdcage - that this moves the functionality within Home Assistant? Thanks.

1 Like

Yes exactly - it is the full fledged birdnet-pi right from within homeassistant. It works on aarch64 and x86 systems (tested on VM & rpi4)

1 Like

Thank you for making BirdNET-Pi (& BirdNET Go) available as an Home Assistant add-on @alexbelgium .

I got it installed and running last night without issues onto my Pi 4, with rtsp audio stream from my cctv camera microphone.

1 Like

FYI: BirdNET-GO uses a whole lot less host resources than BirdNET-Pi.

1 Like

Hi, indeed I’ve ran both in parallel in my rpi4 and my observation is that birdnet pi takes around 2 seconds per analysis while birdnet go around 0.5s. Also, birdnet pi induces regular cpu spikes.

However the ui is currently so much more developed that I have been using birdnet pi only for around a month : for example to be able to delete false positives ; change observations ; perform species analytics ; link to ebird … There is also an active development ongoing on a fork to continue adding new feature (dark mode, species detection change,…). A key element is that it is easy to tweak and modify as an add-on with its php/sh/py structure while go is very inflexible in terms of on-the-fly upstream app adaptation as I often do.

It is a very lucky situation indeed to be able to have both in coexistence and I wish all the best to the go version to also continue on its ui and functions dev! I see for example that he has recently added flexible threshold which is a great idea

The developer who started BirdNET-GO has said that they are not good with designing frontends. However there is another developer contributing to that side of things now so we should see some interface improvements soon.

1 Like

So far BirdNET-Pi hasn’t caused any dramatic CPU spikes… are you suggesting to run BirdNET-Go instead?
The one large spike was BirdNET-Pi’s update in the last 24 hours. Other spikes from other updates.

My question at this point (since you are on here alexbelgium) is how/where do I set the maximum number of recordings? Or a maximum allocated storage amount.
(Or would it be better to mount a USB into my Pi 4 and move to that disk?)

1 Like

Probably ok on the pi4.

It basically locked up my pi3b with resource use. Where as the GO version ran perfectly.

2 Likes

Hi for me on rpi4 birdnet-pi runs super smoothly but i see those cpu spikes. I wonder know what is wrong on my system as it doesn’t seem linked to the add-on itself from your graph!

There is a cron that monitors disk usage and deletes files to avoid it being filled up but there is no way to define a fixed limit yet… I’ll think about it :slight_smile: I’m storing the files on an external USB also, that way if the disk fills up it doesn’t block my HA :wink:

I’m already working on several PR for birdnet-pi but will move on to that one too :slight_smile:

1 Like

I have looked into this slightly… is it a pain in the bum to mount a drive into HA OS… as I have seen online? [SOLVED] Mount USB drive in Hassio to be used on the Media Folder with udev customization
I’m not versed in all the Linux stuff for HA sorry.

Ahah I use my own system. In the localdisk option of my add-on just type the physical (ex: sda1) or label name of your drive and it will be mounted. The list of usable drives is listed when the add-on starts. It will then be mounted (for example) to /mnt/sda1

Ps : just for clarity, it is not that mine is better than HA, just that I implemented it 2 years before the official feature came so I just continue for consistency

1 Like

Is this within ‘mnt’ of Filebrowser add-on? I’m sorry I’m this clueless :sweat_smile:.

Hi, here is my (quite basic) wiki : Add ons feature : mounting drives · alexbelgium/hassio-addons Wiki (github.com) hope it will indicate you the right way! It only mounts the drive in the addon itself, so the same option must be filled in all addons that should access the local drive (such as Filebrowser)

In terminal using ls /dev I see sda1 for my USB drive.

Do I add localdisks: sda1 to the addon_configs/db21ed7f_birdnet-pi/birdnet.conf file…?

I’ve just done it with Filebrowser and restarted.
env.py file now shows os.environ['localdisks'] = 'sda1' and the ERROR file mentions many line breaks in the Filebrowser config file.
File browser does not show anything under mnt folder.

/Edit
It says in the BirdNET-Pi docs… I should read that bit.

localdisks: sda1 #put the hardware name of your drive to mount separated by commas, or its label. ex. sda1, sdb1, MYNAS...
cifsusername: "username" # optional, smb username, same for all smb shares
cifspassword: "password" # optional, smb password
cifsdomain: "domain" # optional, allow setting the domain for the smb share
1 Like

Is it working? Then you set your birdsong folder to something like /mnt/sda1/birdnet

1 Like

I think so. Now there’s a banner for processing. I’ll get back to it in a while.


Not a good sign you should go look in your services if it hasn’t stopped

Services have stayed the same as previously an hour ago.
Every recording cannot be found. Using Filebrowser I can still see all the recordings in the Pi’s SD card (File explorer still isn’t showing the mounted USB).
CPU usage for the addon is sitting at 0.3% & 13% RAM during this.

Edit #2.
I completely nuked it. Seems to have bounced back and registering sda1 as storage medium. Just to wait for birds in the morning and test it.

Lot of wind noise at the moment on the mic.

[mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9416959
[mp3 @ 0x55a37a85f0] [mp3 @ 0x55a37a85f0] [mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9420511
[mp3 @ 0x55a37a85f0] [mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9422815
[mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9423855
[mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9424991
[mp3 @ 0x55a37a85f0] [mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9428495
[server][INFO] DONE! Time 0.88 SECONDS
[server][INFO] 0.0;3.0-('Arenaria interpres_Ruddy Turnstone', 0.091715746)
[mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9429631
[mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9430847
[server][INFO] 3.0;6.0-('Carduelis carduelis_European Goldfinch', 0.028944254)
[mp3 @ 0x55a37a85f0] [mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9440063
[mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9444703
[mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9459679
[mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9461855
[mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9463135
[mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9464271
[mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9465359
[mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9467663
[mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9470031
[mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9471167
[mp3 @ 0x55a37a85f0] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 9843807 >= 9472255
1 Like

If you connect your BirdNET monitor (pi or GO) to Birdweather you may be interested in this dashboard project:

Also as this feature request for an addon has been solved please conduct further discussion in the configuration category here: BirdNET disussion

You may not know this but you only have a limited number of feature request votes (though the setting is quite high). Closing the feature request releases your vote to be used elsewhere.

2 Likes