|
刚好不久前做过这个,可以告诉你
首先,你的camera驱动必须支持多种格式的预览数据输出
那么需要用到
IAMStreamConfig* m_pPreviewStreamConfig
这样一个结构体,然后
初始化他
m_pCaptureGraphBuilder->FindInterface(&PIN_CATEGORY_PREVIEW, &MEDIATYPE_Video, m_pVideoCapture, IID_IAMStreamConfig, (void **) &m_pPreviewStreamConfig);
获得你的设备所支持的图像大小
m_pPreviewStreamConfig->GetNumberOfCapabilities(&iCount, &iSize);
可以遍历,找到你所需要的大小
VIDEO_STREAM_CONFIG_CAPS scc;
AM_MEDIA_TYPE *m_pamtCaptureStream;
for(i=0; i
{
m_pCaptureStreamConfig->GetStreamCaps(i, &m_pamtCaptureStream, (BYTE*)&scc);
if (...)
m_pPreviewStreamConfig->SetFormat(m_pamtPreviewStream)
DeleteMediaType(m_pamtCaptureStream);
}
|
|