Usage of the GstRTPHeaderExtension API

Matthew Waters ystreet00 at
Sun Feb 12 01:49:30 UTC 2023

The answer for what an implementation wants depends on if the header 
extension requires any changes to any of the caps or whether it can use 
the default implementation.

There is no hard rule for how the caps mapping to rtp header extension 


On 11/2/23 02:35, Serhan Gül via gstreamer-devel wrote:
> Hi,
> I'm writing a custom header extension 
> using GstRTPHeaderExtensionClass. Checking the implementations of the 
> existing header extension implementations in GStreamer, I noticed that 
> there are differences in the used API methods to update the 
> payloader/depayloader caps. For example. rtphdrextcolorspace uses 
> gst_rtp_header_extension_set_non_rtp_sink_caps to pass the payloader's 
> sink caps to the extension and 
> gst_rtp_header_extension_update_non_rtp_src_caps to update the 
> deployader's src caps. However,  rtphdrextclientaudiolevel and 
> rtphdrextmid use gst_rtp_header_extension_set_caps_from_attributes. 
> Finally, rtphdrextstreamid uses none of the above methods; so it seems 
> like it does not set any caps.
> So I have two questions:
> 1. What is the difference between using these methods?
> 2. Why does rtphdrextstreamid not use any of them?
> Thanks!
> Best regards,
> Serhan

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 495 bytes
Desc: OpenPGP digital signature
URL: <>

More information about the gstreamer-devel mailing list