对一个现成的ts进行pat和pmt表的解析,并提取视频保存到文件中

本文介绍了基本的TS流、PES流和ES流的概念,并详细阐述了如何从TS流中解析PAT和PMT表,以及提取PES包中的视频数据并保存到文件。通过理解TS包结构,找到PAT和PMT的PID,进而获取视频音频PID,实现TS流的解析和视频提取。
摘要由CSDN通过智能技术生成

基本概念:

 ES流:原始流  直接从编码器输出来的数据流 可以使编码过的视频,音频数据流,也可以是其他videotext等编码得到的数据流。ES经过压缩复用之后会形成PES流,ES和PES流都是只包含一种数据的数据流,如只包含音频或只包含视频。

 PES流:PES流是ES经过PES打包器处理后形成的数据流,在这个过程中完成了ES流的分组,打包,加入包头信息等操作。PES流的基本单位是PES包,PES是由包头和payload组成的。

TS流:传输流  由PES包重新封装得到  PS:节目流 两者的区别在于TS流是基于packet的位流格式,每个包是188字节或者是204字节,一般使用较多的是188字节的一个包的格式,204字节一个包的格式据说在高清节目中使用较多。而PS流的包结构是可变长度的。PS包由于长度是可变化的,一旦丢失某一数据包,接收机就会进入一种失步状态,从而导致严重得错误信息。而TS流由于采用的固定的包结构,当传输码破坏了某一TS包的同步信息时,接收机可在固定位置检测它后面包中的同步信息。从而恢复同步避免信息丢失。所以TS流内部具有很强大的错误处理能力。

一个TS流中有多种数据,一个packet里面可以是视频数据可以使音频数据也可以是PSI/SI表格数据。

http://www.360doc.com/content/13/0829/15/13084517_310733557.shtml

http://blog.csdn.net/zxh821112/article/details/17587215

里面讲基础知识讲的很清楚,下面我来总结一下我工作第一周学到的东西和完成的任务。

作业1:从一个现成的TS流里解析PAT表和PMT表,并把PES包里的视频提取出来保存到文件里。

首先,解析PAT,PMT表的过程就是分析结构并对一段十六进制数据处理的过程,我们首先要了解packet的结构从中找到包含PAT表的packet,然后解析PAT表解析得到PMT pid,再解析PMT表得到视频音频pid。解析过程要针对各个表的不同数据结构及各字段的含义来进行分析。

 

TS包:

</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值