RK628底层调试,使用V4L2调试工具抓图

  • 查看链路拓扑结构

media-ctl -d /dev/media0  -p      //目录也可能是/dev/media1

可以查看到RK628的设备是/dev/v4l-subdev3    分辨率和帧模式:UYVY8_2X8/1920x1080@10000/300000

RK628底层调试,使用V4L2调试工具抓图_第1张图片

  • 查看链路情况,并进行配置,如果链路正确则省略

media-ctl -d /dev/media0 -l \

'"m00_b_rk628-csi rk628-csi":0->"rockchip-csi2-dphy0":0 [1]'

media-ctl -d /dev/media0 -l \

'"rockchip-mipi-dphy-rx":1->"rkisp-isp-subdev":0 [1]'

media-ctl -d /dev/media0 -l '"rkisp-input-params":0->"rkisp-isp-subdev":1 [1]'

media-ctl -d /dev/media0 -l '"rkisp-isp-subdev":2->"rkisp_mainpath":0 [1]'

media-ctl -d /dev/media0 -l '"rkisp-isp-subdev":2->"rkisp_selfpath":0 [1]'

media-ctl -d /dev/media0 -l '"rkisp-isp-subdev":3->"rkisp-statistics":0 [1]'
  • 配置分辨率

media-ctl -d /dev/media0 \

--set-v4l2 '"rkisp-isp-subdev":0[fmt:UYVY2X8/1920x1080]'

media-ctl -d /dev/media0 \

--set-v4l2 '"rkisp-isp-subdev":0[crop:(0,0)/1920x1080]'

media-ctl -d /dev/media0 \

--set-v4l2 '"rkisp-isp-subdev":2[fmt:UYVY2X8/1920x1080]'

media-ctl -d /dev/media0 \

--set-v4l2 '"rkisp-isp-subdev":2[crop:(0,0)/1920x1080]'
  • 查看配置结果

media-ctl -d /dev/media0  -p
  • 抓取图像YUV文件

v4l2-ctl --verbose -d /dev/video0 \

--set-fmt-video=width=1920,height=1080,pixelformat='UYVY' \

--stream-mmap=4 --stream-skip=5 --stream-count=10 \

--stream-to=/data/rk628_1920x1080.yuv --stream-poll
  • 获取图像数据流

v4l2-ctl --verbose -d /dev/video0 \

--set-fmt-video=width=1920,height=1080,pixelformat='UYVY' \

--stream-mmap=4 \

--set-selection=target=crop,flags=0,top=0,left=0,width=1920,height=1080

pixelformat属性根据实际配置而定,具体支持哪些,使用如下命令查看

v4l2-ctl -d2 --list-formats-ext

RK628底层调试,使用V4L2调试工具抓图_第2张图片

  • 使用ffmpeg查看YUV文件

将YUV文件导入到linux系统或者windows系统中。如下是UBUNTU系统

ffplay -f rawvideo -video_size 1920x1080 -pix_fmt uyvy422 rk628_1920x1080.yuv

关于pix_fmt参数可以使用如下命令查看,并找到与图像对应的

ffmpeg -pix_fmts

抓取YUV时,出现如下报错,可以试试插拔信号源,或者查看dts中rk628_csi下plugin-det-gpios和hpd-output-inverted的配置

m00_b_rk628-csi rk628-csi: rk628_hdmirx_phy_setup hdmi rxphy lock failed, retry:2

RK628底层调试,使用V4L2调试工具抓图_第3张图片

你可能感兴趣的:(Rockchip,开发语言,ffmpeg,v4l2,rk628)