基于SIP协议的VOIP通信,该字段通常位于视频协商sdp报文中,如:
1 video 23456 RTP/AVP 121 2 rtpmap:121 H264/90000 3 fmtp: 121 profile-level-id=42801E; packetization-mode=1
42801E分三部分
0x42 66
0x80 1000 0000 (二进制)
0x1E 30
对应profile_idc(8 bits)、profile_iop(8 bits)、level_idc(8 bits),含义如下:
profile_idc:(16进制)
66 Baseline profile (VOIP中常用这个)
77 Main profile
88 Extended profile
profile_iop:(8位分别意义)
constraint_set0_flag 1代表编码的视频序列完全遵从A.2.1所有条款,0不一定。
constraint_set1_flag 1代表编码的视频序列完全遵从A.2.2所有条款,0不一定。
constraint_set2_flag 1代表编码的视频序列完全遵从A.2.3所有条款,0不一定。
注意:当上面3位有任意一位设置为1时,意味着视频序列完全遵从A.2所有条款,当proifle_idc为44、100、110、122或244时,此三位必须为0
constraint_set3_flag (1)当profile_idc为66、77或88且level_idc为11时,1代表遵从Annex A for level 1b,0代表遵从Annex for level 1.1。
(2)当profile_idc为100或110,1代表遵从Annex A for the High 10 Intra profile,0不一定。
(3)当profile_idc为122,1代表遵从Annex A for the High 4:2:2 Intra profile,0不一定。
(4)当profile_idc为44,此数据位应设置为1,0是错误的。
(5)当profile_idc为244,1代表遵从Annex A for the High 4:4:4 Intra profile,0不一定。
(6)当profile_idc为66、77或88且level_idc不为11时,1保留给未来使用,应设置为0,同时解码器应该忽略此数据位的值。
constraint_set4_flag (1)当profile_idc为77、88或100,1代表frame_mbs_only_flag等于1,0则表示frame_mbs_only_flag可能1可能0。
(2)当profile_idc为118或128,,1代表编码的视频序列遵从H.10.1.1的所有条款,0不一定。
(3)当profile_idc不为以上两条时,1保留给未来使用,应设置为0,同时解码器应该忽略此数据位的值。
constraint_set5_flag (1)当profile_idc为77、88或100,1代表Bslice类型不存在于编码的视频序列中,0不一定。
(2)当profile_idc为118,1代表遵从H.10.1.2的所有条款,0不一定。
(3)当profile_idc不为以上两条时,1保留给未来使用,应设置为0,同时解码器应该忽略此数据位的值。
constraint_set6_flag保留,设置为0。
constraint_set7_flag保留,设置为0。
levle_idc:
其在协商中的值=level_idc*10的16进制数,如上面的1E=30,就是等级3,另外packetization-mode表示载荷类型,范围0-2(0:NAL 1:非交错 2:交错,隔行扫描)。