À propos du projet

BirdNET-Go Remote Mic est un binaire unique en pur Go qui capture l’audio des microphones locaux (USB ou I2S) sur de petits hôtes Linux comme le Raspberry Pi et le diffuse sur le réseau en RTSP/RTP standard, conçu pour alimenter l’analyse des sons d’oiseaux de BirdNET-Go. Aucun ffmpeg ni serveur multimédia séparé n’est nécessaire. Capacités principales : - Encodage audio : Opus à 48 kHz pour le chant d’oiseaux normal (faible bande passante), ou PCM brut (L16) à des taux d’échantillonnage élevés jusqu’à 384 kHz pour l’enregistrement ultrasonore, comme la détection de chauves-souris. - Serveur RTSP/RTP auto-implémenté : TCP entrelacé par défaut pour une livraison sans perte et compatible avec les pare-feu. Compatible avec ffmpeg, VLC et le client d’ingestion de BirdNET-Go. Prend en charge jusqu’à 8 clients simultanés par flux avec encodage partagé. - Découverte mDNS/DNS-SD : chaque appareil s’annonce comme une instance _rtsp._tcp avec des enregistrements TXT contenant le codec, le débit, les canaux, le chemin et les détails d’authentification. - Interface web HTTPS intégrée (port par défaut 8443) : tableau de bord avec vumètres en direct par canal, état du flux, URL RTSP avec copie en un clic et compteurs de trames perdues. L’onglet Système affiche la télémétrie de l’hôte, les informations réseau et le contrôle d’accès. La liste Available Devices permet d’activer le matériel de capture depuis le navigateur sans modifier de fichier de configuration. - Prise en charge multi-appareils : un binaire par hôte sert n’importe quel nombre de périphériques de capture, chacun avec son propre chemin RTSP et sa propre instance mDNS. - Identification stable des appareils : utilise les numéros de série USB ou les identifiants de port physiques plutôt que les numéros de carte ALSA volatils, afin que les appareils survivent aux redémarrages et aux rebranchements. - Authentification par jeton d’accès pour protéger les flux. - Gestion du service systemd avec installation automatique, premier démarrage sans configuration et mise à jour automatique via des manifestes de version signés avec retour arrière automatique en cas d’échec. Les options d’installation incluent des binaires précompilés pour Linux amd64, arm64 et ARM 32 bits, Homebrew, des paquets .deb, une archive tarball et la compilation depuis les sources. L’appliance cible les systèmes de la famille Debian et tout hôte systemd.