FPGA 以太网通信(四)网络视频传输系统

一、网络视频传输系统

网络视频传输系统使用ov5640摄像头采集数据,通过组件UDP帧将视频数据实时传输给上位机。

ov5640视频传输带宽

像素分辨率设为640x480,帧率设为60帧,像素格式为RGB565,传输带宽为 640 x 480 x 16bit x 60 fps = 281 Mbps,因此,以太网带宽1000 Mbps可以满足视频传输所需带宽。

视频传输控制模块

该模块解析以太网顶层模块接收到的数据,如果收到1 个字节的ASCII 码"1",则表示以太网开始传输图像数据,transfer_flag输出1;如果收到1 个字节的ASCII 码"0",则表示以太网停止传输图像数据,transfer_flag输出0。

图像数据封装模块

图像数据封装模块负责传输输入的8位图像数据,以及添加图像数据的帧头和行场分辨率。

该模块控制着以太网发送模块发送的字节数,单次发送一行图像数据的字节数, 模块内部例化了一个异步FIFO模块,用于缓存待发送的图像数据。

  1. 当fifo 缓存的个数满足udp_tx_byte_num 的个数之后,udp_tx_start_en 会拉高,开始发送一包数据,而udp_tx_data 会通过异步fifo 将img_data 缓存的数据发送到上位机。
  2. 在发送一帧图像的第一行数据时,在一行数据的开头添加图像的帧头和图像的行场分辨率,共8 个字节,图像的帧头是32'hf0_5a_a5_0f,共占用4 个字节;而图像的行场分辨率占用4 个字节,本次实验传输的图像分辨率为640*480。

以太网顶层模块

以太网顶层模块通过例化UDP通信模块,将封装好的图像数据组建成以太网帧发送出去。

二、FPGA实现

上位机网络视频显示

使用正点原子开发的视频传输上位机,解析FPGA发送的以太网视频数据帧,并实现视频显示。

相关推荐
DianSan_ERP5 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
ZPC82105 天前
docker 镜像备份
人工智能·算法·fpga开发·机器人
ZPC82105 天前
docker 使用GUI ROS2
人工智能·算法·fpga开发·机器人
REDcker5 天前
WebCodecs VideoDecoder 的 hardwareAcceleration 使用
前端·音视频·实时音视频·直播·webcodecs·videodecoder
呉師傅5 天前
火狐浏览器报错配置文件缺失如何解决#操作技巧#
运维·网络·windows·电脑
gihigo19985 天前
基于TCP协议实现视频采集与通信
网络协议·tcp/ip·音视频
2501_946205525 天前
晶圆机器人双臂怎么选型?适配2-12寸晶圆的末端效应器有哪些?
服务器·网络·机器人
linux kernel5 天前
第七部分:高级IO
服务器·网络
数字护盾(和中)5 天前
BAS+ATT&CK:企业主动防御的黄金组合
服务器·网络·数据库
~远在太平洋~5 天前
Debian系统如何删除多余的kernel
linux·网络·debian