我现在遇到一个问题,和华为视频终端(VP9039A)通过H323协商的时候,想协商1080P30,结果华为发给我的是1080P10,如果我把华为视频格式修改为Auto,就和华为协商成704*400 30帧;感觉很奇怪。
定义的参数:
struct PluginCodec_H323GenericParameterDefinition H2641080P_h323params[] =
{
{{1,0,0,0,0},41, PluginCodec_H323GenericParameterDefinition::PluginCodec_GenericParameter_BooleanArray,{64}},
{{1,0,0,0,0},42, PluginCodec_H323GenericParameterDefinition::PluginCodec_GenericParameter_unsignedMin, {85}},
{{1,0,0,0,0},3, PluginCodec_H323GenericParameterDefinition::PluginCodec_GenericParameter_unsignedMin, {492}},
{{1,0,0,0,0},4, PluginCodec_H323GenericParameterDefinition::PluginCodec_GenericParameter_unsignedMin, {32}},
};
struct PluginCodec_H323GenericCodecData H2641080P_h323GenericData[] = {
{OpalPluginCodec_Identifer_H264_Generic, 7680, 4, H2641080P_h323params}
};
struct PluginCodec_Definition h264encInfo
{
/* encoder */
PLUGIN_CODEC_VERSION_OPTIONS, /* codec API version */
&licenseInfo, /* license information */
H2641080P_VideoType | /* video type */
PluginCodec_OutputTypeRTP | /* specified RTP type */
PluginCodec_InputTypeRTP |
PluginCodec_RTPTypeExplicit |
PluginCodec_RTPTypeShared, /* specified RTP type */
H2641080P_Desc, /* text decription */
YUV420PDesc, /* source format */
H2641080P_MediaFmt, /* destination format */
H2641080P_OptionTable, /* user data */
90000, /* samples per second */
7680*1000, /* raw bits per second */
30000, /* nanoseconds per frame */
{{ H2641080P_FrameWidth, /* samples per frame */
H2641080P_FrameHeight, /* bytes per frame */
30, /* recommended number of frames per packet */
60, }}, /* maximum number of frames per packet */
96,//RTP_DataFrame::DynamicBase, /* IANA RTP payload code */
sdpH264, /* RTP payload name */
NULL, /* create codec function */
NULL, /* destroy codec */
NULL, /* encode/decode */
EncoderControls, /* codec controls */
PluginCodec_H323Codec_generic, /* h323CapabilityType */
(struct PluginCodec_H323GenericCodecData *)&H2641080P_h323GenericData/* h323CapabilityData */
};
定义的参数:
struct PluginCodec_H323GenericParameterDefinition H2641080P_h323params[] =
{
{{1,0,0,0,0},41, PluginCodec_H323GenericParameterDefinition::PluginCodec_GenericParameter_BooleanArray,{64}},
{{1,0,0,0,0},42, PluginCodec_H323GenericParameterDefinition::PluginCodec_GenericParameter_unsignedMin, {85}},
{{1,0,0,0,0},3, PluginCodec_H323GenericParameterDefinition::PluginCodec_GenericParameter_unsignedMin, {492}},
{{1,0,0,0,0},4, PluginCodec_H323GenericParameterDefinition::PluginCodec_GenericParameter_unsignedMin, {32}},
};
struct PluginCodec_H323GenericCodecData H2641080P_h323GenericData[] = {
{OpalPluginCodec_Identifer_H264_Generic, 7680, 4, H2641080P_h323params}
};
struct PluginCodec_Definition h264encInfo
{
/* encoder */
PLUGIN_CODEC_VERSION_OPTIONS, /* codec API version */
&licenseInfo, /* license information */
H2641080P_VideoType | /* video type */
PluginCodec_OutputTypeRTP | /* specified RTP type */
PluginCodec_InputTypeRTP |
PluginCodec_RTPTypeExplicit |
PluginCodec_RTPTypeShared, /* specified RTP type */
H2641080P_Desc, /* text decription */
YUV420PDesc, /* source format */
H2641080P_MediaFmt, /* destination format */
H2641080P_OptionTable, /* user data */
90000, /* samples per second */
7680*1000, /* raw bits per second */
30000, /* nanoseconds per frame */
{{ H2641080P_FrameWidth, /* samples per frame */
H2641080P_FrameHeight, /* bytes per frame */
30, /* recommended number of frames per packet */
60, }}, /* maximum number of frames per packet */
96,//RTP_DataFrame::DynamicBase, /* IANA RTP payload code */
sdpH264, /* RTP payload name */
NULL, /* create codec function */
NULL, /* destroy codec */
NULL, /* encode/decode */
EncoderControls, /* codec controls */
PluginCodec_H323Codec_generic, /* h323CapabilityType */
(struct PluginCodec_H323GenericCodecData *)&H2641080P_h323GenericData/* h323CapabilityData */
};
用wireshark抓包能力协商的时候
华为发过来的:
:
我发给华为的:
打开逻辑痛通道的时候:
华为发过来的:
我发给华为的:
现在出现协商以后华为给我1080P10,我需求1080P30.一直没有搞明白,求助大侠们。