从海康7816的ps流里获取数据h264数据.pdfVIP

  • 57
  • 0
  • 约1.14万字
  • 约 16页
  • 2021-09-30 发布于上海
  • 举报
从海康 7816 的 ps 流里获取数据 h264 数据 海康 7816 使用 ps 流来封装 h.264 数据,这里使用的解 码器无法识别 ps 流,因此需要将 h264 数据从 ps 流里提取出 来 对于 ps 流的规定可以参考 13818-1 文档 这里从 7816 里获取到一些数据取样 00 00 01 BA 44 73 26 B8 34 01 00 00 03 FE FF FF 00 00 00 0100 00 01 BC00 5A E0 FF 00 24 40 0E 48 4B 00 01 0D AF C5 D3 E0 07 FF FF FF FF 41 12 48 4B 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2C 1B E0 00 10 42 0E 00 00 A0 21 02 C0 02 40 12 1F FF 00 1C 21 91 C0 00 0C 43 0A 00 00 FE 00 7D 03 03 E8 03 FF BD BD 00 00 BF BF 00 00 00 00 00 0000 00 01 E0 00 1A 8C 80 0A 21 1C C9 AE 0D FF FF FF FF FC 00 00 00 01 67 42 00 1E 95 A8 2C 04 99 00 00 01 E0 00 0E 8C 0003 FF FF FC 00 00 00 01 68 CE 3C 80 00 00 01 E0 13 FA 8C 00 02 FF FD 。。。 如上是一个 i 帧的数据的开始部分,如下是一个非 i 帧的数 据的开始部分 00 00 01 BA 44 73 27 99 34 01 00 00 03 FE FF FF 00 00 00 03 00 00 01 E0 07 12 8C 80 0A 21 1C C9 E6 4D FF FF FF FF F8。。。 可见都是以 00 00 01 BA 开头,这是 ps 的包头 (Program Stream pack header),其中 00 00 01 是 pack_start_code,是一个数据 包的开始标识,接下来的 1byte(BA) 是流标识 (stream_id) ,在 文档 13818-1 的 Table 2-33 和 2.5.3.4 节有 Program Stream pack header 的描述。 这里把上面 i 帧的的 (Program Stream pack header 列出来 00 00 01 BA 44 73 26 B8 34 01 00 00 03 FE FF FF 00 00 00 01 根据文档描述包头最少有 14 个字节,第 14 个字节的最后 3bit 说明了包头 14 字节后填充数据的长度,这里是 pack_stuffing_length=FEamp;0x07=6 ,有 6byte 的填充数据, 既是 FF FF 00 00 00 01,海康 7816 使用这部分填充数据来说明每帧 的序号, 01 说明是第 1 帧数据。 要注意的是包头可能还有系统标题头, id 为 bb,他也是包头 的一部分,并且,他的长度并未算在 pack_stufing_length 里, 比如: 00 00 01 BB 00 0C 80 CC F5 04 E1 7F E0 E0 E8 C0 C0 20 这里起始码后的 00 0C 说明了其后数据的长度,这里是 12 个字节 接在 Program Stream pack header 后的是以 00 00 01 BC 开始 的一个包

文档评论(0)

1亿VIP精品文档

相关文档