【问题标题】:Identifying NAL Header vs Raw H264识别 NAL 标头与原始 H264
【发布时间】:2014-07-17 23:02:40
【问题描述】:

我正在使用 TCP/RTSP/RTP 在 Wireshark 中处理一堆 H264 数据。现在我正在尝试识别 NAL 标头。我该怎么做呢?如何判断我的 H264 数据是原始数据还是具有 NAL 标头?

谢谢

【问题讨论】:

    标签: h.264 wireshark rtsp packet rtp


    【解决方案1】:

    NAL 标头以前缀代码 0x000001 开头(有时为 0x00000001,具体取决于编码器实现。)两个前缀代码之间的所有数据都由 NAL 单元的数据组成。因此,如果搜索起始前缀代码,您需要做的是,它之后的下一个字节将是 NAL 标头。

    您还可以做的是查看 Wireshark 是否可以使用“Decode As..”->“RTP”对流进行解码,Wireshark 可能会显示类似

    的内容
    Real-Time Transport Protocol
         10.. .... = Version: RFC 1889 Version (2)
         ..0. .... = Padding: False
         ...1 .... = Extension: True
         .... 0000 = Contributing source identifiers count: 0
         0... .... = Marker: False
         Payload type: DynamicRTP-Type-96 (96)
         Sequence number: 35525
         Timestamp: 2966614680
         Synchronization Source identifier: 0x00000001 (1)
         Defined by profile: 48862
         Extension length: 3
         Header extensions
             Header extension: 1711276032
             Header extension: 2615214809
             Header extension: 1912602625
    
        H.264
             NAL unit header or first byte of the payload
                 0... .... = F bit: No bit errors or other syntax violations
                 .01. .... = Nal_ref_idc (NRI): 1
                 ...1 1000 = Type: STAP-A (24)
             H264 bitstream
    

    用于该 RTP 数据包信息。

    【讨论】:

      猜你喜欢
      • 2010-12-13
      • 2011-11-04
      • 1970-01-01
      • 2018-03-18
      • 2014-06-24
      • 2012-06-27
      • 1970-01-01
      • 2020-08-12
      • 2011-10-15
      相关资源
      最近更新 更多