-
Notifications
You must be signed in to change notification settings - Fork 18
Preferences
You've got the software running. Now its time to set up your preferences. If something goes awry, see the troubleshooting section below.
First, open up a browser and go to http://youripaddress:7008. You should see the front page of the app, but there won't be any recent detections or anything listed in the detections summary.
Now, go to the Settings menu, and select Preferences. You'll be greeted by a Login page. The user name is "admin", and the default password is "birdcage". You'll then get to a page much like this one:
Set these values. Here's what they all mean:
- Recording Length: The application will record clips of this length from each of your audio sources to be passed into the model for analysis. There is some lost time between recordings so recording n+1 might start a second or two after recording n. So, if this is too short, there will be more lost time as compared to recorded time. If it is too long, you might lose some detections because the analysis engine only reports back 5 at most. The analysis engine chops the recordings into 3 second chunks, so it is best to make this a multiple of 3.
- Confidence: When the analysis engine detects a bird song, it associates a confidence score between 0 and 1 with the detection. This preference value is the confidence at which the app considers a detection a detection. The lower you set this value, the more detections you'll get, but you'll get more false positives. The higher you set this value, the better your detections will be, but you'll get more false negatives.
- Extraction Length: When there is a positive detection, a recording is stored (depending on filter settings which will be described in another page). Extraction length sets the length of the stored recording. If it is 10 seconds, the app will attempt to store the 3 second chunk in which the bird was detected plus 3.5 seconds before and 3.5 seconds after, giving a total recording time of 10 seconds. If the detection is at the beginning or at the end of the recording, then the before part or the after part will be missing.
- Latitude and Longitude: Your location in the world. The assumption currently is that all audio streams are from approximately the same location. You can look up your latitude and longitude here: https://www.latlong.net/
- Overlap: As mentioned, the analysis engine chops recordings up into 3 second chunks. This setting allows the chunks to overlap one another. Setting some overlap will provide more detections, but will also allow for double detections.
- Sensitivity: This value is passed on to the analysis engine. If anyone knowledgeable about about BirdNET-Analyzer can explain what this does, I'd love to know.
- SF Threshold: The analysis engine takes into account your latitude and longitude and the time of year when determining what species of birds it is hearing. This value determines the degree to which it should allow for unusual species. The lower the number, the more it will allow for oddball species when doing its detections.
- Locale: The language used for common names in analysis results. The UI is just in English.
- Recording Retention: How long to keep recordings of detected birds. Once a day the application looks for recordings older than this and deletes them.
- MQTT Settings: If you want to publish MQTT events when birds are detected, set the address, port, user name and password needed to connect to your MQTT broker. If you leave MQTT Broker blank, nothing will be published. If you leave User Name blank, no authentication will be used. There is more about the MQTT topic structure in another page.
- Publish Recordings? Set to true if you want MQTT events to include the recording of the detection, false if not.
Hit Set Preferences when you have these values the way you want them. No need to hit "Apply Preferences..." now since we haven't set up any streams yet.
Now would be a good time to change the admin password in the section below.
Did the above not work?
See if you can go to whatever you set as your API_SERVER_URL in your browser. You should see a (very incomplete) UI of API documentation. If not, the back end / API server is not exposed to the network correctly or the docker-compose file isn't configured correctly. Or both.
If that works, go back to the Preferences page, hit F12 and see if there are any client side scripting errors. All of the API calls are done in client side scripting in the browser to keep things snappy. If you are accessing the Web UI through a name via a reverse proxy, that name needs to be added to the CORS_ORIGINS environment variable in docker-compose.yml, you need to set a name for the back end/API server, and that name needs to be specified in the API_SERVER_URL environment variable in docker-compose.yml.
Still not working? Open an Issue or start a Discussion. Someone will be along shortly to help.