[vlc-commits] [Git][videolan/vlc][master] 2 commits: dxgi_fmt: add the Mthreads manufacturer ID
Steve Lhomme (@robUx4)
gitlab at videolan.org
Sat Jul 11 13:03:20 UTC 2026
Steve Lhomme pushed to branch master at VideoLAN / VLC
Commits:
1d65d4fa by jianfeng.zheng at 2026-07-11T12:49:57+00:00
dxgi_fmt: add the Mthreads manufacturer ID
Signed-off-by: jianfeng.zheng <jianfeng.zheng at mthreads.com>
- - - - -
290ffb20 by jianfeng.zheng at 2026-07-11T12:49:57+00:00
direct3d11: add Mthreads based video super resolution
Signed-off-by: jianfeng.zheng <jianfeng.zheng at mthreads.com>
- - - - -
2 changed files:
- modules/video_chroma/dxgi_fmt.h
- modules/video_output/win32/d3d11_scaler.cpp
Changes:
=====================================
modules/video_chroma/dxgi_fmt.h
=====================================
@@ -39,6 +39,7 @@ extern "C" {
#define GPU_MANUFACTURER_S3 0x5333
#define GPU_MANUFACTURER_QUALCOMM 0x4D4F4351
#define GPU_MANUFACTURER_MICROSOFT 0x1414 // "Microsoft Basic Render Driver"
+#define GPU_MANUFACTURER_MTGPU 0x1ED5
#define DXGI_MAX_SHADER_VIEW 4
#define DXGI_MAX_RENDER_TARGET 2 // for NV12/P010 we render Y and UV separately
=====================================
modules/video_output/win32/d3d11_scaler.cpp
=====================================
@@ -118,6 +118,10 @@ checked:
{
canProcess = true; // detection doesn't work
}
+ else if (d3d_dev->adapterDesc.VendorId == GPU_MANUFACTURER_MTGPU)
+ {
+ canProcess = true; // detection doesn't work
+ }
#ifdef HAVE_AMF_SCALER
else if (d3d_dev->adapterDesc.VendorId == GPU_MANUFACTURER_AMD)
{
@@ -544,6 +548,34 @@ int D3D11_UpscalerUpdate(vlc_object_t *vd, d3d11_scaler *scaleProc, d3d11_device
goto done_super;
}
}
+ else if (d3d_dev->adapterDesc.VendorId == GPU_MANUFACTURER_MTGPU)
+ {
+ constexpr GUID kMtvsrGUID{ 0x28D65B12, 0x957F, 0x4C0C, {0xA9, 0x34, 0x3B, 0x5D, 0xBE, 0xB4, 0x31, 0x0F} };
+ constexpr UINT kMtvsrVersion = 0x1;
+ constexpr UINT kMtvsrMethod = 0x1;
+ constexpr UINT kMtvsrLevel = 1;
+ struct ExtInfo
+ {
+ UINT version;
+ UINT method;
+ UINT level;
+ UINT enable;
+ } extInfo = {
+ kMtvsrVersion,
+ kMtvsrMethod,
+ kMtvsrLevel,
+ upscale ? 1u : 0u,
+ };
+ hr = scaleProc->d3dvidctx->VideoProcessorSetStreamExtension(
+ scaleProc->processor.Get(), 0,
+ &kMtvsrGUID, sizeof(extInfo), &extInfo);
+
+ if (FAILED(hr)) {
+ msg_Err(vd, "Failed to set the Mthreads video super resolution extension. (hr=0x%lX)", hr);
+ d3d11_device_unlock(d3d_dev);
+ goto done_super;
+ }
+ }
}
d3d11_device_unlock(d3d_dev);
#ifdef HAVE_AMF_SCALER
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/0a18bcf28b9a5c58cc48f72b2f7adf6a158c4896...290ffb2070b2f9de5c54ee74778aeba30b48346c
--
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/0a18bcf28b9a5c58cc48f72b2f7adf6a158c4896...290ffb2070b2f9de5c54ee74778aeba30b48346c
You're receiving this email because of your account on code.videolan.org. Manage all notifications: https://code.videolan.org/-/profile/notifications | Help: https://code.videolan.org/help
More information about the vlc-commits
mailing list