在Gstreamer上绘制像素

时间:2012-12-28 08:15:17

标签: python video drawing pygtk python-gstreamer

我正在尝试用Python构建一个可以在视频之上绘制内容的应用程序。我还没有找到使用gstreamer + Tkinter的方法;我不认为tk会让你做透明的画布。所以我看过使用gtk而不是,但我有点迷失 - 我会喜欢能够在顶部放置某种透明覆盖并推动像素,但我不知道我认为还有透明的DrawingArea这样的东西。所以我需要一种方法来在每个视频帧进入之后但在它显示到屏幕之前编辑DrawingArea的内容。我尝试使用expose-event但是没有用。

有关从哪里开始的任何建议?我希望我的最终产品是一个小界面,让用户在视频上绘制线条和多边形以及以编程方式绘制像素 - 如果可能的话,将结果保存到帧和/或视频中。因此,更有可能实现这一目标的方向将是首选。

编辑:尝试使用“切换”信号,但它疯狂地闪烁。 PiTiVi有一个自定义管道,它有一个状态改变信号,用于用开罗绘制线条和圆圈。所以这完全可行......

编辑2:对,好的。 PiTiVi仅在视频暂停时绘制;我想我可以解决这个问题。这就是使用状态改变信号的原因 - 你可以观察状态变化信息并模拟信号。我可以解决这个问题,但是画出每一帧都会非常好。

0 个答案:

没有答案