在Gstream上绘制像素

2024-05-15 15:37:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试用Python构建一个可以在视频上绘制内容的应用程序。我还没有找到一种使用gstreamer+Tkinter实现这一点的方法;我不认为tk允许您进行透明的画布。所以我想改用gtk,但我有点迷茫——我希望能够在顶部放置某种透明的覆盖层并推送像素,但我也不认为存在透明绘图区域这样的东西。所以我需要一种方法来编辑一个DrawingArea的内容,在每一帧视频出现在屏幕上之前。我试着用暴露事件,但没用。在

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

编辑:尝试使用“切换”信号,但它疯狂地闪烁。PiTiVi有一个定制的管道,它有一个状态改变的信号,他们用这个信号来与Cairo画线和圆。所以这是完全可行的。。。在

编辑2:好的,好的。皮提维只有在视频暂停时才会画画;我想我可以处理这个问题。这就是它使用状态改变信号的原因——你可以观察状态改变消息并模拟信号。我可以处理,但如果能把每一帧都画出来就太好了。在


Tags: 方法应用程序编辑内容gtk视频信号tkinter