zoukankan      html  css  js  c++  java
  • 图文频道业务项目

             

        图文频道业务是机顶盒软件中的一个业务,它是以图片加声音的形式为电视用户提供企业信息、

    产品信息和相关知识等与观众生活息息相关的资讯。

         图文频道业务的前身是广告业务,在播放过程中每隔固定的周期,会更换图片和声音,且是同

    步的,采用的是多协议封装,需要解析PAT、PMT、DSI、DII和DDB。

    前期准备:

         通过servict type在SDT表找到对应的serviceID和TS_ID,再通过TS_ID在NIT表中找到频点

    信息,并保存为后期搜索做准备。

    后期搜索:

         (1)锁频后,下载PAT,通过serviceID找到PMT的PID。

       (2)通过PID寻址,即可下载PMT,在PMT中解析出图文频道DSI、DII和DDB的PID,及指

    向PID的Tag。PMT中的association_tag_descriptor()描述符中的use == 0x0000时,可得到DSI

    PIDTable_id_extension(ModuleID)。并将这些数据放入缓存。

      注:此种方法得到DSI的ModuleID不太可靠(协议中有提),另外一种方法是:ModuleID <= 1。  

     

          (3)DSIPIDtable_id = 0x3Btable_id_ extension(ModuleID),即可下载到DSIDSI中描

    述了DIITag和根目录Root中的ModuleID

      (4)根据DSI中的TagPMT中查寻到时DIIPID,由DIIPIDtable_id = 0x3BModuleID>1,

    即可下载到DIIDII中描述了所有的文件对象的ModuleIDTag和文件对象的个数。

      此时,即可统计出该项业务在传输流中所有的PID、tableID和ModuleID。

      (5)通过DSIRoot的ModuleIDDII中找到相应的Root的Tag,再通过TagPMT中找到Root的PID

    根据找到的PIDtable_id = 0x3CRoot的ModuleID即可下载Root,Root中描述了所有文件的ModuleID

    和文件名(FileName)

    关键ER图:

  • 相关阅读:
    故障-因为MAC地址冲突造成的故障
    MySQL安全审计(init_connect)
    GLIBC升级
    HTTPS优化与证书
    封装打包Python脚本
    fiddler进行弱网测试的坑
    Jmeter的安装
    win10安装Mysql
    linux常用命令(五)
    linux常用命令(四)
  • 原文地址:https://www.cnblogs.com/xiehy/p/1682223.html
Copyright © 2011-2022 走看看