I've recently purchased an HP laptop with I5-6200u processor (running on Windows 7 Pro, with a single 4GB DRAM module) on which I installed a DirectShow decode filter I developed. I decode a H.264 stream with 1920x1080 frame size using QuickSync decode and then use VPP to convert to RGB4 (RGB32). This filter when running on Sandy Bridge or Haswell has a stride value of 7680 (1920 * 4). However when I run it on the Skylake the stride is 7808. This is strange because 7680 which was the preferable value for Sandy Bridge and Haswell allowed a simple buffer copy of 1920*1080*4 bytes to the video frame buffer. On Skylake with the 7808 stride, one has to copy each line in a for loop 1080 times and also calculating the proper offsets for each line. Is this a driver issue, or perhaps the fact that I have only 1 DRAM module or is Skylake QuickSync fundamentally different from Sandy Bridge/Haswell.
Apologies for slow response, what do you mean by stride value? can you re-word or give us a snapshot of what you mean. Can you also confirm what's the graphic driver you have installed in your system.
Stride is the same as "pitch" in surface. It is the width in bytes of a scan line, usually padded to be a multiple of 32 bytes. It seems that with Skylake, when using VPP to go from RGB4 to NV12 or vice-versa the stride (pitch) is different from either Sandy Bride or Haswell. If the video had a width divisible by 32 (i.e. 1920 x 1080) then the stride (pitch) was 1920 * 4 bytes/pixel for a total of 7680 bytes and the next video scan line began immediately after that so one could just do a large memory copy of 1920* 4 * 1080 bytes. With the scan line at 7808 (with Skylake)one cannot do a block copy but must copy each scan line with proper offsets to account for the different lengths/line of 7808 vs. 7680. I'm using Windows 7 PRO, Visual Studio 2010, and D3D9 and the 2016 version of INDE.
Can you tell us your driver version, there was a similar issue a while back but was resolved in latest driver. If you don't have latest, can you please update to latest available on downloadcenter.intel.com. If you still see issue, let us know.
No, don't install Intel drivers if your system complains of having specific HP driver. Can you still provide the driver number, may be a snapshot of system analyzer tool(present in installed directory)?
OEMs take Intel drivers, put their own customization and provide it to their customer(not just marketing). It's very common, sometimes not being able to update drivers directly does cause some delays. However, do you know if you have access to any other SKL system? If not, send me your application in which we can see the result I can at least try on SKL system with latest graphics driver and check if your problem gets solved with latest driver. You can send some reproducer or application privately(check send author a note).
Also, check with HP they might be putting up a new driver soon.