我正在尝试编写一个python应用程序,并让gstreamer播放我录制的视频文件(并在稍后使用textoverlay在视频上添加一些字幕)。在
但看来我还是有一些基本的问题来理解这些垫子的工作原理。。我好像无法正常连接。在
我在上面构建的基本示例是一个显示来自网络摄像头的视频的简单应用程序。所以我知道代码是有效的,只是我的管道把事情搞砸了。在
同样,如果我在终端中运行execute下面的管道,它会起作用:
gst-launch-0.10 filesrc location=GOPR0042.MP4 ! decodebin2 ! ffmpegcolorspace ! videoflip method=2 ! xvimagesink
现在,我尝试重新创建到python应用程序的管道,如下所示:
^{pr2}$现在我看到有人用动态键盘把解码器和一些音频连接起来,但我真的不明白它是怎么工作的。。。 所以,我想我不能直接连接decoderbin2和ffmpegcolorspace? 有人能解释一下为什么吗?在
另外,在我的下一步中,我想在管道中添加textoverlay元素来显示字幕,您是否看到了问题?在
按照最近自己回答问题的习惯,我也会在这里这样做:)
所以,经过一点阅读和黑客攻击,我确实意识到我并没有真正得到动态垫和,他们需要如何连接,只有当有东西进来。在
所以基本上我用2个队列解决了上面的问题,音频和视频都是这样。然后将这些队列连接到解码器,并且需要将它们放置在demuxer动态连接之后。 而且解码器和接收器似乎需要一个动态连接的垫子。在
本论坛上一个非常清楚地解释了这一过程的问题是: gstreamer code for playing avi file is hanging
相关问题 更多 >
编程相关推荐