You need to check the trace log to find the identifier you are being sent. There appears to be a descrepancy. H.245 Annex E defines you should be receiving an Identifier of "0.0.8.245.1.0.0" but you may not.
I would also be nice to have this work submitted back to the project to the benefit of both h323plus and Opal.
Simon -----Original Message----- From: h323plus-bounces@lists.packetizer.com [mailto:h323plus-bounces@lists.packetizer.com]On Behalf Of abhishekrohilla@zapak.com Sent: Monday, January 28, 2008 4:29 PM To: h323plus@lists.packetizer.com Subject: [h323plus] Help required with MPEG4 Plugin for H323Plus
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::Comma ndType 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_uns ignedMin,{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!