是否可以使用 libvlcsharp 将动态 marq 文本和徽标设置到视频流录制中?

Is it possible to set dynamic marq text and logo into a video stream recording using libvlcsharp?

大家好, 我有一个问题,也许有人可以就如何实施或什至可能提供一些有用的想法:
我想从 IP 摄像机录制 RTSP 流,我想在录制中添加一些文本信息和徽标,以便在播放时可以查看。
为此,我首先创建了一个 MediaPlayer 元素来连接到 IP-cam,复制到显示器上,并通过 UDP 重播。

using (var stream01_view = new Media(libVLC, "rtsp://192.168.10.214:5554",FromType.FromLocation))
{
    stream01_view.AddOption(
            ":sout=#duplicate{" +
            "dst=display{noaudio}," +
            "dst=std{access=udp,mux=ts,dst=:1234}");
    stream01_view.AddOption(":sout-keep");
    player.Play(stream01_view);
}

第二个流连接到本地 UDP 转换并输出到文件

using (var stream01_record = new Media(libVLC, "udp://@:1234", FromType.FromLocation))
{
    stream01_record.AddOption(":sout=#transcode{sfilter=marq}:file{mux=ts,dst=VideoMarqLogo.mp4}");
    stream01_record.AddOption(":sout-keep");
    recorder.Play(stream01_record); 
}

调用 class MediaPlayer 方法 SetMarqueeIntSetMarqueeString 没有给出预期的结果。

感谢mfkl指出正确的方向。 所以解决问题的方法是:

stream01_record.AddOption(":sout=#transcode{ vcodec=h264, scale=0.75, " +
                    "sfilter=marq{file='marq.txt',position=9}," +
                    "vfilter=logo{file='logo.png',position=6}}" +
                   ":file{mux=ts,dst=VideoMarqLogo.mp4}");

虽然有点警告,但这段代码 CPU 密集。
我想知道是否有办法使用 GPU 编码来做到这一点。