I have an old Intel integrated GPU (Intel(R) HD Graphics on Windows 10 21H1) and the MS VMR9 player from SDK works fine for me :
vmrplayer sample from vmr9
DirectX9, Direct Show : VMR9 Renderless Video Rendering crash on Intel's Integrated GPUs.
I have created a DirectX9 (DirectShow) based Sample MFC Application, that plays multiple videos one by one on Full Screen.
App uses VMR9 Renderless Mode using Custom Surface Allocator. It also uses YUV Mixing Mode and have Surface allocation flag as 'VMR9AllocFlag_OffScrenSurface'.
When app runs on a PC having
Case 1: Dedicated GPU (any), everything work fine.
tested using external graphics (NVIDIA GeForce RTX 3050).
Case 2: Integrated GPU of Intel i5 12th Gen PC, (Intel UHD Graphics 770)
Video shows black screen. No errors are logged, as every DirectX API execute successfully.
If I disable YUV Mixing Mode and change Surface Allocation flag to 'VMR9AllocFlag_TextureSurface',
it works fine for first few videos, but after that the App crashes and GPU suddenly spikes to 100%.
For testing Same video copies are used.
Still no logs are generated for DirectX api failures.
Is having dedicated GPU the only solution ?
(or)
Is there a workaround for Video Rendering using VMR9 using Integrated GPUs ?
I have already referred DirectX9 CreateDeviceEx fails with D3DERR_NOTAVAILABLE,
this error stopped coming after installing DirectX9 Runtime.
Issue does not come when using Dedicated or external graphics.
1 answer
Sort by: Most helpful
-
Castorix31 81,636 Reputation points
2022-12-08T07:04:39.41+00:00