作爲DS的新手,我需要一個SampleGrabber來處理VIDEOINFOHEADER2,IMediaDet不能。DirectShow的SampleGrabber檢索錯誤的樣本
因此,我從DX8.1樣品中拿取SampleGrabber,與stock grabber相比,它允許使用各種介質。 我使用的樣例代碼相當原樣,並搶得一個單幀一切似乎很好地工作:根據圖表,而不返回ErrorCode的等內置 然後調用
hr = pSeeking->SetPositions(
&Seek,
AM_SEEKING_AbsolutePositioning,
NULL,
AM_SEEKING_NoPositioning);
與尋求= 2
回調被稱爲:
HRESULT回調(IMediaSample * pSample,REFERENCE_TIME *開始時間,REFERENCE_TIME *停止時間,BOOL TypeChanged)
的問題是與緩衝器: 它具有正確的大小(GetSize()== 691200 = 3 Byte * 640 * 320) 但它的內容全部是「205」,不能是(以哪種格式)。
可疑一下: 的「回調」的參數是開始時間= 834168,停止時間= 1251251和TypeChanged = 1
我試圖表示在GraphEdit中 https://msdn.microsoft.com/en-us/library/windows/desktop/dd390650%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396 圖形,但沒有成功(「應用正忙於「從GraphEdit)。
問題在哪裏?
我對DirectShow一無所知,除了一些涉及20多年前的事情。我唯一看到的是0xCD的線索。是的,我同意,刪除問題,因爲事實證明它與DirectShow無關。 –
我會的。但是 - 再次指出 - 你的提示確實是一種幫助。謝謝! :-) – nji9