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

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

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

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

相关推荐
ITKEY_18 分钟前
emacs 文件管理Dired, the Directory Editor
linux·编辑器·emacs
源图客22 分钟前
解决CentOS操作系统网络异常问题
linux·运维·centos
HideF10 小时前
Linux sudo
linux
FlightYe11 小时前
视界原理之3D视频(四):裸眼、眼镜和头显
android·linux·c++·3d·ffmpeg·音视频
蹊黎11 小时前
Linux 下用 C 语言实现进度条
linux·c语言·单片机
牛马鸡niumasi13 小时前
【Linux】C语言文件操作
linux
say_fall13 小时前
【Linux系统编程】Ext 文件系统:磁盘与存储、文件与目录、现代计算机究竟如何寻找文件
linux·运维·服务器·数据库·c++
wacsii14 小时前
【Linux进程(一)】Linux 进程初探:操作系统如何管理进程?fork() 为什么返回两次?
linux·运维·服务器
AI+程序员在路上14 小时前
RV1126B 上支持的模型及全流程应用--从CNN及语音到 LLMVLM 与跨平台选型
linux·c语言·人工智能
默|笙14 小时前
【Linux网络】传输层协议TCP(1)---TCP报文介绍
linux·网络·tcp/ip