art vanderlay
art vanderlay

Reputation: 2463

gstreamer correct way to get ghost pad element by name

GST 1.11,

I have created a ghost pad and confirmed it is working by the following

gchar *ghost_pad_1_name = NULL;
ghost_pad_1_name = "myGhostPad'
ghost_pad_1 = gst_ghost_pad_new (ghost_pad_1_name, pad_src_1);

if(GST_PAD_DIRECTION(ghost_pad_1) == GST_PAD_SRC){
    printf("Ghost is SRC -> correct\n"); // Correct
    }  

printf("Ghost Pad Name = %s\n",GST_ELEMENT_NAME(ghost_pad_1)); // myGhostPad

however trying to get the element by using the following returns NULL

GstElement *TestGhostPad = gst_bin_get_by_name (ghost_pad_1_name);
if (!TestGhostPad){
    printf("Ghost Pad is NULL\n"); // This is called
}
if (TestGhostPad){
    printf("Ghost Pad is NOT NULL\n");
}

Am I using this function correctly? Is there another method to get the Ghost Pad by name.

thanks Art

Upvotes: 1

Views: 1979

Answers (1)

Korey
Korey

Reputation: 381

GstElment* element;
GstElement* element2;
GstPad* GhostPad;

GhostPad = gst_element_get_static_pad(element, "sink");
gst_element_add_pad(element2, gst_ghost_pad_new("videosink", GhostPad));
gst_object_unref(GST_OBJECT(GhostPad));

GstPad* sinkpad = gst_element_get_static_pad(element2,"videosink");

Upvotes: 2

Related Questions