2014-05-06 91 views
4

Identify h264 profile and level from profile-level-id in sdp?H264 profile-iop

如何确定约束的实际含义? 比如我有一个profile-type-id: 42801e是翻译成:

enter image description here

我怎么涉及,要在表here定义的功能?

以上参考文献确定Constraint_set0_flag: 1意味着它是约束基线配置文件。但是如何将该标志与区分基线轮廓约束基线轮廓的三个不同的NO(来自表格)相关联?

更新

无法证实上述情况,有关识别Constrained Baseline profile,是正确的。 Reference(页306)的发言:

Decoders conforming to the Constrained Baseline profile at a 
specific level shall be capable of decoding all bitstreams 
in which all of the following are true: 

– profile_idc is equal to 66 or constraint_set0_flag is equal to 1, 
– constraint_set1_flag is equal to 1, 
– level_idc and constraint_set3_flag represent a level 
less than or equal to the specified level. 

看来只能满足第一个条件,但第二个是假的。对于基线类状态

解码器在特定的电平符合基准轮廓的参数应能的所有位流,其中 profile_idc等于66或constraint_set0_flag解码等于1,并且其中level_idc和constraint_set3_flag表示小于或等于指定级别的 级别。

它们都存在。

回答

2

你能澄清你的问题吗?你不明白什么?您已经将42801e解析为受限基准配置文件级别3.0。

constraint_set0_flag = 1表示的约束基线配置文件表示编码流不使用此配置文件之外的任何功能(如来自维基百科表的FMO或ASO),因此可以使用支持基线约束的任何解码器进行解码,主要或高配置文件。使用基线配置文件(未约束)配置文件编码的流可以使用这些附加功能(或不使用,但仍不会被指示为约束),但是如果它们将在流中使用,而不是仅支持限制基线的解码器,则主要或高配置文件不会能够解码它。

更新

我错了。它是基线轮廓级别3.0,因为constraint_set1_flag = 0,所以没有指示约束基线轮廓。

+0

更新,我对鉴定有一些怀疑。请给出意见。 – TheMeaningfulEngineer

+0

来自H.264的引用不是关于如何指示约束的基线配置文件,而是支持特定级别支持的解码器应该能够解码的解码器。您应该阅读“7.4.2.1.1序列参数集数据语义”,其中:constraint_set0_flag等于1表示编码的视频序列服从在A.2.1节中规定的所有约束条件,即约束基线轮廓。此外,您的profile_idc等于66(0x42),constraint_set0_flag = 1,并且解码器支持级别未指定(因此任何流值都可以),因此您只需满足A.2.1的所有条件即可。 – nobody555

+0

但'A.2.1'是基线配置文件(第283页)。受限制的基线配置文件是“A.2.1.1”。并且在'A.2.1.1'中表示'位流与约束基线轮廓的一致性由profile_idc等于66表示, constraint_set1_flag等于1',这不是我的例子的原因。请给出意见。 – TheMeaningfulEngineer