SIP SDP Profile-level-id resolution

For VOIP communication based on the SIP protocol, this field is usually located in the video negotiation sdp message, such as:

[html]  view plain  copy    

  1. video 23456 RTP/AVP 121  
  2. rtpmap:121 H264/90000  
  3. fmtp: 121 profile-level-id=42801E; packetization-mode=1  

 

42801E is divided into three parts

0x42  66

0x80 1000 0000 (binary)

0x1E  30

 

Corresponding to profile_idc (8 bits), profile_iop (8 bits), level_idc (8 bits), the meaning is as follows:

profile_idc: (hexadecimal)

   66 Baseline profile (this is commonly used in VOIP)

   77    Main profile

   88    Extended profile

profile_iop: (8 bits respectively meaning)

   constraint_set0_flag 1 represents that the encoded video sequence fully complies with all the clauses of A.2.1, and 0 is not necessarily.

constraint_set1 _flag1 represents that the encoded video sequence fully complies with all the clauses of A.2.2, and 0 is not necessarily.

   constraint_set2_flag 1 represents that the encoded video sequence fully complies with all the provisions of A.2.3, and 0 is not necessarily.

       Note: When any one of the above 3 bits is set to 1, it means that the video sequence fully complies with all the terms of A.2. When proifle_idc is 44, 100, 110, 122 or 244, these three bits must be 0.

   constraint_set3_flag (1) When profile_idc is 66, 77 or 88 and level_idc is 11, 1 represents compliance with Annex A for level 1b, and 0 represents compliance with Annex for level 1.1.

                                           (2) When profile_idc is 100 or 110, 1 represents compliance with Annex A for the High 10 Intra profile, and 0 is not necessarily.

                                           (3) When profile_idc is 122, 1 represents compliance with Annex A for the High 4:2:2 Intra profile, and 0 is not necessarily.

                                           (4) When profile_idc is 44, it is wrong that this data bit should be set to 1,0.

                                           (5) When profile_idc is 244, 1 represents compliance with Annex A for the High 4:4:4 Intra profile, and 0 is not necessarily.

                                           (6) When profile_idc is 66, 77 or 88 and level_idc is not 11, 1 is reserved for future use and should be set to 0, and the decoder should ignore the value of this data bit.

   constraint_set4_flag (1) When profile_idc is 77, 88 or 100, 1 means that frame_mbs_only_flag is equal to 1, and 0 means that frame_mbs_only_flag may be 1 or 0.

                                           (2) When profile_idc is 118 or 128, 1 represents that the coded video sequence complies with all the provisions of H.10.1.1, and 0 is not necessarily.

                                           (3) When profile_idc is not the above two, 1 is reserved for future use and should be set to 0, and the decoder should ignore the value of this data bit.

   constraint_set5_flag (1) When profile_idc is 77, 88 or 100, 1 means that the Bslice type does not exist in the coded video sequence, and 0 is not necessarily.

                                           (2) When profile_idc is 118, 1 represents compliance with all the terms of H.10.1.2, and 0 is not necessarily.

                                           (3) When profile_idc is not the above two, 1 is reserved for future use and should be set to 0, and the decoder should ignore the value of this data bit.

   constraint_set6_flag is reserved and set to 0.

   constraint_set7_flag is reserved and set to 0.

levle_idc :

Level Maximum bit rate (BP, MP, EP) kbit/s high resolution example @maximum frame rate (maximum storage frame)

1    64  128*[email protected](8)   176*[email protected](4)

1b 128 128*[email protected] (8) 176*[email protected] (4)

1.1    192  176*[email protected](9)   320*[email protected](3)   352*[email protected](2)

1.2    384  320*[email protected](7)   352*[email protected](6)

1.3    768  320*[email protected](7)   352*[email protected](6)

2    2000  320*[email protected](7)   352*[email protected](6)

2.1    4000  352*[email protected](7)   352*[email protected](6)

2.2    4000  352*[email protected](12)   352*[email protected](10)   720*[email protected](6)   720*[email protected](5)

3    10000  352*[email protected](12)   352*[email protected](10)   720*[email protected](6)   720*[email protected](5)

3.1    14000  720*[email protected](13)   720*[email protected](11)   1280*[email protected](5)

3.2    20000  1280*[email protected](5)   1280*[email protected](4)

4    20000  1280*[email protected](9)   1920*[email protected](4)   2048*[email protected](4)

4.1    50000  1280*[email protected](9)   1920*[email protected](4)   2048*[email protected](4)

4.2    50000  1280*[email protected](9)   1920*[email protected](4)   2048*[email protected](4)

5    135000  1920*[email protected](13)   2048*[email protected](13)   2048*[email protected](12)   2560*[email protected](5)   3672*[email protected](5)

5.1    240000  1920*[email protected](16)   2560*[email protected](9)   3840*[email protected](5)   4096*[email protected](5)   4096*[email protected](5)   4096*[email protected](5)

5.2    240000  1920*[email protected](16)   2560*[email protected](9)   3840*[email protected](5)   4096*[email protected](5)   4096*[email protected](5)   4096*[email protected](5)

 

 

The value in the negotiation=level_idc*10 hexadecimal number, such as 1E=30 above, which means level 3. In addition, packetization-mode represents the payload type, and the range is 0-2 (0: NAL 1: non-interlaced 2: interlaced , Interlaced scan).

Guess you like

Origin blog.csdn.net/gredn/article/details/109630113
sip