Search code examples
c#gstreamergstreamer-sharp

Image overlay (gdkpixbufoverlay)


How I can add image overlay in GStreamer application to pipeline ? Thanks in advance.

var image = ElementFactory.Make("gdkpixbufoverlay");
image["location"] = @"D:\camera.png";
image["overlay-height"] = 200;
image["overlay-width"] = 200;
image["offset-x"] = 100;
image["offset-y"] = 100;

pipeline.Add(image);

What is missing?


Solution

  • var img = ElementFactory.Make("gdkpixbufoverlay");
            img["location"] = @"D:\camera.png";
            img["overlay-height"] = 200;
            img["overlay-width"] = 200;
            img["offset-x"] = 0.1;
            img["offset-y"] = 0.1;            
            pipeline.Add(img);
            var ret = pad.Link(img.GetStaticPad("sink"));
            if (ret != PadLinkReturn.Ok)
            {
                sysDbg.WriteLine("Error linking image overlay.");
            }
            img.SyncStateWithParent();
            pad = img.GetStaticPad("src");