Hello Intel team,
I am currently working on a software that needs to decode and diplay videos.
We need to have the best performance possible.
We were previously working with another brand's HW decoder for h264 and h265.
We decided to port our software so it could work with Intel GPU (we also have a CPU decoding option, but it does not match our performance criterion).
First we tried using oneAPI, it worked pretty well, but only for 11th gen. We were sad to find out that oneAPI does not support backward compatibility with old architecture (tested on 10th gen).
Then, we tryied implementing a solution with MSDK. We are glad to see that h264 HW accelerated works well on all our target.
But sadly, we can't make HW accelerated h265 decoding work on any of our PC.
The reason is, I can't find the plugin to do that on any of our PCs. We installed the last driver version on each computer. But the only plugin I have are the one located in the MSDK folder for SW decoding/encoding (2fca99749fdb49aeb121a5b63ef568f7 and 15dd936825ad475ea34e35f3f54217a6).
Of course I have tried the decoding sample, it can't find the right plugin either (tested on 3rd, 10th and 11th gen).
I searched the web for a solution, every answer is saying something like "The plugin comes with the driver".
So I have several questions:
Was oneAPI supposed to support backward compatibility ?
Where can I find the h265 HW accelerated decoder plugin ?
Note that we are working on windows, but are porting our software to linux. So for now, consider we are on windows.
Here are the responses to your questions:
1. Media SDK has published its final 1.35 API update, while oneVPL keeps progressing as 2.x. As long as code does not use new features added in 2.x it can be compatible with hardware going back several years. See the "runtime loaded by oneVPL dispatcher" table in the oneVPL README. https://github.com/oneapi-src/oneVPL.
2. H265 plugins were phased out several years ago. They are no longer needed. H265 capabilities are now included in the driver. You can see more details here: https://github.com/intel/media-driver . The 3rd generation Core processor may need the HEVC plugin but the others should work driver only.
To test h265 decode (which should work all the way back to 6th generation Core), sample_decode, sample_multi_transcode, or coreAPI/legacy-decode example can be used.