0
我试图从iOS中的运行管道创建快照。我使用一个按钮来拍摄快照。从iOS的gstreamer中运行管道获取快照
我有以下的管道
udpsrc auto-multicast=true address=224.1.1.1 port=5004"
+ " ! application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, sprop-parameter-sets=(string)\"Z0JAH6aAQAYZAA\\,aM4wpIAA\", payload=(int)96, ssrc=(uint)19088743, timestamp-offset=(uint)0, seqnum-offset=(uint)0"
+ " ! rtpjitterbuffer latency=400"
+ " ! rtph264depay ! avdec_h264 ! videoconvert"
+ " ! tee name=snapshot snapshot. ! queue ! valve name=snap drop=true ! jpegenc ! filesink name=filepath location=screenshot.jpg async=false snapshot. ! queue"
+ " ! autovideosink
所以我用下面的代码在我的按钮处理阀:
GstElement *element = gst_bin_get_by_name (GST_BIN (pipeline), "snap");
if (strcmp("drop", "drop") == 0)
{
gboolean prop_val = FALSE;
// if the property value is true, then send an EOS.
if (strcmp("false", "true") == 0)
{
gst_element_send_event(element, gst_event_new_eos());
prop_val = TRUE;
} else {
prop_val = FALSE;
}
g_object_set (element, "drop", prop_val, NULL);
}
但有了这个代码,我只能拿一个屏幕截图。我无法设置图像的文件名。
如何在不阻止流的情况下保存屏幕截图,并且每次单击该按钮时都将图像保存为具有自定义名称的文档文件夹?