数字电视节目码流的PMT表分析
来源:互联网 发布:saas数据库设计 编辑:程序博客网 时间:2024/05/21 07:09
节目映射表提供节目号与组成它们的所有原始码流之间的映射,其PID由所在TS中的PAT表指定,PMT以program_map_section的形式进行TS打包。
【语法结构】
表中:
Table id:8bit域,在TS流中Program map section将置为0x02。
Section syntax indicator:1bit域,对于PMT表,设置为1。
Zero:1bit域,设置为0。
Reserved:2bit域,预留为11(0x3)。
Section length:12bit域,首先两位bit置为00,它指示段的byte数,由段长度域开始,包含CRC字段4个字节,因此在写解析代码时需要注意。
Program number:16bit域,它指出该节目对应于可应用的Program map PID。一个节目定义仅含一个TS流的Progrmn map section。这意味着一个节目的定义不超过1016Byte。
Reserved:2bit域,预留为11(0x3)。
Version number:5bit域,指出TS流中Program map section的版本号。当段中有关信息发生变化,版本号将以32为模加1。版本号是关于一个节目的定义,因此版本号是关于单一段的定义,该字段用于service中各组成部分的信息发生更新,例如当视频PID变化。
Current next indicator:1bit域,当该位置1时,当前传送的Program map section可用;当该位置0时,指示当前传送的Program map section不可用,下一个TS流的Program map section有效。
Section number:8bit域,总是置为0x00(因为PMT表里表示一个service的信息,一个section的长度足够)。
Last section number:8bit域,该域的值总是0x000。
Reserved:3bit域,预留为111(0x7)。
PCR PID:13bit域,指明TS包的PID值,该TS包含有PCR域,该PCR值对应于由节目号指定的对应节目。如果对于私有数据流的节目定义与PCR无关,这个域的值将为0×1FFF。
Reserved:4bit域,预留为1111(0xF)。
Program info length:12bit域,前两位bit为00。该域指出跟随其后对节目信息的描述的byte数。
Stream type:8bit域,指示特定PID的节目元素包的类型。该处PID由elementary PID指定。该域值为0×2时,指示ITU-TRECH262|ISO/IEC13818-2video或ISO/IEC11172-2constrained
【码流示例】
上面的数据解析如下图:
ErrorCode_t ParsePMTHead(U8* pSectionData, PMT_HEAD *pHead)
{
}
- 数字电视节目码流的PMT表分析
- 数字电视节目码流中的PMT表分析
- 数字电视节目码流中的PMT表分析
- 数字电视节目码流中的PAT表分析
- 数字电视节目码流中的PAT表分析
- 数字电视电子节目指南(EPG)的实现原理分析
- TS科普18 节目映射表PMT
- PMt表分析
- 我对于数字电视基于TS流的节目解析流程1
- 我对于数字电视基于TS流的节目解析流程2
- 数字电视节目搜索策略
- 数字电视节目搜索
- 数字电视节目搜索策略
- 数字电视节目搜索策略
- 数字电视的电子节目指南(EPG)及其系统
- 数字电视节目的接收,解码,播放,针对TS
- 数字电视节目的接收,解码,播放,针对TS
- PMT表的结构和流类型
- SSH登陆后,如果长时间没有响应则自动LOGOUT的设置
- 关于字节对齐、结构体偏移地址、字位段问题的例子程序说明
- UITextField Delegate 无法获取中文字符
- PAT 1046. Shortest Distance
- 使用WITH AS提高性能简化嵌套SQL
- 数字电视节目码流的PMT表分析
- 共同父域下的单点登录
- 一周前端学习历程 分享一下&求指教
- HGE引擎改进——2014/3/4
- 焰火粒子系统
- 以互联网思维模式打破旧秩序
- 给技术人上的管理课:控制和计划
- java对象转json
- 三步搞定婚礼视频。