系统架构

整体结构

┌─────────────────────────────────────────────────────────────┐
│                        OmniVP 平台                          │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐   │
│  │ GB28181  │  │  ISUP    │  │  ONVIF   │  │  JT1078  │   │
│  │  SIP 服务 │  │ EHome 桥接│  │ 客户端    │  │  服务    │   │
│  └────┬─────┘  └────┬─────┘  └────┬─────┘  └────┬─────┘   │
│       └─────────────┴──────┬──────┴─────────────┘          │
│                            ▼                                │
│                    ┌───────────────┐                        │
│                    │  统一设备抽象  │                        │
│                    │  (VideoService)│                        │
│                    └───────┬───────┘                        │
│                            ▼                                │
│  ┌───────────────────────────────────────────────┐          │
│  │   HTTP API  │  WebSocket  │  告警/录像/审计    │          │
│  └────────────────────┬──────────────────────────┘          │
└───────────────────────┼─────────────────────────────────────┘
                        │
              ┌─────────▼──────────┐
              │     ZLMediaKit     │   媒体节点(可水平扩展)
              │  收流 / 转封装 / 分发 │
              └─────────┬──────────┘
                        │
         ┌──────────────┼──────────────┐
         ▼              ▼              ▼
      Web 播放器      安卓 App       第三方系统
   (HLS/FLV/RTC)    (FLV/HLS)      (REST API)

关键设计

部署形态

形态说明
单机OmniVP + ZLMediaKit + SQLite 跑在一台机器,适合 50 路以内
分布式OmniVP 单实例 + 多个 ZLMediaKit 媒体节点,适合大规模接入
容器化提供 Dockerfile,可部署到 Kubernetes(参考运维手册)