我写过的软件之TS Expert

原创 2013年12月02日 11:00:35
(工作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

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

我写过的软件之TSE-背景介绍

今天记录一下TSE,^_^。TSE其实是TS Expert的C#版本。TS Expert使用VC++实现的,在写TS Expert的时候正在学习各种各样的设计模式,故意把一些设计模式用到TS Expe...

我写过的软件之OneWorld-大世界

之前想写一个类似于类似于QQ的聊天工具(自己给它取名为FreeTalk)。那时候想基于UDP/TCP自定义协议来和服务器做数据通讯,但是慢慢地推翻自己原来的想法。现在感觉比较合理的技术架构是基于web...

我写过的软件之CmmbHst

到公司这几年,给公司写了3个HST(Host Simulation Tool):CmmbHst、UniversalHst和LoaderHst。HST主要是用于模拟机顶盒或者手机设备,平时用于进行测试或...

我写过的软件之OneWorld-大世界3

Android客户端终于开始动手了,IDE用Android Studio。谷歌在Android Studio还是花了不少精力的,默认加入了Design Support Library,而且更稳定。 今...

我写过的软件之CmmbExpert

CmmbExpert是2007年左右写的。CMMB是China MobileMultimedia Broadcasting的简写。写过TSExpert,对着CMMB协议写出一个用于解析CMMB码流的分...

我写过的软件之UniversalHst-DVBView

UniversalHst目前主要有三个View,DVBView主要用于手动测试或者系统测试,TestView完成终端的CT Automation,BSGView则负责根据生成DVT需要的码流。我做的版...

我写过的软件之UniversalTestForSoftcell

本篇记录一下UniversalTestForSoftcell的来龙去脉。。。^_^。 自从公司re-org之后,开发和测试就严格区分开,分别汇报给不同的manager,经常会出现掐架的现象。某种程...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)