Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added templates/birdnetgo/assets/logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added templates/birdnetgo/assets/screenshot.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
61 changes: 61 additions & 0 deletions templates/birdnetgo/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
import { Output, Services } from "~templates-utils";
import { Input } from "./meta";

export function generate(input: Input): Output {
const services: Services = [];

const envVars = [
`TZ=${input.timezone || "UTC"}`,
`BIRDNET_UID=1000`,
`BIRDNET_GID=1000`,
`BIRDNET_LOCALE=${input.locale || "en-us"}`,
`BIRDNET_SENSITIVITY=1.0`,
`BIRDNET_THRESHOLD=0.8`,
`BIRDNET_OVERLAP=1.5`,
`BIRDNET_THREADS=0`,
`BIRDNET_DEBUG=false`,
`BIRDNET_USEXNNPACK=true`,
`BIRDNET_RANGEFILTER_MODEL=latest`,
`BIRDNET_RANGEFILTER_THRESHOLD=0.01`,
];

if (input.latitude) {
envVars.push(`BIRDNET_LATITUDE=${input.latitude}`);
}

if (input.longitude) {
envVars.push(`BIRDNET_LONGITUDE=${input.longitude}`);
}

services.push({
type: "app",
data: {
serviceName: input.appServiceName,
env: envVars.join("\n"),
source: {
type: "image",
image: input.appServiceImage,
},
domains: [
{
host: "$(EASYPANEL_DOMAIN)",
port: 8080,
},
],
mounts: [
{
type: "volume",
name: "config",
mountPath: "/config",
},
{
type: "volume",
name: "data",
mountPath: "/data",
},
],
},
});

return { services };
}
107 changes: 107 additions & 0 deletions templates/birdnetgo/meta.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
name: BirdNET-Go
description:
BirdNET-Go is a real-time bird sound identification and monitoring system that
uses advanced AI and machine learning to recognize bird species from audio
recordings. It analyzes ambient sounds from microphones or audio files to
identify and catalog bird species in your area. BirdNET-Go features automatic
species detection with confidence scoring, location-based range filtering to
show only birds likely in your region, real-time audio streaming, and
comprehensive logging of all detected species. The application supports custom
sensitivity settings, overlap detection for better accuracy, and can utilize
XNNPACK acceleration for improved performance. Perfect for bird enthusiasts,
ornithologists, researchers, and anyone interested in monitoring local bird
populations and creating automated bird sound databases.

instructions: null

changeLog:
- date: 2025-11-18
description: Template Release

links:
- label: Github
url: https://github.com/tphakala/birdnet-go
- label: Docker Hub
url: https://github.com/tphakala/birdnet-go/pkgs/container/birdnet-go

contributors:
- name: Ahson Shaikh
url: https://github.com/Ahson-Shaikh

schema:
type: object
required:
- appServiceName
- appServiceImage
properties:
appServiceName:
type: string
title: App Service Name
default: birdnetgo
appServiceImage:
type: string
title: App Service Image
default: ghcr.io/tphakala/birdnet-go:nightly-20251028
timezone:
type: string
title: Timezone
default: UTC
latitude:
type: string
title: Latitude (Optional - for location filtering)
default: ""
longitude:
type: string
title: Longitude (Optional - for location filtering)
default: ""
locale:
type: string
title: Locale (e.g., en-us)
default: en-us

benefits:
- title: Automated Bird Identification
description:
AI-powered real-time identification of bird species from audio using
advanced BirdNET machine learning models with high accuracy.
- title: Location-Aware Filtering
description:
Configure your GPS coordinates to filter detections showing only bird
species likely to be in your region, reducing false positives.
- title: Continuous Monitoring
description:
24/7 automated monitoring and logging of bird species in your area. Build
comprehensive databases of local bird populations over time.

features:
- title: Real-Time Audio Analysis
description:
Process live audio streams from microphones or audio files to identify
bird sounds in real-time with configurable sensitivity.
- title: Species Confidence Scoring
description:
Each detection includes confidence scores and threshold filtering to
ensure accurate species identification.
- title: Geographic Range Filtering
description:
Location-based filtering shows only birds expected in your area based on
latitude/longitude coordinates.
- title: Audio Streaming
description:
HLS streaming support for live audio playback and monitoring of detected
bird sounds through web interface.
- title: Detection Logging
description:
Comprehensive logging and database of all detected species with
timestamps, confidence scores, and audio clips.
- title: Customizable Settings
description:
Adjust sensitivity, detection thresholds, audio overlap, and model
parameters to optimize for your environment.

tags:
- Bird Watching
- Audio Recognition
- AI
- Wildlife Monitoring
- Ornithology