################################################################################ # Configuration settings for BirdNET as a service # ################################################################################ INSTALL_DATE="$(date "+%D")" #___________The four variables below are the only that are required.___________# ## BIRDNET_USER should be the non-root user systemd should use to execute each ## service. BIRDNET_USER= ## RECS_DIR is the location birdnet_analysis.service will look for the data-set ## it needs to analyze. Be sure this directory is readable and writable for ## the BIRDNET_USER. If you are going to be accessing a remote data-set, you ## still need to set this, as this will be where the remote directory gets ## mounted locally. RECS_DIR= ## LATITUDE and LONGITUDE are self-explanatroy. Find them easily at ## maps.google.com. Only go to the thousanths place for these variables ## Example: these coordinates would indicate the Eiffel Tower in Paris, France. ## LATITUDE=48.858 ## LONGITUDE=2.294 LATITUDE= LONGITUDE= ################################################################################ #------------------------------ Extraction Service ---------------------------# #__________________The variable below can be set to enable the ________________# #______________________________ extraction.service ____________________________# # Keep this EMPTY if you do not want this device to perform the extractions # ## DO_EXTRACTIONS is simply a setting for enabling the extraction.service. ## Set this to Y or y to enable extractions. DO_EXTRACTIONS= ################################################################################ #----------------------------- Recording Service ----------------------------# #____________________The variable below can be set to enable __________________# #________________________the birdnet_recording.service ________________________# # Keep this EMPTY if you do not want this device to perform the recording. # ## DO_RECORDING is simply a setting for enabling the 24/7 ## birdnet_recording.service. ## Set this to Y or y to enable recording. DO_RECORDING= ################################################################################ #----------------------- Web-hosting/Caddy File-server -----------------------# #_______The two variables below can be set to enable internet access___________# #____________to your data,(e.g., extractions, raw data, live___________________# #______________audio stream, BirdNET.selection.txt files)______________________# # Leave these EMPTY if you do not want to enable web access # ## BIRDNETPI_URL is the URL where the extractions, data-set, and live-stream ## will be web-hosted. If you do not own a domain, or would just prefer to keep ## BirdNET-Pi on your local network, keep this empty. BIRDNETPI_URL= ## CADDY_PWD is the plaintext password (that will be hashed) and used to access ## the "Processed" directory and live audio stream. This MUST be set if you ## choose to enable this feature. CADDY_PWD= ################################################################################ #------------------------- Live Audio Stream --------------------------------# #_____________The variable below configures/enables the live___________________# #_____________________________audio stream.____________________________________# # Keep this EMPTY if you do not wish to enable the live stream # # or if this device is not doing the recording # ## ICE_PWD is the password that icecast2 will use to authenticate ffmpeg as a ## trusted source for the stream. You will never need to enter this manually ## anywhere other than here. ICE_PWD= ################################################################################ #------------------- Mobile Notifications via Pushed.co ---------------------# #____________The two variables below enable mobile notifications_______________# #_____________See https://pushed.co/quick-start-guide to get___________________# #_________________________these values for your app.___________________________# # Keep these EMPTY if haven't setup a Pushed.co App yet. # ## Pushed.co App Key and App Secret PUSHED_APP_KEY= PUSHED_APP_SECRET= ################################################################################ #------------------------------- NoMachine ----------------------------------# #_____________The variable below can be set include NoMachine__________________# #_________________remote desktop software to be installed._____________________# # Keep this EMPTY if you do not want to install NoMachine. # ## INSTALL_NOMACHINE is simply a setting that can be enabled to install ## NoMachine alongside the BirdNET-Pi for remote desktop access. This in- ## staller assumes personal use. Please reference the LICENSE file included ## in this repository for more information. ## Set this to Y or y to install NoMachine alongside the BirdNET-Pi INSTALL_NOMACHINE= ################################################################################ #-------------------------------- Defaults ----------------------------------# #______The seven variables below are default settings that you (probably)______# #__________________don't need to change at all, but can._______________________# ## REC_CARD is the sound card you would want the birdnet_recording.service to ## use. This setting is irrelevant if you are not planning on doing data ## collection via recording on this machine. The command substitution below ## looks for a USB microphone's dsnoop alsa device. The dsnoop device lets ## birdnet_recording.service and livestream.service share the raw audio stream ## from the microphone. If you would like to use a different microphone than ## what this produces, or if your microphone does not support creating a ## dsnoop device, you can set this explicitly from a list of the available ## devices from the output of running 'aplay -L' REC_CARD=default ## PROCESSED is the directory where the formerly 'Analyzed' files are moved ## after extractions have been made from them. This includes both WAVE and ## BirdNET.selection.txt files. PROCESSED=${RECS_DIR}/Processed ## EXTRACTED is the directory where the extracted audio selections are moved. EXTRACTED=${RECS_DIR}/Extracted ## IDFILE is the file that keeps a complete list of every spececies that ## BirdNET has identified from your data-set. It is persistent across ## data-sets, so would need to be whiped clean through deleting or renaming ## it. A backup is automatically made from this variable each time it is ## updated (structure: ${IDFILE}.bak), and would also need to be removed ## or renamed to start a new file between data-sets. Alternately, you can ## change this variable between data-sets to preserve records of disparate ## data-sets according to name. IDFILE=${HOME}/BirdNET-Pi/IdentifiedSoFar.txt ## OVERLAP is the value in seconds which BirdNET should use when analyzing ## the data. The values must be between 0.0-2.9. OVERLAP=0.0 ## CONFIDENCE is the minimum confidence level from 0.0-1.0 BirdNET's analysis ## should reach before creating an entry in the BirdNET.selection.txt file. ## Don't set this to 1.0 or you won't have any results. CONFIDENCE=0.7 ## SENSITIVITY is the detection sensitivity from 0.5-1.5. SENSITIVITY=1.25 ################################################################################ #------------------------------ Auto-Generated ------------------------------# #_____________________The variables below are auto-generated___________________# #______________________________during installation_____________________________# ## CHANNELS holds the variabel that corresponds to the number of channels the ## sound card supports. CHANNELS= # Don't touch the variables below ## SYSTEMD_MOUNT is created from the RECS_DIR variable to comply with systemd ## mount naming requirements. SYSTEMD_MOUNT=$(echo ${RECS_DIR#/} | tr / -).mount ## VENV is the virtual environment where the the BirdNET python build is found, ## i.e, VENV is the virtual environment miniforge built for BirdNET. VENV=$(dirname ${my_dir})/miniforge/envs/birdnet ################################################################################ #---------------------------------- Testing -----------------------------------# #_____________These variables are for testing. Please don't touch______________# #_______________them if you are not testing these features.____________________# # To test different values for RECORDING_LENGTH, first: # 1) stop the birdnet_recording.service: #### run: `sudo systemctl stop birdnet_recording.service` # 2) remove any remaining audio files in the day's recording directory: #### Example: to remove recordings for Saturday, October 2nd, 2021, you would #### run: `rm -rf /home/pi/BirdSongs/October-2021/02-Saturday/*` # 3) restart the birdnet_recording.service: #### run: `sudo systemctl restart birdnet_recording.service` RECORDING_LENGTH= EXTRACTION_LENGTH= LAST_RUN=