1 2 Previous Next 23 Replies Latest reply on May 11, 2015 1:29 AM by StuPVS

    DirectX9 crash on calls to GetRenderTargetData with HD 4000 range drivers

    StuPVS

      Hi, I'm a developer on the PhotoVidShow software.  We have had crash issues with users using our software on computers with Intel HD 4000 range graphics cards.  This seems to happen on most versions of the driver included the latest 10.18.10.3958.  This problem has been seen on windows 8 and 7 computers.

       

      After investigation the problem seems to be a crash on a directx9 call to Idirect3DDevice9::GetRenderTargetData method.

       

      Attached is a Directx9 program which demonstrates this problem as simply as possible.

       

      Here we create 2 surfaces in system memory (1920x1080 32 bit).  Then under the normal render loop we copy the back buffer (same size) from the GPU to a surface.  We alternate the surface on each call to render.  After about the 3rd call to GetRenderTargetData() it crashes in igdumdim32.dll

       

      This code runs on other computers with no problem, including with Nvidia cards as well as things like an integrated Mobile Intel 4 Series Express Chipset

       

      It maybe we're doing something silly, but I'm also wondering if this is an issue in the HD 4000 drivers?

       

      Only creating one surface above fixes the issue, so is a possible workaround for us.  Also at lower resolution surfaces like 720p, this problem only happens if there are 3 surfaces etc.

       

      Our software PhotoVidShow creates Photo DVD and HD slideshows, so we need to do this constant copying from the back buffer to send to our mpg encoders which runs on the CPU.

       

      Hope this make sense.

       

      Many thanks in advance

      Stu

        1 2 Previous Next