该问题类似于在 gstreamer 中作为源的图像数据中提出的问题
这是我的要求:
1. 有一个二进制文件[将其视为任何扩展名],其中包含多个图像数据 [在一个二进制文件中说 10 个图像数据]
2. 提取二进制文件并且图像数据是以 .jpg 格式保存到 Windows 中的文件夹位置
3. 对于视频显示,我使用了以下管道 gst-launch-1.0 multifilesrc location=":/Images/%d.jpg" caps="image/jpeg,framerate=10/5 “!JPEG格式!autovideosink **在 Images 文件夹下,有 .jpg 文件,名称以 1.jpg、2.jpg 等开头。%d 将从路径起始索引中获取图像,从 1 到值的最高计数 [连续编号的图像]
到这里为止一切看起来都很好。现在的要求是跳过步骤#2,即我们不需要将要存储在物理驱动器路径中的图像二进制数据转换为图像文件。相反,我们正在寻找类似将从二进制文件中提取的二进制数据直接作为源填充传递到 GStreamer 管道的方法。这可能吗 ?如果是这样,我应该如何编写管道的源垫?
原因:二进制文件中有多达 32 GB 的数据[这些是压缩在二进制文件中的网络摄像头图像],因此将这些数据再次保存为图像格式是驱动器中需要另外 32 GB 的空间[这样一直持续下去] . 由于我们已经有了二进制格式的图像数据,我们需要一种机制将这些二进制数据[以 C 编程中的缓冲区的形式] 直接传递给 GStreamer 管道源。
注意:gstreamer 1.0 用于 windows 操作系统