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
支持的,请问你是怎么测试的?
通过V4l2-ctl查询看的分辨率,然后再通过gstreamer来预览。
源:系统是ubuntu,分辨率是4K@60fps。开发板查询到分辨率特别小640*480。gstreamer运行4K也是失败
源:系统是win10,分辨率设置4K@30fps,开发板查询分辨率正常,gstreamer输出也正常
通过的kmssink来预览的
通过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 v4l2-ctl --list-formats-ex -d /dev/video11
ioctl: VIDIOC_ENUM_FMT
Type: Video Capture Multiplanar
: 'BGR3' (24-bit BGR 8-8-8)
: 'NV24' (Y/CbCr 4:4:4)
: 'NV16' (Y/CbCr 4:2:2)
: '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
kmssimk 后面加个 sync=false 就可以支持 60fps 了 799959745 发表于 2022-12-1 10:44
kmssimk 后面加个 sync=false 就可以支持 60fps 了
提供下你的测试命令吧 本帖最后由 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,视频源信息错误的原因是什么?
这要看你视频源的输出是什么格式的。如果要转换格式的话,就得使用 videoconvert 管道去转换,使用该管道需要使能 rga 。
export GST_VIDEO_CONVERT_USE_RGA=1 799959745 发表于 2022-12-5 14:47
这要看你视频源的输出是什么格式的。如果要转换格式的话,就得使用 videoconvert 管道去转换,使用该管道需 ...
我的目的是所有的视频源都可以传输4K@60fps,而不是为了使用NV12。我们的产品要对所有的视频源具有普适性,而不是有的可以,有的不可以。
所以需求是,为什么我只能用视频源格式为BGR的?我ubuntu主机做视频源获取格式错误的原因是视频格式不支持吗?这对于通用产品来说是个很大的风险项
页:
[1]
2