0

查看OggOpus的文档,我无法弄清楚这张表的含义:

 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       'O'     |      'p'      |     'u'       |     's'       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       'H'     |       'e'     |     'a'       |     'd'       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  version = 1  | channel count |           pre-skip            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                original input sample rate in Hz               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    output gain Q7.8 in dB     |  channel map  |               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+               :
|                                                               |
:          optional channel mapping table...                    :
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

我应该如何从中获得标题?

4

1 回答 1

3

这是 RFC 中常见的数据格式的一种图形表示,例如在RFC791第 3.1 节中,IPv4 标头由相同类型的图片描述。

顶部的数字是 0 到 31,每个编号一个位。每行代表 32 位。

图表中的所有框都是 8 位宽的倍数,这使它成为一种很好的面向字节的格式。第一个盒子包含'O'所以标题的第一个字节是'O'(大概是ASCII,所以它的十六进制值是4F)。下一个字节是'p'(hex 70),依此类推,直到前 8 个字节。之后,下一个字节是版本字节。本文档定义的版本为 1,因此 byte 的值为 1。

在版本之后,下一个字节是通道数,然后有一个叫做“pre-skip”的值,它占用了16位的水平空间,所以它是一个16位的字段。继续从左到右阅读每一行,从上到下通过各行,以获取其余字段。最后一个字段“可选通道映射表”被绘制为带有椭圆的大区域,以表明其大小不固定。

图片中没有任何你不能从下面的文字中得到的信息。

于 2015-08-24T19:39:35.263 回答