DXVA Checker怎么破??

yamkou yamkou 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
DXVA Checker 功能企图实现,可是Decoder Device部分只做到了DXVA2.0检测。DXVA1.0的API就是找不到。
还有就是Processor Device也无法实现。怎么破?
附上DXVA2.0检测的Code:

IDirectXVideoDecoderService * pDecoder = NULL;
IDirect3D9 *pD3D = NULL;
IDirect3DDevice9 *pDevice = NULL;

// Set up structure to create D3D Device
D3DPRESENT_PARAMETERS d3dpp;
ZeroMemory( &d3dpp, sizeof( d3dpp));
d3dpp.Windowed = TRUE;
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
d3dpp.BackBufferFormat = D3DFMT_UNKNOWN;

// Set up structure to create D3D Device
if( FAILED( pD3D = Direct3DCreate9( D3D_SDK_VERSION)))
{
RT_LOG("Failed to Create Direct3D9!\n");
return E_FAIL;
}
RT_LOG( "Success to Create Direct3D9 !\n");
if( FAILED( pD3D->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, this->m_hWnd, D3DCREATE_SOFTWARE_VERTEXPROCESSING,
&d3dpp, &pDevice)))
{
RT_LOG("Failed to Create Direct3D9 Device!\n");
return E_FAIL;
}
RT_LOG( "Success to Create Direct3D9 Device!\n");

if( FAILED( DXVA2CreateVideoService( pDevice, IID_PPV_ARGS(&pDecoder))))
{
RT_LOG("Failed to CreatVideoService!\n");
return E_FAIL;
}

UINT nCount;
GUID* pGuids;

if( FAILED(pDecoder->GetDecoderDeviceGuids( &nCount, &pGuids)))
{
RT_LOG("Failed to Get Decoder!\n");
return E_FAIL;
}
CString src;
for( UINT i =0; i < nCount; i++)
{
for (int j = 1; j < _countof(DXVA2Decoder); j++) {
if (pGuids[i] == *DXVA2Decoder[j].Guid) {
WriteConsole( hOutPut, DXVA2Decoder[j].Description, _tcslen(DXVA2Decoder[j].Description), NULL, NULL);
WriteConsole( hOutPut, _T("\n"), _tcslen( _T("\n")), NULL, NULL);
break;
}
}
src ="";
src.Format(_T("%08X-%04X-%04X-%02X%02X%02X%02X%02X%02X%02X%02X\n"), pGuids[i].Data1, pGuids[i].Data2,
pGuids[i].Data3, pGuids[i].Data4[0], pGuids[i].Data4[1], pGuids[i].Data4[2], pGuids[i].Data4[3],
pGuids[i].Data4[4],pGuids[i].Data4[5],pGuids[i].Data4[6],pGuids[i].Data4[7]);
WriteConsole( hOutPut, src, src.GetLength(), NULL, NULL);
}



pDecoder->Release();
pDevice->Release();
pD3D->Release();

return S_OK;
...全文

相关推荐

DXVA Checker 4.1.2

DXVA Checker这款软件可以帮助用户了解他们的系统是否具备DXVA兼容的硬件,以及哪些视频编码格式能够利用这种硬件加速。

LianLok

DXVA技术检测工具:DXVA Checker使用指南

DirectX是由微软公司推出的一系列用于游戏和多媒体的技术集合,旨在提升Windows平台上的音视频处理能力。DirectX的核心是Direct3D,它主要负责3D图形渲染,而DirectDraw则专注于2D图形加速。DirectX技术的不断更新,不仅推动了游戏和图形处理的发展,也为其他应用领域,比如流媒体播放器和虚拟现实,提供了重要的技术基础。在DirectX的演进中,硬件加速成为了一个重要的里程碑,它通过利用GPU的强大计算能力,极大提升了视频处理和游戏渲染的效率和质量。

诡道荒行

DXVA Checker 4.1.2:4K视频硬件加速检测工具

DirectX Video Acceleration(DXVA)是一种利用GPU加速视频播放的技术,与传统的CPU解码相比,DXVA技术可以在播放视频时大大减轻CPU的负担,并且能够利用GPU进行更高效的视频解码。与传统解码技术相比,DXVA可以提供更加流畅的播放体验,并且具有更低的功耗。CPU解码视频时,处理的任务比较单一,主要进行数据处理和运算,但随着视频分辨率的提升和编码技术的进步,CPU解码的效率逐渐成为瓶颈。

Ga Ou

我们如何方便判断我们当前电脑显卡是否支持GPU硬件加速(硬解码),图解DXVA Checker详细使用方法介绍

这里推荐一个小工具——DXVA Checker(官网下载地址) 这个免费的小软件可以检测GPU支持的DXVA硬解标准,其中SD代表DVD级别的标准清晰度,HD代表1280x720级别的高清晰度,FHD就是1080p全高清了,QFHD则是4K级别的超高清晰度了。 先上两张图,分别对应的是我电脑两张显卡intel显卡和AMD显卡: intel显卡: AMD显卡: 下面我们来看看这个软件: 功能 该程序是一个检查 DirectX 视频加速 (DXVA) 的工具,它具有以下功能。 检查 GPU 支持的解码器设备

SunkingYang

DXVA Checker

**DXVA Checker的功能**: - **检测支持**:DXVA Checker可以检查用户的显卡驱动和播放器软件是否支持DXVA硬件加速,这包括识别显卡型号、驱动版本,以及检查特定视频编解码器是否启用硬件加速

CBlueware
评论 1
收藏 已收藏
分享
返回顶部
yamkou
多媒体/流媒体开发 2,554 成员 20,277 内容