SDialog实现了设置ToolRewritePTS
参数的对话框。此对话框还附有浏览选定文件中,指定范围内的PTS、DTS、PCR和OPCR
的功能。
件交换变量。存储了是否需要计算DTS/PTS/OPCR/PCR
是一个重写PTS、DTS、PCR和OPCR的工具。
给定一个初始PTS和修改的范围,MAToolRewritePTS会寻找出
范围内,最小的PTS(主要原因是音频包可能置后于视频包,
如果直接使用视频的PTS,当初始PTS过小时,可能会导致音
频的PTS出现负值),然后根据最小的PTS和初始PTS计算出
其差值,将所有范围内的PTS、DTS、PCR和OPCR减去此偏移量,
如果DTS、PCR和OPCR与此偏移量差值小于0,就将他们的初
始值改为0,并重新计算各自得偏移量。
m_lstPTS.InsertColumn(0, "Package", LVCFMT_LEFT, 60);
m_lstPTS.InsertColumn(1, "PID", LVCFMT_LEFT, 30);
m_lstPTS.InsertColumn(2, "PTS", LVCFMT_LEFT, 75);
m_lstPTS.InsertColumn(3, "DTS", LVCFMT_LEFT, 75);
m_lstPTS.InsertColumn(4, "PCR", LVCFMT_LEFT, 75);
m_lstPTS.InsertColumn(5, "OPCR", LVCFMT_LEFT, 75);
// 因为做同步的关系,可能会遗留下一些不在188边界的数据,这些数据当时不能处理,
// 只有在下一次开始读取数据之前,将所有未处理过的数据移至缓存的开始。并且读取
// 从此部分以后的位置填写数据。
/Files/dvb-dvb/MPEGAnalyser.rar
文章来源:
http://www.cnitblog.com/dvb-dvb/archive/2009/07/09/mpeg2sourcecode.html