libcamera_ipc 开源代码之树莓派3B+ Bookworm部署

1. 源由

树莓派早期的嵌入式板子,随着硬件技术,软件的升级换代,越来越不能满足AI方面的需求。

但是,作为IPC硬件以及智能控制领域来说,还是错错有余的。为此,我们这里将利用树莓派3B+做一个IPC摄像头使用。

2. 分析

通常来说,IPC网络摄像头的几个关键指标要求:

  1. FPS 帧率,通常15FPS
  2. 视频实时性,通常1s以内延迟
  3. 分辨率,通常1080P 或者更高
  4. 比特率,不要出现马赛克
  5. 安装部署方便,无线

3. 部署

系统安装,详见:Raspbian镜像无头烧录
开发环境,详见:Raspberry Pi3B+之C/C++开发环境搭建

注:基础方面的安装,不在重点一步一步整理出来,相关内容大家请自寻方法,如果实在有问题,在评论中回复。

3.1 下载

$ git clone git@github.com:SnapDragonfly/libcamera_ipc.git

or
$ git clone https://github.com/SnapDragonfly/libcamera_ipc.git

3.2 启动

/etc/rc.local 仍然可以用于在 Raspberry Pi 启动时运行脚本。

所以,最简单的方法就是,直接添加启动脚本:

$ cd libcamera_ipc
$ pwd
/home/daniel/libcamera_ipc

$ sudo nano /etc/rc.local
$ cat /etc/rc.local
#!/bin/bash

/home/daniel/libcamera_ipc/rtp2rtsp_server.sh start &

3.3 配置

目前,该代码尚属于初级阶段,仅可用,所以相关配置信息,直接在脚本中:

  • rtp2rtsp_server.sh
# Configuration parameters
WIDTH=1920
HEIGHT=1080
BITRATE=4000000
FRAMERATE=30

PORT=5602   # UDP port for video streaming
RTSP_PORT=8554  # RTSP server port
RTSP_PATH="stream"  # RTSP access path

后续,我们将会考虑以配置文件的形式给出。

3.4 运行

主要支持以下几种操作:

  • start 启动服务
  • stop 停止服务
  • restart 停止+启动服务
  • status 检查进程状态
  • help 帮助命令
$ ./rtp2rtsp_server.sh help
Usage: ./rtp2rtsp_server.sh {start|restart|stop|status|help}

Commands:
  start           Start a module
  restart         Restart a module
  stop            Stop a module
  status          Check the status of a module
  help            Display this help message

4. 总结

总体来说,目前初步实现与Synology Surveillance Station的无缝对接,可以简单应用于相关视频监控。

为我们早期树莓派板子的再利用提供了轻量级代码。

4.1 软件(TODO)

  1. github帮助文档更新
  2. 基于当前IP的RTSP URL地址命令行打印
  3. 安装脚本(依赖组件)
  4. 增加systemctl启动服务脚本
  5. 配置参数抽象归纳到配置文件(rtp端口、rtsp端口、rtsp路径、帧率 等等)
  6. 各时间段可配置(节省资源:存储空间、能量等)
  7. 支持USB摄像头(当前是CSI摄像头)
  8. 鱼眼摄像头曲率画面纠正
  9. OSD功能(温湿度、光感亮度等)

4.2 硬件(TODO)

  1. 夜视功能(更换夜视摄像头)
  2. POE集成
  3. UPS集成
  4. 多摄像头(USB)

5. 参考资料

【1】libcamera_mon 开源代码之树莓派3B+ Bookworm部署
【2】Raspbian镜像无头烧录
【3】Raspberry Pi3B+之C/C++开发环境搭建

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值