gst_parse_launch() UDP and fakesink

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

gst_parse_launch() UDP and fakesink

qbranchmaster
This post was updated on .
Hello.
In my application I am opening MP4 file and then rendering it to the OpenGL texture. It is working fine. I am creating pipeline in this way:
       
pipeline_video_0_ = GST_PIPELINE(gst_parse_launch("filesrc location=video.mp4 ! "
                                                                            "qtdemux ! avdec_h264 ! videoconvert ! "
                                                                            "glupload ! gleffects effect=0 ! "
                                                                            "fakesink sync=1 name=video1", nullptr));

But now I want to open UDP stream. To do that I have to use this code:

gst.pipeline_video_0_ = GST_PIPELINE(gst_parse_launch("filesrc location=video1.sdp ! sdpdemux ! "
                                                                                "decodebin ! videoconvert ! glupload ! "
                                                                                "gleffects effect=0 ! identity name=video1 ! "
                                                                                "glimagesink sync=1", nullptr));

This code is working, but I do not understand why I have to use "identity" element (I found in the internet some example which used it) and why I have to use glimagesink? I want to use fakesink, because using glimagesink another window with video shows up.
How to create correct pipeline which allows me to receive data from UDP and push it to the fakesink?
Thanks!