- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
When I build sample_multi_transcode app I get the following error ?
Any reason for this ?
>InitializeBuildStatus:
3> Touching "..\_build\x64\Release\obj\sample_multi_transcode\sample_multi_transcode.unsuccessfulbuild".
3>ClCompile:
3> sample_multi_transcode.cpp
3>src\sample_multi_transcode.cpp(75): error C2061: syntax error : identifier 'D3D11AllocatorParams'
3>src\sample_multi_transcode.cpp(76): error C2061: syntax error : identifier 'CD3D11Device'
3>src\sample_multi_transcode.cpp(82): error C2065: 'D3D11AllocatorParams' : undeclared identifier
3>src\sample_multi_transcode.cpp(82): error C2065: 'pD3D11Params' : undeclared identifier
3>src\sample_multi_transcode.cpp(82): error C2061: syntax error : identifier 'D3D11AllocatorParams'
3>src\sample_multi_transcode.cpp(83): error C2065: 'pD3D11Params' : undeclared identifier
3>src\sample_multi_transcode.cpp(83): error C2227: left of '->pDevice' must point to class/struct/union/generic type
3> type is ''unknown-type''
3>src\sample_multi_transcode.cpp(83): error C2065: 'ID3D11Device' : undeclared identifier
3>src\sample_multi_transcode.cpp(83): error C2059: syntax error : ')'
3> transcode_utils.cpp
3>src\transcode_utils.cpp(764): error C2065: 'D3D11AllocatorParams' : undeclared identifier
3>src\transcode_utils.cpp(764): error C2065: 'd3d11AllocParams' : undeclared identifier
3>src\transcode_utils.cpp(764): error C2061: syntax error : identifier 'D3D11AllocatorParams'
3>src\transcode_utils.cpp(765): error C2065: 'd3d11AllocParams' : undeclared identifier
3>src\transcode_utils.cpp(767): error C2512: 'D3D11FrameAllocator' : no appropriate default constructor available
3>
3>Build FAILED.
3>
3>Time Elapsed 00:00:02.85
========== Build: 2 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
This is a known issue - some pieces of D3D11 code weren't put under defines for proper compilation with Windows SDK 7.0/7.1. You have two options to solve this:
1) install Windows SDK 8.0 and point the variable INTELMEDIASDK_WINSDK_PATH to that location
2) Add #if MFX_D3D11_SUPPORT in the following pieces of code:
transcode_utils.cpp, line 764:
#if MFX_D3D11_SUPPORT
D3D11AllocatorParams *d3d11AllocParams = dynamic_cast<D3D11AllocatorParams*>(pParams);
if (d3d11AllocParams)
m_D3DAllocator.reset(new D3D11FrameAllocator);
else
#endif
m_D3DAllocator.reset(new D3DFrameAllocator);
sample_multi_transcode.cpp, line 73:
else if (m_bUseD3D11)
{
#if MFX_D3D11_SUPPORT
m_pAllocParam.reset(new D3D11AllocatorParams);
m_hwdev.reset(new CD3D11Device());
sts = m_hwdev->Init(NULL, 1, GetMSDKAdapterNumber() );
MSDK_CHECK_RESULT(sts, MFX_ERR_NONE, sts);
sts = m_hwdev->GetHandle(MFX_HANDLE_D3D11_DEVICE, &hdl);
MSDK_CHECK_RESULT(sts, MFX_ERR_NONE, sts);
// set Device to external dx11 allocator
D3D11AllocatorParams *pD3D11Params = dynamic_cast<D3D11AllocatorParams*>(m_pAllocParam.get());
pD3D11Params->pDevice =(ID3D11Device*)hdl;
#endif
}
Regards,
Nina

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page