How do I use gstreamer in c++

How can I use gstreamer in a c++ program?

I was able to use some of these commands successfully. [url]NVIDIA Jetson TX2 GStreamer Pipelines | Jetson GStreamer pipelines | RidgeRun

But I want to write a c++ program.
I found this tutorial. [url]Basic tutorial 1: Hello world!
But it seems to be in C. Should I just adjust it for c++?

I found gstreamermm which seems to be a c++ wrapper for gstreamer. [url]https://gstreamer.freedesktop.org/data/events/gstreamer-conference/2016/Marcin%20Kolny%20-%20gstreamermm%20-%20C++%20way%20of%20doing%20GStreamer-based%20applications.pdf[/url]
Is this the best option?

Would I have to install gstreamermm from here? [url]http://ftp.gnome.org/pub/gnome/sources/gstreamermm/[/url]

There are samples in below links. FYR.
[url]NVMM memory - Jetson TX1 - NVIDIA Developer Forums
[url]https://devtalk.nvidia.com/default/topic/1031734/jetson-tx2/appsrc-link-to-nvvidconv-error-with-reason-not-negotiated-4-/post/5250184/#5250184[/url]
[url]Code to send a bayer video feed from a TX1 to an h.264 encoder to an RTP sink - Jetson TX1 - NVIDIA Developer Forums