profile-level-id正好是SPS中的第二至四个字节的base16编码。这三个字节的具体含义是
sps[1] AVCProfileIndication
sps[2] profile_compatibility
sps[3] AVCLevlIndication
如何设值,可以参考 x264/common/set.h,encoder/set.c
AVCProfileIndication,用于声明H.264的profile
enum profile_e{PROFILE_BASELINE = 66 ,PROFILE_MAIN = 77 ,PROFILE_HIGH = 100 ,PROFILE_HIGH10 = 110 ,PROFILE_HIGH422 = 122 ,PROFILE_HIGH444_PREDICTIVE = 244 ,};
profile_compatibility含义还不是太清楚,一般设置00
AVCLevlIndication,用于声明H.264的level。level决定了解码器的解码能力,即最大多大的分辨率、帧率、码率。取值参考
实际设置时,就是level值乘以10,例如level 1.0,设置值就是0x0A。level 3.0,设置值就是0x1E。比较例外的是level 1b,设置值是0x09