飞凌的3588板子 外设很丰富1.列出 相关节点 太多了2.测试HDMI in 也就是HDMI输入功能将一台有输出的hdmi线插入开发板 demsg 可以到看到已经正确识别了grep -H hdmi /sys/class/video4linux/video*/name看下对应哪个节点 可以看到是73v4l2-ctl -d /dev/video73 --query-dv-timings 可以看到相关信息 如果没有插入 会提示failed用ffmpeg采集 并推流 命令如下 这个ffmpeg是编译ffmpeg-rockchip版本的 支持硬件加速./ffmpeg -f v4l2 \-input_format nv12 \-video_size 1920x1080 \-framerate 60 \-i /dev/video73 \-c:v h264_rkmpp \-pix_fmt nv12 \-b:v 4M \-maxrate 8M \-bufsize 8M \-g 60 \-f rtsp -rtsp_transport tcp \rtsp://192.168.131.132/live/hdmi然后打开rtsp流发现可以正常观看了3.测试USB摄像头插入USB摄像头之后 dmesg可以看到已经识别了v4l2-ctl --list-devices 列出相关设备 好多最后一个就是USB摄像头了 有好几个节点 用命令测试v4l2-ctl -d /dev/video74 --list-formats-ext 如下图 用74 别的两个都不对这里可以看到摄像头支持的具体格式分辨率 fps等用ffmpeg测试推流 然后用vlc打开发现可以正常打开如下图./ffmpeg -f v4l2 -input_format mjpeg -video_size 1280x720 -framerate 30 -i /dev/video74 -c:v h264_rkmpp -b:v 2M -g 30 -f rtsp -rtsp_transport tcp rtsp://192.168.131.132/live/webcam4.MIPI摄像头同样根据刚刚list-device 列出的 找到mainpath那个 mainpath的第一个就是视频节点我的就是55 和64 通过list-format命令查看千问分析的v4l2-ctl抓图一直失败千问的分析 我昨天刷了 2204的官方固件了 之前是 QTLinux5.10的系统是正常的无意中发现 开机之后v4l2-ctl -d /dev/video55 --set-fmt-videowidth2112,height1568,pixelformatNV12 --stream-mmap4 --stream-count10 --stream-todata.yuv这个是可以的但是如果 把这个10帧去掉 过程中按ctrlC 之后再次执行就不行了 不知道为什么 而且必须重启反复试了 只有开机第一次 能打开 后面 都打不开了 目前 无法解决只能拿USB摄像头来测试了但是代码这里 一直返回的是null 后来看了 ffmpeg源码 demux_list.c中 没有 ff_v4l2_demuxer需要重新编译ffmpeg 加入这个 --enable-libv4l2 提示找不到libv4l2 需要 安装这个库