Firefly开源社区

标题: HDMI-IN接口支持4K@60fps吗 [打印本页]

作者: boyce    时间: 2022-11-21 18:36
标题: HDMI-IN接口支持4K@60fps吗
平台:目前用的firefly的3588J做测试
固件版本:ITX-3588J_Ubuntu20.04-Gnome-r211123_v1.0.2a_221013
需求:HDMI-IN支持4K@60fp


目前测试:4K@30fps成功,4k60fps失败

作者: 799959745    时间: 2022-11-24 11:14
支持的,请问你是怎么测试的?
作者: boyce    时间: 2022-11-28 13:20
799959745 发表于 2022-11-24 11:14
支持的,请问你是怎么测试的?

通过V4l2-ctl查询看的分辨率,然后再通过gstreamer来预览。
源:系统是ubuntu,分辨率是4K@60fps。开发板查询到分辨率特别小640*480。gstreamer运行4K也是失败
源:系统是win10,分辨率设置4K@30fps,开发板查询分辨率正常,gstreamer输出也正常
通过的kmssink来预览的

作者: boyce    时间: 2022-11-28 16:26
通过v4l2-ctl  -d /dev/video11 --set-fmt-video=width=3840,height=2160,pixelformat='NV12' 设置失败,格式改为BGR3成功,但是查询结果分辨率为1080p。
查询格式命令:v4l2-ctl --list-formats-ext --device /dev/video11 查询格式结果支持(BGR3 NV24 NV16 NV12),测试只有BGR3成功,并且最多只能到1080p
作者: boyce    时间: 2022-11-28 17:08
v4l2-ctl --list-formats-ex -d /dev/video11
ioctl: VIDIOC_ENUM_FMT
        Type: Video Capture Multiplanar

        [0]: 'BGR3' (24-bit BGR 8-8-8)
        [1]: 'NV24' (Y/CbCr 4:4:4)
        [2]: 'NV16' (Y/CbCr 4:2:2)
        [3]: 'NV12' (Y/CbCr 4:2:0)
firefly@firefly:~$ v4l2-ctl  -d /dev/video11 --set-fmt-video=width=3840,height=2160,pixelformat='NV12'
VIDIOC_S_FMT: failed: Invalid argument

作者: 799959745    时间: 2022-12-1 10:44
kmssimk 后面加个 sync=false 就可以支持 60fps 了
作者: 799959745    时间: 2022-12-1 10:45
799959745 发表于 2022-12-1 10:44
kmssimk 后面加个 sync=false 就可以支持 60fps 了

提供下你的测试命令吧
作者: boyce    时间: 2022-12-5 13:12
本帖最后由 boyce 于 2022-12-5 13:22 编辑
799959745 发表于 2022-12-1 10:45
提供下你的测试命令吧

gst-launch-1.0 v4l2src device=/dev/video11 !video/x-raw,width=3840,height=2160,framerate=60/1 ! queue ! kmssink -e -v
命令并不是关键,关键是查询的格式信息错误,视频源是4K@60fps,v4l2查到的格式错误,4K@60帧视频源为win10是正确的,视频源是ubuntu18.04是错误的。
1,我这边测试和wiki上提示的格式信息不一致,我只能用BGR格式,wiki上是NV12,想知道这是什么原因导致的?是有格式信息的限制?
2,我想获取视频的帧率,通过v4l2并不能获取到帧率,在nvidia平台是可以直接获取到的,第三方设备也会提供sdk来提供帧率等信息,我想知道有没有方式可以获取到这些视频源信息?
3,视频源信息错误的原因是什么?

作者: 799959745    时间: 2022-12-5 14:47
这要看你视频源的输出是什么格式的。如果要转换格式的话,就得使用 videoconvert 管道去转换,使用该管道需要使能 rga 。
  1. export GST_VIDEO_CONVERT_USE_RGA=1
复制代码

作者: boyce    时间: 2022-12-7 15:14
799959745 发表于 2022-12-5 14:47
这要看你视频源的输出是什么格式的。如果要转换格式的话,就得使用 videoconvert 管道去转换,使用该管道需 ...

我的目的是所有的视频源都可以传输4K@60fps,而不是为了使用NV12。我们的产品要对所有的视频源具有普适性,而不是有的可以,有的不可以。
所以需求是,为什么我只能用视频源格式为BGR的?我ubuntu主机做视频源获取格式错误的原因是视频格式不支持吗?这对于通用产品来说是个很大的风险项
作者: 板蓝根    时间: 2022-12-10 16:49
现在 3588 端并不支持,设置格式,输入设备输出给 rk3588 的试什么格式就是什么格式由输入设备决定。
作者: YSKM    时间: 2023-3-8 15:43
板蓝根 发表于 2022-12-10 16:49
现在 3588 端并不支持,设置格式,输入设备输出给 rk3588 的试什么格式就是什么格式由输入设备决定。

您好,请问现在支持了吗 如果要支持格式转换 需要更改什么吗
作者: 799959745    时间: 2023-4-10 09:58
格式转换要用 videoconvert 管道。并开启rga加速 export GST_VIDEO_CONVERT_USE_RGA=1




欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/) Powered by Discuz! X3.1