GStreamer从MJPEG UDP流中提取JPEG图像

时间:2016-09-02 14:13:22

标签: udp jpeg gstreamer mjpeg

我正在使用以下命令尝试使用GStreamer通过UDP流从MJPEG获取单个JPEG图片:

gst-launch-1.0 udpsrc port=53247 ! jpegdec ! jpegenc ! filesink location=test.jpeg

问题是,即使我设法将流的快照作为JPEG图像,管道也不会停止,输出图像的大小会持续增长,直到我手动停止管道。

我也尝试过选项num-buffers=1,但我只得到一张完全黑色的图像。

是否有一个命令可以让我正确地从流中获取JPEG格式的快照?

1 个答案:

答案 0 :(得分:0)

我找到了一个部分回答我问题的解决方案。

我根据经验将变量num-buffers设置为75,这在我的情况下足以获得完整的图像,并为我提供合理权重的JPEG文件。

命令如下:

gst-launch-1.0 -e udpsrc port=53247 num-buffers=75 ! jpegdec ! jpegenc ! filesink location=test.jpeg

但是,由于num-buffers是根据经验设定的,我认为这个解决方案不是最适应的。