我想在C中使用gstreamer进行某种图像处理,在那里我读取了一对图像然后将它们整合在一个大图像中(我的程序中的图像是用户以后可以选择的选项)而且我不喜欢我不想使用任何外部库来做到这一点 任何sugesstions将是伟大的
答案 0 :(得分:0)
使用multifilesrc在一个文件中连接多个文件。 http://gstreamer.freedesktop.org/wiki/MultiFileSrc
答案 1 :(得分:0)
所以基本上你想要合成图像,即给定图像A B C D产生这样的图像,例如:
________________
| | |
| A | B |
|______|_______|
| | |
| C | D |
________________
如果是这样,视频混音器将是一个不错的选择,如果确实如此,我会编辑我的答案。
度过美好的一天!
编辑:由于这是您所要求的,以下是如何使用视频混合器合成两个不同大小的图像的示例:
gst-launch-1.0 uridecodebin uri=file:///home/meh/Pictures/questions.jpg ! videoscale ! video/x-raw, width=320, height=240 ! imagefreeze ! videomixer name=m sink_1::xpos=320 ! autovideosink uridecodebin uri=file:///home/meh/Pictures/testsrc.png ! videoscale ! video/x-raw, width=320, height=240 ! imagefreeze ! m.
说明:
我们为图像创建了两个解码器,使用视频尺度将它们调整为任意大小(此处为320 x 240),冻结它们并将它们发送到视频混合器。 videomixer将sink_1的x位置设置为320,这会偏移第一个图像,以便第二个图像也出现。
如果您计划对此进行动态支持,http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-editing-services/html/ch01.html,GES对您来说将是一个不错的选择,请随时来到freenode上的#pitivi,如果你想ping我,我的昵称是Mathieu_Du
免责声明:使用gst 1.3测试,应该与1.X系列一起使用,不太确定0.10。