GVP MCP:mpc:h264-fmtp
(8 intermediate revisions by 3 users not shown) | |||
Line 4: | Line 4: | ||
|valid=Please check the parameter description. | |valid=Please check the parameter description. | ||
|takeseffect=At start/restart | |takeseffect=At start/restart | ||
− | |shortdesc= | + | |shortdesc= |
− | |||
− | |||
+ | Specifies the H264 SDP profile, level and packetization mode offered and accepted by the MCP. | ||
+ | Set to one or more fmtp text values separated by the '|' character. | ||
+ | One fmtp text is in the form of "profile=X; level=Y; packetization-mode=Z;".<br /> | ||
+ | X is an element of the set {*, b, cb, m, e, h, h10, h10i, h42, h42i, h44, h44i, c44i} | ||
+ | specifying the H264 profile offered and accepted by the MCP. In the set, * is used as the | ||
+ | wildcard to allow the MCP to offer and accept any valid profile. The rest of the set are | ||
+ | profiles defined by H264 whose full name are (in respective order as the aforementioned set): | ||
+ | {baseline, constrained baseline, main, extended, high, high 10, high 10 intra, high 4:2:2, | ||
+ | high 4:2:2 intra, high 4:4:4, high 4:4:4 intra, cavlc 4:4:4 intra}. Invalid profile value | ||
+ | will be replaced with * (wildcard).<br /> | ||
+ | Y is an element of the set {*, 1, 1b, 1.1, 1.2, 1.3, 2, 2.1, 2.2, 3, 3.1, 3.2, 4, 4.1, 4.2, | ||
+ | 5, 5.1} specifying the H264 level of the corresponding profiles offered and accepted by the | ||
+ | MCP. In the set, * is used as the wildcard to allow MCP to offer and accept any valid level | ||
+ | for its corresponding profile. The rest of the set are levels defined by H264. Invalid | ||
+ | level value will be replaced with * (wildcard).<br /> | ||
+ | Z is an element of the set {*, 0, 1} specifying the H264 packetization mode offered and | ||
+ | accepted by the MCP. Similar to the others, * is used as the wildcard to allow the MCP to | ||
+ | offer and accept any valid packetization mode. 0 refers to single NALU packetization mode | ||
+ | while 1 demands non-interleaved packetization capability. The MCP does not support | ||
+ | interleaved packetization mode, as well as, any value other than stated. Invalid | ||
+ | packetization-mode value will be replaced with 0 (single NALU).<br /> | ||
− | + | During SDP negotiation, each fmtp text value without wildcard will be translated to one | |
+ | H264 media fmtp line while those with wildcard will be translated to one or more H264 | ||
+ | media fmtp line equivalent to the wildcard.<br /> | ||
+ | For example, profile=b; level=1.1; packetization-mode=* which is the first part of the | ||
+ | default will be translated to two H264 media fmtp lines of profile-level-id=42000B; | ||
+ | packetization-mode=0; and profile-level-id=42000B; packetization-mode=1;. Note that | ||
+ | profile "b" is equivalent to 66 in decimal or 42 in hexadecimal and level "1.1" | ||
+ | is equivalent to level 11 in decimal or level 0B in hexadecimal.<br /> | ||
+ | According to RFC3984, the use of profile-level-id and packetization-mode during | ||
+ | capability exchange must be negotiated symmetrically except the level part can be downgraded. | ||
+ | For example, the MCP is configured with h264.fmtp="profile=b; level=1; packetization-mode=1;" | ||
+ | and it receives an offer with H264 media fmtp line of profile-level-id=420033; | ||
+ | packetization-mode=1; which is equivalent to h264.fmtp="profile=b; level=5.1; packetization-mode=1". | ||
+ | In this case, the profile and packetization-mode of the platform and the offer are symmetric | ||
+ | but the level parts are not. This offer will be accepted by the MCP with level downgrade in its | ||
+ | response, e.g. "profile-level-id=42000A; packetization-mode=1". The offerer when receiving | ||
+ | the response will know that the answerer has accepted the offer but the level must be downgraded | ||
+ | and the offerer will have to produce the H264 content accordingly when proceeding with this | ||
+ | response.<br /> | ||
+ | Another example, the MCP is configured with h264.fmtp="profile=b; level=5.1; packetization-mode=1" | ||
+ | and it receives an offer with H264 media fmtp line of profile-level-id-42000A; packetization-mode=1; | ||
+ | which is equivalent to h264.fmtp="profile=b; level=1; packetization-mode=1". In this case, the | ||
+ | profile and packetization-mode of the platform and the offer are symmetric but the level parts are | ||
+ | not. This offer will still be accepted by the MCP without level downgrade in its response, e.g. | ||
+ | "profile-level-id=42000A; packetization-mode=1;". The MCP accepts the offer because it is | ||
+ | configured with a higher level which is capable of processing any lower level. The offerer | ||
+ | will receive the response that the MCP has accepted the offer. | ||
+ | H264 transcoder does not support extended and advanced 4:4:4 profiles. Consequently, if H264 | ||
+ | transcoding is enabled for the session, the fmtp containing one of the following profiles | ||
+ | (whether enumerated by * or explicitly configured) will not be offered and also not accepted during | ||
+ | the SDP negotiation: {e, h44, h44i, c44i} | ||
+ | }} | ||
+ | {{DraftOption}} | ||
+ | |||
+ | {{PubExtended}} | ||
{{DraftExtended}} | {{DraftExtended}} | ||
− | |||
− | |||
− | |||
− | |||
{{OptionCreate | {{OptionCreate |
Latest revision as of 13:59, December 17, 2021
View in ref guide.
Edit this option Publish this option Clear draft content
Published Option
Draft Option
No draft option
This page was last edited on December 17, 2021, at 13:59.
Comments or questions about this documentation? Contact us for support!