You can use gst_parse_launch to create a pipeline using the launch syntax.
I've found this helpful to prototype with gst-launch-1.0 and then pull into a separate program down the road. I found it to be pretty hairy trying to create and link all the individual elements manually in complex pipelines.
https://gstreamer.freedesktop.org/documentation/gstreamer/gs...