我很难找到相同的东西。当 mencoder 支持各种电影容器但不支持 UVC 有效负载格式时,通读 mencoder 的手册页尤其容易产生误导。
这似乎对我在 Ubuntu 16.04 上记录来自网络摄像头的字节流有用:
gst-launch-1.0 v4l2src device=/dev/video0 ! 'image/jpeg,width=1280,height=720,framerate=30/1' ! \
filesink buffer-size=0 location=mystream.mjpeg
其中 30 fps 的 1280x720 是guvcview
我的网络摄像头支持的。
来源:链接
编辑:后来我了解到v4l2-ctl
:
v4l2-ctl -d /dev/video0 --list-formats-ext # identify a proper resolution/format
v4l2-ctl --set-fmt-video=width=1280,height=720,pixelformat=1
v4l2-ctl --stream-mmap=1 --stream-count=30 --stream-to=mystream.mjpeg
当 stream-count 设置为 1 时,它会生成一个常规的 JPEG 文件,可以使用xdg-open
. 否则,运行file mystream.mjpeg
以确认输出具有正确的分辨率和帧数。
让这些数据实际使用uvc-gadget -i
可能会涉及更多。鉴于它可能需要适当的补丁、内核配置和调试,到目前为止,我只获得了未压缩的格式,以便在我的 Raspberry Pi Zero 上同步工作。希望你能走得更远。