我正在尝试使用 gstreamer alpha 创建一个绿屏应用程序。我正在使用 ximagesrc 来捕获具有绿色背景的窗口。然后我使用 alpha 覆盖捕获的绿色部分。但是,我什至不知道原因,新视频似乎无法播放。这是关于编解码器,还是两个视频之间存在某种同步问题?
我还包括了一个时间叠加,它被困在零。所以,新视频根本没有播放。然后我用了两种不同模式的videotestsrc,看到视频正在播放。
我的管道是:
gst-launch ximagesrc xname=Some\ Green\ Screen\ App ! videoscale ! video/x-raw-rgb ! timeoverlay ! decodebin2 ! alpha method=green ! videomixer name=mixer ! ffmpegcolorspace ! autovideosink videotestsrc pattern=snow ! videoscale ! video/x-raw-rgb, width=800, height=480 ! alpha ! mixer.
没有 ximagesrc 的播放示例:
gst-launch videotestsrc ! videoscale ! video/x-raw-rgb ! timeoverlay ! alpha method=green ! videomixer name=mixer ! ffmpegcolorspace ! autovideosink videotestsrc pattern=snow ! videoscale ! video/x-raw-rgb ! alpha ! mixer.
当我使用这个管道时,我期望一个覆盖的视频,“播放”。我看到一个输出,其中包括一帧叠加视频,但它没有播放。