c++ - Gstreamer:每 5 秒使用 multifilesink 保存图像/jpeg
问题描述
我试图弄清楚如何每 N 秒使用 multifilesink 保存图像(比如说 5)。我的 get-launch-1.0 管道如下:gst-launch-1.0 videotestsrc ! 'video/x-raw, format=I420, width=400, height=400, framerate=1/5' ! jpegenc ! multifilesink location=/some/location/img_%06d.jpg
我在想帧率选项可以控制捕捉速度,但它似乎没有任何影响。如何延迟此管道以仅每 N 秒保存一个 jpeg?
编辑:所以我想如果你设置“is-live = true”,这将如何与videotestsrc一起工作,但我想用nvcamerasrc或nvarguscamerasrc来做到这一点。
解决方案
当 videotestsrc 没有作为实时源运行时,它将尽可能快地输出帧,根据源板上配置的输出帧速率更新时间戳。将其设置为实时模式将确保它实际匹配预期的帧速率。对于像摄像机源这样的真正实时源来说,这应该不是问题。
然而,这样的事情可以强制与 videotestsrc 同步:
gst-launch-1.0.exe videotestsrc ! video/x-raw, format=I420, width=400, height=400, framerate=1/5 ! identity sync=true ! timeoverlay ! jpegenc ! multifilesink location="/some/location/img_%06.jpg"
推荐阅读
- unit-testing - 如何为茉莉花请求传递令牌
- azure - 什么是 Docker 注册表服务连接?
- linux - 如何通过从文件名中删除字符串来重命名文件?
- python - 使用 Flask 并行运行 URL 请求
- node.js - 位于子文件夹中的视图无法在快速应用程序中使用本地引导文件
- javascript - 在 html 表(jquery)上应用多个过滤器
- image-processing - 网络摄像头通常在以较低分辨率采样之前在固件/硬件中进行过滤吗?
- python-3.x - 无法使用 Python 3.8 在 Ubuntu 18.04 上创建 virtualenv
- python - 应用程序启动失败,因为它无法找到或加载 Qt 平台插件“windows”
- mongodb - 如何在mongodb的管道阶段删除字段名