我有两台相机,一台是微软的,另一台是罗技的。
对于两个相机,我都使用了以下管道。
gst-launch-1.0 -v v4l2src device=/dev/video1 ! videoconvert ! video/x-raw,format=I420,width=640,height=480 ! fpsdisplaysink
对于微软:
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = 渲染:678,丢弃:10,当前:30.10,平均:29.71
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = 渲染:678,丢弃:10,当前:30.10,平均:29.71
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = 渲染:678,丢弃:10,当前:30.10,平均:29.71
但是,当我的手非常靠近相机,或者我用手合上相机时,结果是,
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = 渲染:2554,丢弃:44,当前:7.52,平均:28.93
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = 渲染:2558,丢弃:44,当前:7.51,平均:28.81
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = 渲染:2558,丢弃:44,当前:7.51,平均:28.81
帧率大幅下降。这种情况下有什么问题以及如何解决?
对于罗技:
我曾经使用过相同的管道,但结果如下,
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = 渲染:0,丢弃:79,fps:0.00,丢弃率:24.07
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = 渲染:0,丢弃:79,fps:0.00,丢弃率:24.07
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = 渲染:0,丢弃:79,fps:0.00,丢弃率:24.07
我很困惑,这两种情况有什么问题?