图像数据作为源在gstreamer
image data as source in gstreamer
我想制作一个GStreamer应用程序,它将图像数据作为源而不是文件位置。我的目的是显示通过tcp接收的图像。当tcp获得图像数据(字节数组)时,它应该将数据直接传递给gstreamer插件,而不是将其保存在本地。
应该由multifilesrc来完成。
描述从顺序命名的文件中读取缓冲区。如果与an一起使用图像解码器,需要使用"caps"属性或capsfilter来强制到包含帧率的上限。否则图像解码器发送EOS后第一张照片。我们还需要一个可视元素来设置在第一个缓冲区之后的所有缓冲区上设置时间戳帧速率。
文件名是通过将"%d"替换为索引来创建的printf () .
示例启动行
gst-launch-1.0 multifilesrc location="img.%04d.png" index=0 caps="image/png,framerate=(fraction)12/1" ! pngdec ! videoconvert ! videorate ! theoraenc ! oggmux ! filesink location="images.ogg"
这个管道创建一个视频文件"images "。Ogg"名称为img.0000.png、img.0001.png等的PNG文件
来源:http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good-plugins/html/gst-plugins-good-plugins-multifilesrc.html
因此,如果您通过命令行使用gstreamer,这应该可以达到目的。您只需要指定文件,并在收到文件时对文件进行"循环"。
否则,编写一个使用multifilesrc作为源文件的gstreamer管道就不那么复杂了。
相关文章:
- 防止主数据类型C++的隐式转换
- 用于访问容器<T>数据成员的正确 API
- 嵌套在类中时无法设置成员数据
- 使用流处理接收到的数据
- 静态数据成员的问题-修复链接错误会导致编译器错误
- 处理小于cpu数据总线的数据类型.(c++转换为机器代码)
- 在cuda线程之间共享大量常量数据
- C++将文本文件中的数据读取到结构数组中
- 如何在C++中序列化结构数据
- 在C++中打印指向不同基元数据类型的指针的内存地址
- 通过套接字[TCP]传输数据 如何在C / C ++中打包多个整数并使用send() recv()传输数据
- 在c代码之间共享数据的最佳方式
- OPENCV中的GSTREAMER不会通过UDP发送视频数据
- 如何使用GStreamer播放PCM数据数组
- 如何从 GStreamer 管道读取数据中的特定字段
- gstreamer-1.0 从 GstAppSink 中的 GstSample 获取数据
- Gstreamer Appsink未从管道获取数据
- 强制gstreamer appsink缓冲区只能容纳10ms的数据
- Gstreamer:为什么我不能在本地主机上通过UDP发送数据?
- 图像数据作为源在gstreamer