CMediaType的加載:mPreferred.SetType(&MEDIATYPE_Video);
mPreferred.SetFormatType(&FORMAT_VideoInfo);//RGB
mPreferred.SetTemporalCompression(FALSE);
mPreferred.SetSubtype(&MEDIASUBTYPE_YV12);
mPreferred.SetSampleSize(pvi->bmiHeader.biSizeImage);
mPreferred.SetFormat(p,sizeof(VIDEOINFOHEADER));
p的類型是btye *,指向的是含有文件信息的數據塊,也就是說加載到了Sample上。
但是setformattype(&FORMAT_VideoInfo),這種情況下是不會自動鑑別出格式的,
還要定義 pvi->bmiHeader.biCompression = BI_RLE4;不同的壓縮格式,定義不同
如果在Sample中含有頭文件信息,可以直接讀出來,賦值給新的VIDEOINFOHEADER,用這個來控制Filter上的各種情況
問大家一個問題:
下面這兩個值是多少:sizeof(VIDEOINFO)和sizeof(VIDEOINFOHEADER)?我得到的是88和1128
不知道是不是正確的?請大家指導