2013-10-30 43 views
1

使用ISampleGrabberCB接口如何將SampleCB IMediaSample用於位圖?如何將IMediaSample轉換爲位圖

例如:

int ISampleGrabberCB.SampleCB(double SampleTime, IMediaSample pSample) 
    { 
     Bitmap frameBitmap = new Bitmap(pSample); 
     return 0; 
    } 

回答

2

沒有直接轉換媒體樣本的成位圖。媒體採樣是通過流媒體流水線傳送的一段數據,可以是視頻幀,未壓縮和壓縮,音頻數據包,文件字節塊等。顯然,沒有從非視頻媒體樣本轉換有意義。

如果你的樣品採集卡是設置爲接受RGB數據(或它的RGB由一個巧合),你可能可以創建這些數據之上的Bitmap對象的權利,如果你提供正確的跨度(間距)和像素格式。否則,你將不得不執行額外的格式轉換。