On 07/11/2025 04.55, Benoit Panizzon wrote:
> I suspect this to be how it is done:
>
> RTP/AVP + crypto attributes => Optional
> RTP/SAVP => Mandatory
>
> Does anyone know where in the various RFC this is specified?
There are two ways to do "optional SRTP." One is backed by an RFC and
works as you describe. This is called opportunistic SRTP and is
described by RFC 8643.
An older and completely non-standard method works by simply duplicating
each m= media section and presenting it once as plain RTP and once as
mandatory SRTP (in some order), and relies on the receiver supporting
this and choosing the preferred transport, rejecting the other one in
the process. This is in somewhat common use, especially by older devices.
Both are supported by rtpengine. Check out the various `OSRTP-...` flags.
Cheers