GNOME Bugzilla – Bug 721821
rtspsrc: update pt map when using decoders
Last modified: 2014-02-20 21:08:12 UTC
If an RTP decoder is requested in rtspsrc (e.g. to add SRTP support), the source pad in rtspsrc will get the wrong caps. When rtpptdemux signal request-pt-map is emitted, the rtspsrc request_pt_map callback will be called. This function returns stream->caps which have a media type obtained using the incoming transport (application/x-srtp). There should be a way to update this outgoing caps.
Created attachment 265748 [details] [review] add update-pt-map signal This is an attempt to solve this, but I'm not really convinced of it. Actually, rtspsrc doesn't even expose RTP encoders/decoders. I'm adding them manually in rtspsrc. And, as I am modifying rtspsrc I could already change the request_pt_map to return the caps that I want. May be a complete patch providing RTP encoders/decoders in rtspsrc would make more sense.
I think this might be over complicated. The only supported rtspsrc source caps are application/x-rtp and application/x-rdt. May be it would be easier to check if the incoming caps are application/x-srtp and if so request_pt_map should return application/x-rtp. Does that make any sense?
I think I am just going to close this and marking obsolete. If I see a real advantage I'll file it again.