Hi
I
have build a mpeg4 plugin dll which is able to load generic Video
Capabilities for mpeg4 codec. I am trying to connect with Salyens VoIP.
The problem is that in 
H323GenericCapabilityInfo::OnReceivedGenericPDU(OpalMediaFormat & mediaFormat,
                                                     const H245_GenericCapability & pdu,
                                                     H323Capability::CommandType type)
the very first check
if (pdu.m_capabilityIdentifier != *identifier)
    return FALSE;
returns FALSE and hence the capability is not negotiated.
I think I have missed some parameter while defining mpeg4 codec definition.
MPEG4 plugin requires h323CapabilityData also. I have defined capability data as follows
static const struct PluginCodec_H323GenericParameterDefinition mpeg4_h323params[] = 
{ 
   
{1,42,
PluginCodec_H323GenericParameterDefinition::PluginCodec_GenericParameter_unsignedMin,{145}},  
// taken from H264 plugin file
    NULL 
}; 
static const struct PluginCodec_H323GenericCodecData mpegcap =
{
  OpalPluginCodec_Identifer_MPEG4,  // capability identifier (Ref: Table I.1 in H.245)
  3000000,                             // Must always be this regardless of "Max Bit Rate" option
  sizeof(mpeg4_h323params),
  mpeg4_h323params
};
The h323CapabilityData points to mpegcap in PluginCodec_Definition.
I am doubtful about H323GenericParameterDefinition, Can someone please help me with it.
Thanks
-----------------------------------------------------------------
Get your free Email ID at www.zapakmail.com now!