一些背景DirectShow過濾器圖結果使用Async_reader和波分析器:在視頻尋求問題
我試圖創建一個基於從DirectShow的SDK中的pushsource例如一個DirectShow源過濾器。這基本上輸出一組位圖,每個位圖可以持續很長時間(例如30秒)。我已經設置了一個過濾器圖形,它使用AsyncReader和一個Wave Parser作爲音頻,我的新過濾器用於推送視頻(過濾器是一個CSourceStream,並且我在FillBuffer函數中填充框架)。這些都連接到WMASFWriter輸出WMV。
問題:
當我試圖通過所產生的視頻去追求,我要等到其顯示之前發生了位圖的開始時間。例如,如果我當前正在看到位圖4並跳回到顯示位圖2的時間,則在第三個位圖開始之前,視頻輸出不會改變。最初我想知道我是否不允許FillBuffer被調用到足夠的程度(因爲目前它只有每個位圖一次),但是我已經注意到,當音軌非常短(也許只有一秒)時,我可以通過視頻如預期。是否有另一種方法可以將音頻引入過濾器圖形中?當WMV被渲染時,我是否需要執行某種索引?我有點不知所措......
也就是說,你可以獲得一個精心打造的WMV文件(無需搜索回放),然後用*尋找來播放*尋求引入問題? – 2012-01-16 17:11:37
是的,WMV播放良好,但只要我試圖尋找就是當我遇到問題時。一旦下一幀的時間在我尋求發生的地方,視頻的播放就會正常恢復(音頻總是正確地尋找)。 – Andrew 2012-01-16 22:03:56