Windows Media编程导向一书中第八章的源码WmScreen,虽然在设置时是设置为10帧每秒,并且定时器的间隔也使用100ms截取一次屏幕并写入wmv文件,但是录制下来的wmv视频打开后发现像是1帧每秒。
hr = mProfileManager->CreateEmptyProfile(WMT_VER_9_0, &pProfile);
BREAK_IF_FAILED(hr);
// Create a new video stream
hr = pProfile->CreateNewStream(WMMEDIATYPE_Video, &pConfig);
BREAK_IF_FAILED(hr);
hr = pConfig->QueryInterface(IID_IWMMediaProps, (void**)&pProps);
WM_MEDIA_TYPE * mScreenMt;
WMVIDEOINFOHEADER * pVidHdr = (WMVIDEOINFOHEADER*) mScreenMt->pbFormat;
pVidHdr->AvgTimePerFrame = 1000000; // 10fps
pVidHdr->dwBitRate = 500000;
hr = pProps->SetMediaType(mScreenMt);
https://zhidao.baidu.com/question/489547120470167412.html
http://www.newxing.com/Code/VC/Multimedia/972.html
时隔这么久,不知道你解决了没有。但是看你上面的代码,AvgTimePerFrame,你设的好像就是1s啊(1,000,000)