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. https://developer.ridgerun.com/wiki/index.php?title=Gstreamer_pipelines_for_Jetson_TX2#H264_UDP_Streaming

But I want to write a c++ program.
I found this tutorial. https://gstreamer.freedesktop.org/documentation/tutorials/basic/hello-world.html?gi-language=c
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. https://gstreamer.freedesktop.org/data/events/gstreamer-conference/2016/Marcin%20Kolny%20-%20gstreamermm%20-%20C++%20way%20of%20doing%20GStreamer-based%20applications.pdf
Is this the best option?

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

There are samples in below links. FYR.
https://devtalk.nvidia.com/default/topic/1010111/jetson-tx1/nvmm-memory/post/5158652/#5158652
https://devtalk.nvidia.com/default/topic/1031734/jetson-tx2/appsrc-link-to-nvvidconv-error-with-reason-not-negotiated-4-/post/5250184/#5250184
https://devtalk.nvidia.com/default/topic/1003598/