• RTP Payload Format for VP8 Video


    整体结构

          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             |
         |                             ....                              |
         +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
         |            VP8 payload descriptor (integer #bytes)            |
         :                                                               :
         |                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
         |                               : VP8 payload header (3 octets) |
         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
         | VP8 pyld hdr  :                                               |
         +-+-+-+-+-+-+-+-+                                               |
         :                   Bytes 4..N of VP8 payload                   :
         |                                                               |
         |                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
         |                               :    OPTIONAL RTP padding       |
         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    

    RTP头之后会有VP8的载荷信息,如果RTP头设置了Mbit,则是左边的结构,否则是右边, 第一个8bit用来说明后面是否扩展,是的话,后面会跟着相应的X,I,L,T/K等字段的信息

             0 1 2 3 4 5 6 7                                   0 1 2 3 4 5 6 7
            +-+-+-+-+-+-+-+-+                                   +-+-+-+-+-+-+-+-+
            |X|R|N|S|R| PID | (REQUIRED)                        |X|R|N|S|R| PID | (REQUIRED)
            +-+-+-+-+-+-+-+-+                                   +-+-+-+-+-+-+-+-+
       X:   |I|L|T|K| RSV   | (OPTIONAL)                   X:   |I|L|T|K| RSV   | (OPTIONAL)
            +-+-+-+-+-+-+-+-+                                   +-+-+-+-+-+-+-+-+
       I:   |M| PictureID   | (OPTIONAL)                   I:   |M| PictureID   | (OPTIONAL)
            +-+-+-+-+-+-+-+-+                                   +-+-+-+-+-+-+-+-+
       L:   |   TL0PICIDX   | (OPTIONAL)                        |   PictureID   |
            +-+-+-+-+-+-+-+-+                                   +-+-+-+-+-+-+-+-+
       T/K: |TID|Y| KEYIDX  | (OPTIONAL)                   L:   |   TL0PICIDX   | (OPTIONAL)
            +-+-+-+-+-+-+-+-+                                   +-+-+-+-+-+-+-+-+
                                                           T/K: |TID|Y| KEYIDX  | (OPTIONAL)
                                                                +-+-+-+-+-+-+-+-+
                    <left>                                                <right>
    

    ref

    RTP Payload Format for VP8 Video

  • 相关阅读:
    首次使用随便写点哦
    js中call、apply和bind的区别
    前端的事件流以及事件处理程序
    javascript中数组的深拷贝的方法
    我的第一篇博客
    圆盘转动按钮-react native
    鼠标拖拽删除
    js基础 -----鼠标事件(按下 拖拽)
    清除浮动的几种常用方法
    VUE常见问题解决
  • 原文地址:https://www.cnblogs.com/ishen/p/12022942.html
Copyright © 2020-2023  润新知