I don't know if there are any other options.
My use case was H264 video, and I could find that KLV metadata should be supported as part of the MPEG-TS container.
And since I was also streaming MJPEG I found out I could hack the EXIF tag to add custom metadata as well.
I don't know if there are any other container formats that also support custom metadata.
Or any other formats.
Though it seems to be possible to just send KLV metadata directly as well:
https://gstreamer.freedesktop.org/documentation/rtp/rtpklvpay.html?gi-language=c