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