查看: 4704|回复: 2

[求助] imx6 mxc_vpu_test 解码H264后HDMI输出图像延迟大

[复制链接]

该用户从未签到

1

主题

2

帖子

0

新手上路

Rank: 1

积分
7
最后登录
2018-10-26
发表于 2018-10-24 09:41:33 | 显示全部楼层 |阅读模式
各位论坛大神,

现在有个问题需要求助一下。我现在使用一个网络摄像头,通过网线和imx6的开发板的以太网口相连接。摄像头通过网线向imx6发送实时的H264视频帧数据。我现在通过mxc_vpu_test这个测试用例,来负责解码获取到的H264的视频,然后通过HDMI接口输出到显示器。

现在测试发现,imx6开发板解码后,输出到显示器的延迟大概有2-3s,这个延迟实在是太大了。想请大家告知一下,应该如何才能降低这个显示输出的延迟。

测试背景:
开发板系统内核版本:3.0.35
由于mxc_vpu_test可以解码的是一个文件,因此在系统的文件系统中创建了一个类型为tmpfs的文件名为recv.h264,每次以太网收到视频帧都会更新recv.h264,即保证这个文件中只有当前一帧视频数据。
现在我测试时,解码输出到显示器的视频已经是连续流畅的了,也就是说明接收H264视频到解码没问题。唯一的问题就是输出到HDMI显示器时延迟太大。
我知道答案 目前已有2人回答
回复

使用道具 举报

该用户从未签到

712

主题

6371

帖子

0

超级版主

Rank: 8Rank: 8

积分
24863
最后登录
2025-7-18
发表于 2018-10-24 14:38:35 | 显示全部楼层
是否是HDMI显示延迟,你可以这样做一下试验: 在EVK板子上,本地播放一个H.264的高清电影。你看是否连续和流畅。也就是说,开始播放,即解码开始,到看到显示的图像,这个时间有多长。一般来说,基本这个时间可以忽略的。

但是,对于网络传送过来的视频数据,2-3s的延迟是怎么比较出来的呢? 基本上应该是:
摄像头对准一个运动的场景。然后看HDMI显示器什么时候显示出来。这个时间是2-3秒吧。

如果是这样的测试,那么。工作流程是这样的:Camera 捕获数据 + 压缩数据 + 网络传送---->i.mx6 ethernet + VPU解码--->GPU加速+IPU显示。 所以,这个延迟,大部分在摄像机端,因为压缩远比解码要慢。
回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

2

帖子

0

新手上路

Rank: 1

积分
7
最后登录
2018-10-26
 楼主| 发表于 2018-10-26 11:24:17 | 显示全部楼层
版主,
你好,非常感谢你的解答。
我做了如下的测试:将这个网络摄像头,通过以太网和PC相连接,然后在PC上我通过ffmpeg来解码H264的视频,并通过屏幕显示。此时测试发现,摄像头输出的图像是没有延迟的。

因此,我判断当前的延迟是你所说的:VPU解码--->GPU加速+IPU显示这个过程中,当前我的图像显示是连续的,是否可以理解为VPU的解码不存在延迟,否则图像就无法连续播放了。

那现在这个延迟就是GPU加速+IPU显示这个过程,可以这样理解吗?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-7-19 02:55 , Processed in 0.104738 second(s), 25 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表