APEX ORIN NANO GMSL相机入门#

GMSL可视化设置#

  • 点击左侧菜单栏“系统设置-GMSL设置”即可进入页面

  • 选择每个通道的对应相机型号,相机编号,和丝印编号对应

  • 点击保存

  • 等待一会儿,系统会提示GMSL设置成功,即可使用GMSL摄像头

视频输出#

可以使用下列命令,快速打开相机来确认效果。

显示单路720P的相机#

gst-launch-1.0 -v v4l2src device="/dev/video1" ! video/x-raw,width=1280,height=720,format=UYVY ! xvimagesink

显示单路1080P的相机#

gst-launch-1.0 -v v4l2src device="/dev/video0" ! video/x-raw,width=1920,height=1080,format=UYVY ! xvimagesink

显示四路1080p相机#

#这里以相机的分辨率为1920x1080为例,在Ubuntu桌面下的终端按顺序执行下面的命令
#设置显示的宽度和高度,可以自定义
MIIVII_WIDTH=960
MIIVII_HEIGHT=540
#设置四个相机的图像格式以及实际的图像宽高
MIIVII_CONFIG="video/x-raw(memory:NVMM),format=(string)UYVY, width=1920, height=1080"

gst-launch-1.0 nvcompositor name=comp \
sink_0::xpos=0 sink_0::ypos=0 sink_0::width=$MIIVII_WIDTH sink_0::height=$MIIVII_HEIGHT \
sink_1::xpos=$MIIVII_WIDTH sink_1::ypos=0 sink_1::width=$MIIVII_WIDTH sink_1::height=$MIIVII_HEIGHT \
sink_2::xpos=0 sink_2::ypos=$MIIVII_HEIGHT sink_2::width=$MIIVII_WIDTH sink_2::height=$MIIVII_HEIGHT \
sink_3::xpos=$MIIVII_WIDTH sink_3::ypos=$MIIVII_HEIGHT sink_3::width=$MIIVII_WIDTH sink_3::height=$MIIVII_HEIGHT ! nv3dsink \
nvv4l2camerasrc device=/dev/video0 ! $MIIVII_CONFIG ! nvvidconv ! "video/x-raw(memory:NVMM),format=(string)NV12" ! comp. \
nvv4l2camerasrc device=/dev/video1 ! $MIIVII_CONFIG ! nvvidconv ! "video/x-raw(memory:NVMM),format=(string)NV12" ! comp. \
nvv4l2camerasrc device=/dev/video2 ! $MIIVII_CONFIG ! nvvidconv ! "video/x-raw(memory:NVMM),format=(string)NV12" ! comp. \
nvv4l2camerasrc device=/dev/video3 ! $MIIVII_CONFIG ! nvvidconv ! "video/x-raw(memory:NVMM),format=(string)NV12" ! comp.

问题排查#

相机显示无图像#

检查相机镜头盖是否打开。

相机显示绿屏#

检查相机是否只支持自触发模式,如果是,参考进阶部分。

相机显示颜色不对#

当相机图像格式不匹配的时候,会呈现下列效果。

此时需要检查图片格式是否设置正确。

GMSL​相机问题排查#

现象1:相机帧率与手册标注不一致#

解决办法:#

​验证相机型号配置:

  • 将相机连接到指定设备,确保在设备的网页设置中正确选择相机型号。

打开终端,输入以下命令(参数根据实际分辨率及接口调整):

 v4l2-ctl -d /dev/video0 --set-fmt-video=width=1920,height=1080,pixelformat=UYVY --stream-mmap  
  • 观察输出结果中的时间戳(例如ts: 33.327ms表示帧率约为30Hz)。

  • 多次执行仍不一致:联系相机厂商确认固件版本是否匹配。

现象2:无法修改帧率#

解决办法:#

​确认外触发支持:

询问厂商是否支持外触发模式。若支持,尝试通过终端命令修改帧率:

v4l2-ctl -d /dev/video0 --set-parm=目标帧率  

​小幅调整测试:

  • 尝试在默认帧率基础上增减5Hz(例如默认30Hz则测试25/35Hz):

    • 成功:相机硬件支持有限,需咨询厂商支持的帧率范围;

    • 失败:检查驱动或系统日志中的报错信息(如SDK报错),针对性修复。

​现象3:相机无法点亮或黑屏#

解决办法:#

​硬件适配检查:

  • 确认相机型号在设备支持的兼容列表中(需联系厂商获取最新清单)。

  • 检查相机接口(如GMSL/USB)是否插紧,线缆无损坏或氧化。

​配置节点一致性:

  • 在设备网页设置中,确保所选相机节点编号与实际物理接口一致(例如接口2对应配置中的“相机2”)。

​热插拔处理:

  • 若重新插拔相机,需在网页设置中重新保存配置或重启服务生效。

​现象4:图像显示为绿色#

解决办法:#

​图像格式校正:

  • 确认相机输出格式(如YUV422)与系统配置一致(常见格式为UYVY或YUYV)。

  • 格式不匹配:联系厂商更新相机固件,或使用调试工具切换显示模式。