1

我需要在 h264 字节流中找到任何(I/B/P)新帧。

我听说过 NAL 标头,但我有这样一个奇怪的流:

00 00 00 01 09 F0 00 00 00 01 
67 64 00 1E AC B2 01 40 5F F2 
E0 22 00 00 07 D2 00 01 D4 C0 
1E 2C 5C 90 00 00 00 01 68 EB 
C3 CB 22 C0 00 00 01 06 05 FF 
  1. 00 00 00 01 之间的 0x09 0xF0 是什么意思?
  2. 如何检测新框架(任何 I/B/P)?
4

1 回答 1

3

从哪儿开始。

首先0x09 0xF0是访问单元分隔符。这是你的框架的开始。但请注意,这是一个可选的 NALU,可能并不存在于所有帧中。其次,一个帧可以由多个切片组成,每个切片可以是I/P/B类型。因此,可以找到包含所有三种切片类型的帧。我可以更详细地了解如何确定切片类型,以及在没有 AUD 的情况下如何找到帧的开始。但这两个主题都非常大,应该(并且可能确实)有自己的 Stack Overflow 问题。

于 2014-06-26T18:52:48.137 回答