有没有办法发现某个网络摄像头的所有可用编码(例如x-raw-rgb -xraw-yuv)?
Morevoer,我想发现可用的解决方案。
谢谢!
答案 0 :(得分:2)
是的,将v4l2src元素设置为ready并检查src pad上的大写字母。该元素将封顶列表缩小到打开并查询实际设备时实际支持的封顶列表。这种情况发生在READY状态。
答案 1 :(得分:1)
我所做的是以下(命令行):
GST_DEBUG=v4l2src:3 gst-launch v4l2src ! decodebin2 ! xvimagesink
如果onboard上的视频源改变了" v4l2src"。这将显示大量信息,来自"探测上限:"视频源支持的格式很长。
以下是我机器上的相同复制/粘贴:
探测上限:video / x-raw-yuv,format =(fourcc)YUY2,width =(int)1280, height =(int)720,interlaced =(boolean)false, pixel-aspect-ratio =(fraction)1/1,framerate =(fraction){10/1}; video / x-raw-yuv,format =(fourcc)YUY2,width =(int)640,height =(int)480, interlaced =(boolean)false,pixel-aspect-ratio =(fraction)1/1, framerate =(fraction){30/1}; 所以你要找的信息是:
! video/x-raw-yuv, framerate=30/1, width=640, height=480, interlaced=false !
如果来自探测列表的任何内容都不会导致错误: 无法协商格式