Skip to content

hunx/open_ipc

Repository files navigation

open_ipc

简介

网络摄像头开源方案,目标是实现基于云端多模态大模型,实现AI语音对话,视频识别。 基础功能包括:存储卡录像,rtsp,restful api、web网页。 两个开发平台: 3516cv610平台 qemu的aarch64平台

技术架构

整体遵从分层设计:内核层、硬件抽象层、基础软件层、基础业务层,应用层。

  • 同时在代码实现上,将不同功能抽象为组件,通过拼装和配置组件的方式定制适用于不同设备。

系统BSP

uboot和kernel依赖芯片的sdk,采用buildroot构建根文件系统。

基础软件层

开源三方库:openssl、curl、freetype、exosip。 基础公共层:配置管理、事件管理。

硬件抽象层

统一封装硬件操作接口,音频、视频、USB等。

基础业务层

业务:音视频存储,设备升级。

应用层

应用:Restful API、web、onvif、gb28181、app对接。

编译说明

环境要求

  • Linux开发环境: Ubuntu 24
  • npm(用于web前端构建)
  • 交叉编译工具链toolchains:子模块需要(git submodule init;git submodule update --remote)
    • 海思3516cv610平台:toolchains/3516cv610,要提前安装海思SDK的交叉编译工具链- arm-v01c02-linux-musleabi-gcc
    • aarch64平台:toolchains/aarch64

编译步骤

编译命令

# 编译命令格式
./build.sh [product] [command] [mode]

# product: 产品型号
- pa: 3516cv610平台
- pb: aarch64平台

# 编译平台release版本
./build.sh pa build release

# 编译aarch64平台debug版本
./build.sh pb build debug

编译完成后,输出文件位于`package/bin`目录下

# 3516cv610镜像打包
./build.sh pa all
编译完成后,输出文件位于`build/3516cv610_image`目录下

路线图

高优先级

  • 支持rtsp服务
  • 支持录像存储
  • 支持web网页预览(webrtc)
  • 支持阿里云同义千问vl,支持图片分析
  • 支持镜像文件打包,支持web升级
  • 支持用户管理,网络配置,看门狗
  • 支持yolov8

低优先级

  • 支持divinus库,适配海思芯片
  • 添加onvif服务
  • 支持语音对讲
  • 添加gb28181服务
  • 添加云端app对接

联系方式

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published