mibee-eye-go
MiBee Eye (Go) convierte cualquier placa Linux en cámara IP ONVIF Profile S + GB28181. Implementación pura Go sin CGO, soporta Pi CSI, V4L2/USB y RTSP gateway. Incluye detección AI opcional con NanoDet.
Ficha actualizada 24 sept 2026, 16:40 · upstream 24 sept 2026, 16:15 · release v0.3.0
Qué es mibee-eye-go
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
MiBee Eye (Go) es una implementación ligera en lenguaje Go del servicio de cámara ONVIF MiBee Eye, diseñada para transformar cualquier placa Linux en un dispositivo de video IP compatible con estándares ONVIF Profile S y GB28181. La arquitectura está construida completamente en Go sin dependencias CGO, lo que facilita la compilación cruzada entre plataformas x86 y arquitecturas ARM como Raspberry Pi.
El software soporta tres perfiles de captura principales: módulos CSI de Raspberry Pi mediante libcamera (mtxrpicam/rpicamvid), dispositivos V4L2/USB genéricos con codificación hardware cuando es posible, y modo RTSP para re-publicar flujos externos sin recodificar. Incluye servicios completos de ONVIF (Device/Media/Imaging), integración GB28181 con registro SIP, streaming RTSP/RTMP, grabación local segmentada y una interfaz web admin embebida que sigue la especificación SPEC v1.
Las características adicionales incluyen detección de objetos con NanoDet-Plus ONNX (opcional, requiere compilación con -tags ai), controles de imagen en tiempo real, descubrimiento automático WS-Discovery, soporte para GB 35114 A-level con autenticación SM2/SM3, y una huella de memoria optimizada (~74 MB medidos en RPi 3B con build AI). La interfaz web proporciona preview MSE/HLS, controles de imagen, API de configuración con merge parcial y eventos SSE.
- Integrar cámaras Raspberry Pi CSI o USB como dispositivos ONVIF en NVRs comerciales (Dahua, Hikvision) sin hardware adicional
- Actuar como gateway RTSP para convertir flujos IP existentes en dispositivos compatibles con GB28181 para plataformas de videovigilancia chinas
- Implementar detección de objetos en tiempo real con NanoDet-Plus ONNX para alertas de movimiento o reconocimiento de personas/vehículos
- Transmitir video a servicios cloud (Aliyun, Twitch, YouTube) mediante RTMP push desde cualquier placa Linux sin servidor dedicado
- Desplegar en entornos embebidos con restricciones de memoria (~15-25 MB en configuraciones lean) usando la implementación Go frente a Rust
- Crear estaciones de grabación local con retención configurable y reproducción vía GB28181 para cumplimiento normativo
- Implementación 100% Go sin CGO, permitiendo compilación cruzada directa desde workstation x86 a arquitecturas ARM (aarch64/armv7)
- Cumplimiento completo ONVIF Profile S con servicios Device/Media/Imaging y WS-Discovery para descubrimiento automático en red
- Soporte nativo GB28181 con registro SIP, consultas Catalog/DeviceInfo/RecordInfo y control de reproducción vía SIP INFO
- Codificación HLS pura en Go sin dependencias ffmpeg para playback en navegador con MSE/HLS.js
- Detección AI opcional con NanoDet-Plus ONNX en keyframes, habilitada mediante compilación con -tags ai
- Huella de memoria optimizada: ~74 MB medidos en RPi 3B con build AI (procesos de captura/subproceso extra)
- No incluye Dockerfile ni systemd compose, requiere despliegue manual copiando binario y servicio a /etc/systemd/system/
- La detección AI NanoDet requiere compilación específica con -tags ai y no está habilitada por defecto
- Modos mtxrpicam/rpicamvid dependen de subprocessos externos (libcamera/ffmpeg) que incrementan la huella de memoria
- El modo v4l2 cae a ffmpeg subprocess cuando el nodo encoder_device no soporta M2M hardware encode
- La interfaz web embebida usa //go:embed, requiriendo binario completo sin archivos externos adicionales
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Desplegar copiando binario precompilado o compilando con make build. Instalar systemd service desde deploy/mibee-eye.service a /etc/systemd/system/, editar paths/user según entorno, ejecutar systemctl daemon-reload y enable --now mibee-eye. Configurar config.yaml con camera.mode (mtxrpicam/rpicamvid/v4l2/rtsp), puertos ONVIF:8080, web:8088, RTSP:8554. Para AI habilitar -tags ai en compilación. Variables MIBEE_EYE_* sobrescriben config.yaml. Instalar ffmpeg si se usa fallback encoder en v4l2.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Puede sustituir a
Relaciones detectadas por el análisis del repositorio y su categoría.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.