Appsink and appsrc using in pipeline
gonengoktug
gonengoktug at gmail.com
Wed Jan 29 12:39:16 UTC 2020
Hi all, I tried to create a pipeline containing source(i.e camera or video)
appsink(to get buffer as image and text overlay via OpenCV) appsource (to
push modified images as buffer) and sink (output video). So am I doing right
thing or it's just a waste of time. I don't have anyone to guide me in this
challenge so any guide or help will be amazing for me
On the other hand,
gst_element_link_many(mydata.src,mydata.appsink,mydata.appsrc,mydata.sink,NULL)
returns false. I guess it means elements are not linked in the pipeline so
how can I link them?
Thanks
Here is my still progressing code. I am working on now.
Sincerely
typedef struct {
GMainLoop *loop;
GstElement *pipeline,*appsink,*appsrc;
GstElement *sink,*src;
GstBus *bus;
GstMessage *msg;
guint srcid;
}data;
int main(int argc, char*argv[]) {
g_printerr("Initializing..");
gst_init(&argc,&argv);
g_printerr("Initialized..");
data mydata;
g_printerr("Setting elements(pipeline,appsink,appsrc..etc");
mydata.pipeline=gst_pipeline_new("mypipeline");
mydata.appsrc=gst_element_factory_make("appsrc","myappsrc");
mydata.appsink=gst_element_factory_make("appsink","myappsink");
mydata.src=gst_element_factory_make("videotestsrc","mysrc");
mydata.sink=gst_element_factory_make("autovideosink","mysink");
if(!mydata.pipeline || !mydata.appsink || !mydata.appsrc || !mydata.src
|| !mydata.sink)
g_printerr("Couldn't create at least one element or pipeline");
src --> appsink --> appsrc --> sink
gst_bin_add_many(GST_BIN(mydata.pipeline),mydata.src,mydata.appsink,mydata.appsrc,mydata.sink,NULL);
gst_element_link_many(mydata.src,mydata.appsink,mydata.appsrc,mydata.sink,NULL);
--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
More information about the gstreamer-devel
mailing list