我写过的软件之TS Expert

(工作N多年了,一直想着花点时间把一些比较有价值或者印象比较深的东西记录下来,一直没有动手,现在终于真的动手了,准备先把以前自己写过的软件一个个回顾一下。大笑
 
本篇打算记录一下TS Expert
 

因为工作的关系,经常需要用到DVB TS流分析工具。在网上找了几个,基本上不尽人意。有几个比较好用的,也是商业的,使用的时候还得绑定到硬件上。2006年左右决定自己动手写一个,花了大半年业余时间写完了一个,取名叫做TS Expert。丫的,SI/PSI中的descriptor太多了,虽然没有太多的技术含量,一个个分析还挺耗时间。原来想靠这个软件赚点钱,做了一个简单的授权证书,大笑。后来也没有花精力去做推广,估计不会有多少实际的收入,就放了一个版本到CSDN上面,把一个license也放进去(那个license只是简单的时间检查)。有些网友表示愿意支付一些费用来得到一个没有时间限制的版本,不过想想估计也没有多少钱,有给我发邮件的人我基本上给他们发过一个没有时间限制的版本。

比较不爽的是收到iPanel公司一个工程师的邮件,索要代码,我不给,丫的竟然给我发来一堆骂人的话。。。我都懒得回他邮件了。被狗咬了一口,我不能反咬狗一口啊。。。生气

 
TS Expert主要是从工程师角度来考虑的(因为我以前也是工程师。现在算是工程师吗?是吗?不是吗?是吗?不是吗?算了。。。算0.5个工程师吧。。。)。原来分析码流的时候对码流工具有2个期望:
  1. 提取出有用信息,并把信息进行汇总。
  2. 能够一个字段一个字段地分析,包括每个字段的名称、长度、值以及在码流中的位置。


在设计TS Expert的时候就把这2个基本目标列进去了,再给自己列了一些具体的需求:
  1. SI/PSI表显示
  2. 支持所有的描述子
  3. 支持多个版本SI/PSI表
  4. 多个视图显示数据
  5. 数据量统计
  6. 重复次数显示
  7. CRC校验、错误检测
  8. 支持TS包/PES包的分析
  9. 自定义提取TS包、Section和PES包
  10. CRC、CSA辅助工具


CSA算法是从VLC里面扒下来的,自己整理了一下。其他的代码都是自己慢慢码上去的,一边看规范一边写代码,还一边造数据来做测试,自己写软件还是比较专业的。

放了一个最新版本到下面位置,有需要的自己下载去吧:TS Expert

TS Expert的代码量差不多2.5W行,用VC 写的。写完TS Expert之后,自己对TS流的边边角角都比较清楚了。把这个软件共享给公司的同事用,无意中赢得了大牛的称号,经常跟他们开玩笑说用我的软件得给钱,到目前也没有谁为此请我吃顿饭,这些人。。。 


附带一些界面截图,有DVB知识的人应该看得懂。截图不是最新的,后来又陆陆续续加了一些新功能,没有重新截图。

主界面

主界面


PID列表PES包分析

PID列表 && PES包分析


搜索数据

搜索数据


CSA

CSA


CRC

CRC

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章