ts,ps,mpeg2 decoder and analysis

分析工具,免费下载.

  IT博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  54 随笔 :: 0 文章 :: 168 评论 :: 0 Trackbacks
周末闲的无聊,带着十分放松的心情,  看看pd17 sdk的code, 特别是jack雷+廖dongdong写的代码:dvmi_vod.c

在看code之前:先说说我做过的一些“无聊”的事情,一般人都不这样做,一般人觉得这样做有啥意思?一般人也不好这口。

码流分析:
1,直播:我们大网总共多少个频点,每个频点有几个节目,每个节目视音频码率多少,高清标清,mepg2,ac3,dolby_E,dolby_plus.

用小莫的录流工具,把每个频点都录制100M文件的大小,然后去分析,得到以上参数。

点播:用jack雷说的那个dump方法:多点播几个大片,配合王剑说的那些vod点播无声音的片子。把数据都dump出来,然后分析。

我们的目的是:用最少buffer的缓冲器,去分析得到video,audio codec, 然后送给解码器。
如果你再参考vlc的source code, live555.


理论指导:
你至少得看3本书,国家标准,然后再去写code:ISO 13818-1,-2,-3, A52. 700436等。
这个时候,你心理就有数了:去分析pat,pmt, 去创建多大的buffer合适。pat,pmt至少每100毫秒就一次。
 

有了实践分析,有了理论指导,现在有资格来谈code了.

针对 vod的点播无音频的bug:
动动他们给的解决方法是: 改法1:增大kernel 内存2M,减小noncache2.5M,增大vod buffer 0.5M

其实根本不用更改kernel内存,
原来的code:    _Vod_Buff_Create(0x100000);  各位这里已经占了1M内存了,这里写成0.5M足够了。某些地方还得略调下。

然后增加:#define MI_DEMO_INJECT_VIDEO_MAX_PRE_BUFFER_MS                   1500     //1000ms
 
因为我实在不想动 kernel内存大小,但PD17项目已经结束了.

但视频点播是永恒的话题,DVMI_VOD_playIpStream更是到处都用,将来安卓盒子也是IP播放,未来智能手表上播放H264,那得需要多大内存,如何做到最优?

 
深圳的那几个人还老爱跑步,劈里啪啦的,还真能贼坚持。 那就稍微回想一下自己过去多牛,比一比,明天怎么做到更牛?
posted on 2015-02-08 13:28 TS,MPEG2,dvbc专家 阅读(732) 评论(2)  编辑 收藏 引用

评论

# re: 华山论剑: 高手是怎么炼成的! PD17项目篇! 2015-03-11 21:34 xxxx
知道
#define MI_DEMO_INJECT_VIDEO_MAX_PRE_BUFFER_MS 是什么含义?  回复  更多评论
  

# re: 华山论剑: 高手是怎么炼成的! PD17项目篇! 2015-03-21 20:30 q
这个是一个buffer的size; 表示,每次把buffer充满了数据后,才去分析的,其实,分析的结果,根本用不了这么多的数据,  回复  更多评论
  

只有注册用户登录后才能发表评论。