zoukankan      html  css  js  c++  java
  • RTP中的H264的SVC相关信息

    概览

    本文简单的介绍了rtp中的h264的svc相关信息

    h264的svc相关格式信息

    RTP Payload Format for H.264 Video可以看见264在rtp的传输过程中,在rtp头后面有一个NALU头,其包含了F,NRI,type相关信息

     0                   1                   2                   3
     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |V=2|P|X|  CC   |M|     PT      |       sequence number         |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                           timestamp                           |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |           synchronization source (SSRC) identifier            |
    +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
    |            contributing source (CSRC) identifiers             |
    |                             ....                              |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |F|NRI|  type   |                                               |
    +-+-+-+-+-+-+-+-+                                               |
    |                                                               |
    |               Bytes 2..n of a Single NAL unit                 |
    |                                                               |
    |                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                               :...OPTIONAL RTP padding        |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    

    RFC6190中, 其对这个nalu头进行了扩展, 当type为14和20的时候,这个nalu附带了3个byte的额外信息, 如下所示:

    +---------------+---------------+---------------+
    |0|1|2|3|4|5|6|7|0|1|2|3|4|5|6|7|0|1|2|3|4|5|6|7|
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |R|I|   PRID    |N| DID |  QID  | TID |U|D|O| RR|
    +---------------+---------------+---------------+
    

    简单的介绍一下各个位:

    R: 保留位, 但这个位现在多用来表示svc是否开启的标志了(在RFC6190还未看到,但在wireshark 解包看到的说明如此)
    I:  IDR帧位, 1为IDR帧
    PRID: priority_id, 标志当前nalu单元的优先级
    N:  no_inter_layer_pred_flag, 是否启用层间预测
    DID: 空域层ID
    QID: 质量层ID
    TID: 时域层ID
    U:   1表示层间预测的时候只用到base层
    D:   1表示其它NALU的DID的大于当前的,当前的NALU不参与其它的解码
    O:   对解码输出有影响的一个位
    RR:  保留位
    

    比较重要的是R, DID, QID, TID,

    REF

    RFC6190: RTP Payload Format for Scalable Video Coding

  • 相关阅读:
    一个好的时间函数
    Codeforces 785E. Anton and Permutation
    Codeforces 785 D. Anton and School
    Codeforces 510 E. Fox And Dinner
    Codeforces 242 E. XOR on Segment
    Codeforces 629 E. Famil Door and Roads
    Codeforces 600E. Lomsat gelral(Dsu on tree学习)
    Codeforces 438D The Child and Sequence
    Codeforces 729E Subordinates
    【ATcoder】D
  • 原文地址:https://www.cnblogs.com/ishen/p/12023228.html
Copyright © 2011-2022 走看看