Jitsi-videobridge mixing regular RTP clients with WebRTC clients

The Jitsi Video bridge web site emphasizes the support for DTLS-SRTP. The REST examples in the docs only show the transport urn:xmpp:jingle:transports:ice-udp:1

Can both regular RTP (or SRTP) clients and some WebRTC clients connect to the same conference? Or will it only accept connections from peers with ICE, DTLS-SRTP, etc?

Can you make any further comment on how this would work with codecs, for example, G.711 appears to be supported in both legacy devices and it is mandated in WebRTC so there is no transcoding for audio. H.264 appears to be mandatory in WebRTC and widely supported for video in both legacy and WebRTC devices.

I don’t think we support a raw UDP connection anymore (that part of the doc is likely outdated). The code right now assumes everything we’ll be doing ice, dtls and srtp–basically you’ll need to mimic a webrtc web client.

As for codecs, yeah as long as you use codecs the other clients support (and you support what they send) it should work.

Thanks for the fast reply. Is there any hard reason not to support regular UDP? Would there be any objection to attempts to revive that?

Does the ICE stack fall back to regular UDP when talking to a non-ICE peer?

Talked with @Boris_Grozev about this a bit since he’s more the ICE4j expert. We don’t support plain UDP just because webrtc uses ICE, so there wasn’t really any reason to support it. ICE4j doesn’t have any raw udp mode since it’s oriented around ICE.

We have both the ICE transport and DTLS transport abstracted somewhat well in the bridge–if you really wanted I don’t think it would be terrible to add support for a plain UDP mode there, but it’s not trivial. I’m not sure whether or not we’d be interested in merging it to master though.