Bug 29596

Summary: Call: Streams need to have a Contact Handle or something
Product: Telepathy Reporter: Olivier Crête <olivier.crete>
Component: tp-specAssignee: Telepathy bugs list <telepathy-bugs>
Status: RESOLVED FIXED QA Contact: Telepathy bugs list <telepathy-bugs>
Severity: normal    
Priority: medium    
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard: Call
i915 platform: i915 features:
Bug Depends on:    
Bug Blocks: 29590    

Description Olivier Crête 2010-08-16 11:07:58 UTC
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.
Comment 1 Sjoerd Simons 2010-08-17 09:38:13 UTC
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.
Comment 2 Olivier Crête 2010-08-17 09:50:15 UTC
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.
Comment 3 Jonny Lamb 2010-10-18 08:59:16 UTC
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.