我正在尝试使用 GStreamer 和 v4l2loopback 创建虚拟网络摄像头。问题是我想用Playbin,但是用的时候视频速度太快了。例如,当我执行以下命令时会发生这种情况:
gst-launch-1.0 -v playbin uri=file:/vagrant/test.avi
video-sink="videoconvert
! videoscale
! video/x-raw,format=YUY2,width=320,height=320
! v4l2sink device=/dev/video0"
将“framerate=20/1”添加到上限会引发“未协商错误”,而将其设置为“30/1”可以工作,但无助于解决速度问题。
另一方面,执行以下命令时我的速度正常:
gst-launch-1.0 -v filesrc location=/vagrant/test.avi
! avidemux
! decodebin
! videoconvert
! videoscale
! "video/x-raw,format=YUY2,width=320,height=320"
! v4l2sink device=/dev/video0
我用 Playbin 的最后一个例子中的过滤器尝试了很多组合,但没有一个有帮助。
任何帮助将不胜感激!