这个项目能做什么
BirdNET-Go Remote Mic 是一个纯 Go 单一二进制文件,可在树莓派等小型 Linux 主机上从本地麦克风(USB 或 I2S)采集音频,并通过网络以标准 RTSP/RTP 流式传输,专为向 BirdNET-Go 的鸟声分析提供音频输入而设计。无需 ffmpeg 或独立媒体服务器。
主要能力:
- 音频编码:对普通鸟鸣使用 48 kHz 的 Opus(低带宽),或对超声波录音(如蝙蝠检测)使用高达 384 kHz 高采样率的原始 PCM(L16)。
- 自行实现的 RTSP/RTP 服务器:默认采用 TCP 交织传输,实现无损且对防火墙友好的传输。兼容 ffmpeg、VLC 和 BirdNET-Go 的接收客户端。每个流支持最多 8 个并发客户端,并共享编码。
- mDNS/DNS-SD 发现:每台设备以 _rtsp._tcp 实例进行广播,TXT 记录携带编解码器、采样率、声道数、路径和认证信息。
- 内置 HTTPS Web UI(默认端口 8443):仪表板提供实时每声道电平表、流状态、可一键复制的 RTSP URL 以及丢帧计数器。系统选项卡显示主机遥测、网络信息和访问控制。可用设备列表让你无需编辑配置文件即可在浏览器中启用采集硬件。
- 多设备支持:每台主机一个二进制文件即可服务任意数量的采集设备,每个设备都有自己的 RTSP 路径和 mDNS 实例。
- 稳定的设备标识:使用 USB 序列号或物理端口 ID,而非易变的 ALSA 卡号,因此设备在重启和重新插拔后仍能保持识别。
- 访问令牌认证以保护流。
- systemd 服务管理,支持自动安装、零配置首次启动,并通过签名发布清单自我更新,失败时自动回滚。
安装选项包括适用于 Linux amd64、arm64 和 32 位 ARM 的预构建二进制文件、Homebrew、.deb 包、tarball 以及从源码构建。该设备面向 Debian 系列系统及任何 systemd 主机。
评论
0 人表达喜爱 · 满10人后显示 Deer Point
登录后参与讨论。