locked
Enable DXVA in a MFT

    Question

  • We are trying to modify the MFT grayscale in MS sample 'Media capture using capture device sample' to support DXVA by following code:

        // Create the attribute store.
        hr = MFCreateAttributes(&m_pAttributes, 3);
        if (FAILED(hr))
        {
            goto done;
        }

        // MFT supports DX11 acceleration
        hr = m_pAttributes->SetUINT32(MF_SA_D3D_AWARE, 1);
        if (FAILED(hr))
        {
            goto done;
        }

        hr = m_pAttributes->SetUINT32(MF_SA_D3D11_AWARE, 1);
        if (FAILED(hr))
        {
            goto done;
        }

    it works fine on most of Windows 8 PC except a PC with display adapter 'NVIDIA GeForce 7300 LE' and a PC with display adapter 'ATU Radeon HD 4600 series'.

    On these 2 PC, the MFT will never get the message 'MFT_MESSAGE_SET_D3D_MANAGER'.

    ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    But another MS sample 'Media extensions sample' which has a DXVA effect 'Invert' works fine on these 2 PC.

    I'm puzzled. Why ''Media extensions sample' can enable DXVA but 'Media capture using capture device sample' can't.

    Thanks.

    Monday, December 10, 2012 6:32 AM

Answers