3 gst_rtsp_dec_display案例
3.1案例说明
使用GStreamerAPI实现ARM端从网络摄像头获取H.264格式视频流,通过mppvideodec进行H.264硬件解码,再将解码后的视频输出至显示设备。
(1)GStreamer管道框图。

(2)程序流程图。

案例目录说明如下表所示。

3.2案例测试
本案例使用的网络摄像头为海康威视DS-IPC-B12HV2-IA,请将网络摄像头与单板机LAN1网口连接至同一个路由器,并将单板机HDMI OUT接口连接至HDMI显示屏。硬件连接如下图所示。

请将案例bin目录下的gst_rtsp_dec_display可执行程序拷贝至单板机文件系统任意目录下,并进入可执行程序所在目录,执行如下命令查看程序参数信息。
Target# ./gst_rtsp_dec_display --help

参数解析:
-u:RTSP URL信息,即网络摄像头IP地址信息。
-s:帧率显示。
-v:版本信息。
-h:帮助信息。
执行如下命令,设置fpsdisplaysink日志等级,便于查看测试过程中可视频采集的帧率信息。
Target# export GST_DEBUG=fpsdisplaysink:7

执行如下命令,将网络摄像头采集的视频,经过H.264解码后,将处理结果传输至显示设备。按下"Ctrl + C"可停止运行程序。
参数"admin:tl123456"为网络摄像头后台管理账号和密码,"192.168.13.28:554"为网络摄像头的IP地址和RTSP端口号。
Target# ./gst_rtsp_dec_display -u rtsp://admin:tl123456@192.168.13.28:554/h264/ch1/main/av_stream -s 1
备注:下图打印信息中,fps为程序稳定运行后的视频采集实时帧率,avg-fps为程序稳定运行后的视频采集平均帧率。


本次测试的CPU占用率如下所示。

3.3时延测试
时延测试方法:使用摄像头采集PC机显示屏的在线秒表图像,经过ARM处理后再将图像进行显示。PC机显示画面与单板机显示画面的时间差,即为时延。进行多次测试,时延结果取其平均值。
该显示时延测试主要由网络摄像头获取时间、网络传输时间、接收缓存时间、解码时间、送至显示屏缓存时间构成。


3.4案例编译
将案例src目录拷贝至Ubuntu工作目录下,进入src目录,执行如下命令配置交叉编译工具链,并执行make命令进行案例编译。编译完成后,将在当前目录下生成可执行文件。
Host# source /home/tronlong/RK3576/environment
Host# make

由于篇幅过长等原因,部分内容均不逐一展示,如需获取完整版详细资料,请关注Tronlong创龙科技微信公众号或官网,或者评论区留言,感谢您的支持!
审核编辑 黄宇
-
图像处理
+关注
关注
29文章
1350浏览量
59708 -
单板机
+关注
关注
1文章
57浏览量
18924 -
rk3576
+关注
关注
1文章
304浏览量
1678
发布评论请先 登录
RK3576 单板机嵌入式 Qt 界面与多屏异显开发手册(三)
RK3576 单板机嵌入式 Qt 界面与多屏异显开发手册(二)
RK3576 单板机嵌入式 Qt 界面与多屏异显开发手册(一)
RK3576 单板机 C/Python/MQTT 应用开发手册(二)
RK3576 单板机 C/Python/MQTT 应用开发手册(一)
RK3576 单板机 LinuxSDK 开发与系统定制手册(二)
RK3576 单板机 LinuxSDK 开发与系统定制手册(一)
RK3576 单板机系统使用手册:配置、升级与组件安装指南(三)
RK3576 单板机系统使用手册:配置、升级与组件安装指南(二)
RK3576 单板机系统使用手册:配置、升级与组件安装指南(一)
RK3562 单板机 Linux 应用开发实战手册:LED/CAN/TCP/UART 案例与 Python 开发(二)
RK3576 单板机高清视频图像处理开发实战手册(三)
评论