数字电视之TS流解析
做了这么久的TV方案,对数字电视也很了解,今天来总结一下,MPEG-2 TS流解析的细节:
TS流中有两种标识符,一种是包标识符,一种是表标识符。具有相同PID的不用信息表由表标识符table Id来区分,接收端通过查这些特定的PID来找到他们。
一,一个ts流中包含了很多PID packets,这些数据包大致包含以下两个tables表。
1,PSI tables-------节目特殊信息,从一个携带多个节目的TS流中正确找到特定的节目。
2,SI tables---------主要的event信息包含在这个表里面。
下面我们来详细解析一下这两个表格数据。
二,PSI tables里面包含如下信息:
1,PAT---------节目关联表,其PID是0x00,包括该TS流的PID和所有节目映射表的每个节目的PMT的PID,这些PID是描述每个独立节目的详细信息的指针,和每个PMT表对应的频道号。
2,CAT-----------条件接收表, 其PID是0x01,CAT携带的是服务的私有信息(CA系统就需要使用该表格实现节目的解密)。
3,PMT--------节目映射表,包含有特殊的PID和特殊的payload.。它的PID由PAT传送,描述节目的音视频(ES流)PID、PCR_PID、音视频ECM_PID信息。
4,NIT---------网络信息表,包括数字电视网中的所有传输流的物理传输网信息,包含节目的频道调谐参数、频率、符号率等,这些信息使得接收机可以按照用户的选择以很少的延迟或无延迟的改变频道、调谐参数,正确的解码出TS流。
三,SI是对PSI的扩展,SI包括业务描述表(SDT)、事件信息表(EIT)、时间和日期表(TDT)、时间偏移表(TOT)、业务群关联表(BAT)、运行状态表(RST)、填充表(ST)、选择信息表(SIT)、间断信息表(DIT)等表信息。其中NIT、SDT、EIT、TDT是必须传送的,其他的表按照需要进行选择传送。
SI table里面包含如下数据:
1,BAT------------业务群关联表,相对于整个ts的信息描述。
SI_BAT_BouquetId---------码流识别ID
bouquet_descriptors_length---------码流长度
2,SDT--------服务器描述表,包含当前传输流和其他传输流的业务信息,当前传输流ID,当前传输流中包含的节目名称,节目类型等。
3,EIT-------------节目(时间)信息表,生成EPG的主要表。包括每个节目的当前播出的节目名称、播出开始时间、播出时间段、父母控制级别等信心和下一个播出节目的相关信息。
4,TDT-----------世界时间和日期表。
5,TOT--------时间偏移表。
6,RST-------运行状态表,能准确而迅速更新一个或多个时间的时间状态。
总结:这几个表的用途和关联:
NIT:用来描述网络信息、网络传输的复用流/TS流的物理结构信息
PAT:描述PMT的PID信息
PMT:描述节目的音视频PID、PCR_PID、音视频ECM_PID信息
SDT:描述节目名称、节目提供者名称等补充信息
EIT:描述时间信息,包括时间名称、事件起始和持续时间、事件内容简介等信息
BAT:描述业务群的名称、业务群ID,以及业务群包含的节目信息
CAT:描述一些条件,就是CA加密等授权的问题信息
TDT/TOT:描述当前的时间信息和本地偏移时间信息
数字电视之TS流解析相关推荐
- TS流解析【PCR】自己的总结
http://www.cnblogs.com/ztteng/articles/3166025.html http://blog.csdn.net/liuhongxiangm/article/detai ...
- TS流解析之PMT表格解析
from:http://blog.csdn.net/xioahw/article/details/4093491 PMT结构定义: typedef struct TS_PMT_Stream { un ...
- TS流解析之PAT表格解析
from: http://blog.csdn.net/xioahw/article/details/4093488 PAT表格定义如下: typedef struct TS_PAT_Program { ...
- TS流解析 二 *****
1.TS格式介绍 TS:全称为MPEG2-TS.TS即"Transport Stream"的缩写.它是分包发送的,每一个包长为188字节(还有192和204个字节的包).包的结构为 ...
- TS流解析 ffmpeg
ffmpeg关于mpegts码流解析部分: 1. 首先来看main函数 通过av_register_all()来注册所有的编解码器.解复用器(这里只用到mpegts_demuxer).注册所使用的协 ...
- c语言解析ts流文件,TS流解析
1. 介绍:TS即是"Transport Stream"的缩写.他是分包发送的,每一个包长为188字节或者是204的字节(204字节的就是在后面添加了16字节主要用于高清解码), ...
- ffmpeg——TS流解析
RTSP(Real Time Streaming Protocol),实时流传输协议,是TCP/IP协议体系中的一个应用层协议,该协议定义了一对多应用程序如何有效地通过IP网络传送多媒体数据.RTSP ...
- python处理ts_[python]TS流解析
据说TS包长度是188个字节,真的是这样?实验一下(原理:0x47是TS包头的第一个字节,作为同步字段): file = open('test.ts', 'rb') offset = 0 start ...
- DVB中TS流数据解析
引 言 数字生活方式是现代文明的一个重要标志.在与人们工作生活密切相关的电脑.手机和电视三大信息平台中,电脑和手机已实现了数字化和网络化,为人们带来了多姿多彩的资讯和娱乐服务,也为相关企业带来了巨额 ...
最新文章
- 分享一波 ZooKeeper 面试题
- windows下对路由表的操作命令
- obs 推流编码在哪设置_OBS录屏软件
- python列表解析式如何使用_python列表解析式,生成器,及部分内建函数使用方法...
- .NET设计模式(3): 抽象工厂模式
- flex include和import
- 《ISO20000-12011 认证合格判定基础》(证书样例子+认证文档+录音下载)
- Delphi视频教程第二季
- AT指令集超详细解析(内含EC20模块datasheet)
- Java中分布式概念
- 基于python处理问卷数据并进行卡方分析全流程
- Python爬虫实战:css加密 动态字体练习 猿人学比赛题目七题详解
- apple tv 开发_如何在新的Apple TV上重新排列,配置和删除应用程序和游戏
- 宋词10家--一人一首成名曲
- alpha版、beta版、rc版的意思
- react —— 解决报错之 Objects are not valid as a React child (found: [object HTMLDivElement]). If you meant
- 2019 年第 25 周 DApp 影响力排行榜 | TokenInsight
- 蘑菇街商家登录php源码,蘑菇街
- lol8月7号服务器维护,LOL8月7日更新了什么内容 8.15新版本更新维护公告
- Win2008 r2 远程桌面授权已过期的解决办法