We have to know which packets come from which contact. With codecs like theora, we have to be able to match the "configuration" to the codec to give the right string to the right depayloader. This means that there should probably be one stream per contact. Transport and codecs are not really separate, we need to be able to match the contact and the transport to know which packets come from who. Maybe splitting the codecs from the stream isn't a great idea after all. Maybe the CodecOffer should be per stream.
Look at the Senders property on the Stream itself. As the new-call-demo proofs it does have the needed information I've got two changes planned in this area: * Split the Senders property in two parts (one for the local party, one for all remote parties) as needing to keep track of the self handle and special-casing that is quite annoying (this is an issue with more properties in the Call interface) * If one stream has multiple (remote) senders you can't work out which packets are coming from who anymore. iotw we need a mapping from contacts to ssrc.
The self handle is uselss here. Just put a "RemoteSenders" property and add a "Sending" boolean property. We need both mapping per source (for legacy protocols) and per SSRC.
Fixed in git.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.