1

Тема: Як за допомогою WMF,видрати з вебкамери jpg або хоч mjpg ?

Дійшов до IMFSourceReader, а далі не розумію що робить

HRESULT hr;
void ShowHRESULT(HRESULT hr)
{
    if (hr == S_OK) { return; }
    wchar_t buf[512];
    wsprintf(buf, L"%X", hr);
    MessageBoxW(0, buf, L"", MB_OK);
}
DWORD WINAPI Thr(LPVOID  lParam)
{
    IMFAttributes *imfa;
    IMFActivate **devs;
    IMFMediaSource *pSource;
    UINT32 count = 0;
    wchar_t *debug=new wchar_t[1024*1024];
    hr = MFCreateAttributes(&imfa, 1);
    ShowHRESULT(hr);
    hr = imfa->SetGUID(MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE, MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_VIDCAP_GUID);
    ShowHRESULT(hr);
    hr = MFEnumDeviceSources(imfa, &devs, &count);
    ShowHRESULT(hr);
    if (count < 1)
    {
        MessageBoxW(0,L"No video devices", L"", MB_ICONERROR);
        return 0;
    }
    hr = devs[0]->ActivateObject(IID_PPV_ARGS(&pSource));
    ShowHRESULT(hr);
    /*****************************************************************/
    IMFSourceReader *pSourceReader;
    hr = MFCreateSourceReaderFromMediaSource(pSource, NULL, &pSourceReader);
    ShowHRESULT(hr);


    pSourceReader->Release();
    devs[0]->Release();
    imfa->Release();
    return 0;
}
void StartCatch()
{
    hr = MFStartup(MF_VERSION);
    ShowHRESULT(hr);
    CreateThread(0, 0,Thr, 0, 0, 0);
}