ARM-Linux 基础项目篇——简单的视频监控

该基础项目为后面的 AI 安防项目做铺垫。使用 Qt 的网络编程方案来实现,后期再实现流媒体协议的方案。使用 ov2640 摄像头。

一、实现流程

(1) 服务器采集摄像头的数据。

(2) 处理视频数据转交给 Socket,由 TCP/UDP 传输。

(3) 客户端接收视频数据。

二、服务端

设置两个 QCheckBox

  • 本地显示

    • 将摄像头捕获的数据在 LCD 上显示
  • 开启广播

    • 将摄像头捕获的数据在 客户端上显示

设置QPushButton

  • 采集摄像头数据的按钮,点击事件
    • 开启采集
    • 停止采集

CaptureThread:以 V4L2 进行摄像头编程

三、客户端

四、综合测试

复制代码
source /opt/fsl-imx-x11/4.1.15-2.1.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi
/home/prover/linux/qt-5.12.9/arm-qt/bin/qmake
make -j 8

服务端的代码交叉编译后,拷贝到开发板使用即可。

客户端的代码编译后,服务端开启广播后,客户端就能接收到视频数据。

不过服务端和客户端的网络需要自己配好。

相关推荐
IAR Systems5 分钟前
使用IAR Arm工具链开发和调试Zephyr RTOS
arm开发·嵌入式·iar·zephyr
毒爪的小新13 分钟前
Open WebUI 从零到一:打造属于你的私人ChatGPT
linux·ai·语言模型·chatgpt·openwebui
keyipatience16 分钟前
命名管道:跨进程通信的终极指南
linux·运维·服务器
c238569 小时前
Linux C++ 进度条进阶美化与工程化封装
linux·运维·服务器
凡人叶枫11 小时前
Effective C++ 条款17:以独立语句将 newed 对象置入智能指针
java·linux·开发语言·c++·算法
RisunJan12 小时前
Linux命令-pgrep (通过进程名查找进程 ID)
linux·运维
信创工程师-小杨12 小时前
Linux内网环境如何解决依赖的问题
linux·运维·服务器
设计师小聂!12 小时前
宝塔 Linux 面板保姆级教程
linux·mysql·开源·运维开发
不吃土豆的马铃薯13 小时前
C++ 高性能网络缓冲区 Buffer 源码解析
linux·服务器·开发语言·网络·c++
java知路13 小时前
linux yum 下载docker安装包及依赖安装包,并离线安装
linux·运维·docker