1

我不明白如何创建 .mjpeg 文件。据我了解,它只是一系列 jpeg 文件。我在网上搜索了一种将它们组合成一个文件的方法,但没有找到任何信息。有人说,只需要创建一个迷你服务器,它会一个接一个地显示图像。

我正在尝试使用以下应用程序 git://git.ideasonboard.org/uvc-gadget.git 来测试 UVC,其中一个选项是 mjpeg 文件的路径。我不太清楚是否可以创建一个 mjpeg 文件。

非常感谢有关如何创建 mjpeg 文件的任何帮助,以便我可以将它与上述应用程序一起使用。

4

1 回答 1

1

我很难找到相同的东西。当 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 上同步工作。希望你能走得更远。

于 2017-10-16T01:54:14.833 回答