[h323plus] Issue with H.263 codecs set

Jan Willamowius jan at willamowius.de
Fri Jan 22 13:52:47 EST 2016


Hi Iurii,

this is not really my field of expetise, but are you trying to use
multiple H.263 plugins at the same time ?

I don't think that was ever intended. Pick the one that works best
for you and only use that one.

Regards,
Jan

-- 
Jan Willamowius, Founder of the GNU Gatekeeper Project
EMail  : jan at willamowius.de
Website: http://www.gnugk.org
Support: http://www.willamowius.com/gnugk-support.html

Relaxed Communications GmbH
Frahmredder 91
22393 Hamburg
Geschäftsführer: Jan Willamowius
HRB 125261 (Amtsgericht Hamburg)
USt-IdNr: DE286003584

Iurii Gordiienko wrote:
> Hi all, 
> I need an advice - how to work with set of H.263 codecs. Basically, I have all H.263 codec types capability implemented: H.263, H.263-1998 and H.263-2000. All these capabilities uses same H245_VideoCapability::e_h263VideoCapability value for GetSubType function. In result my localCapabilities variable has all these 3 capabilities as well. 
> When I receiving remote capabilities the remoteCapabilities variable is loading by H323Capabilities::H323Capabilities(const H323Connection & connection, const H245_TerminalCapabilitySet & pdu) constructor and the function uses code like this (simplified): 
> H323Capability * capability = localCapabilities.FindCapability(pdu.m_capabilityTable[i].m_capability, capabilityNo, pdu); if (capability != NULL)  {           H323Capability * copy = (H323Capability *)capability->Clone();           copy->SetCapabilityNumber(capabilityNo);           if (copy->OnReceivedPDU(pdu.m_capabilityTable[i].m_capability))             table.Append(copy);           else             delete copy; } 
> The main issue -  localCapabilities.FindCapability function returns any first H.263 Capability from it's table, no matter which particular H.263 remote Capability was used, it only checks MainType and SubType... In result if remote side send me, for example, H.263-1998, but I have H.263 and H.263-1998 - I will have H.263 in result...  
> Now I'm trying to override Connection::OnReceivedCapabilitySet(const H245_TerminalCapabilitySet & pdu) function, extract H.263 codecs manually, store all these capabilities and update remoteCapabilities after, but may be exists a proper solution for this case? 
> 
> Thanks -- Iurii Gordiienko 





More information about the h323plus mailing list