I think I found an answer: the firmware of AMD VCEs under Linux is written to not support x264 B-frames, shame on you amdgpu developers!
11:48 < ckoenig> well it is a design bug in VA-API. The profile in the H264 header just says which features *can* be used, not which *must* be used.
11:48 < ckoenig> so for encoding you could say please use high profile, but no B-frames and you should in theory get a valid stream.
11:49 < ckoenig> problem is that apart from B-frames the firmware doesn't support a bunch of other things
11:49 < ckoenig> e.g. for main profile we would only need B-frames
11:49 < jpsollie> I see
11:50 < ckoenig> but for high we need B-frames and transformation adaptivity and a bunch of other things.
so this means:
-AMD releases an AMF framework which requires windows 7 and visual studio in GPUOpen, and WHICH SUPPORTS B_FRAMES.
During development, UNIX compatibility was made by the developers: see AMF/TraceAdapter.h at master · GPUOpen-LibrariesAndSDKs/AMF · GitHub -> the #ifndef WIN32 proves some things were done to support other platforms
-AMD passes a firmware to the linux users which does not support it, and will probably mention this as the reason why AMF is not supported under linux.
I've always been an AMD fan, I have had AMD cpu's for servers, desktops and notebooks, starting from the Athlon XP to the Opteron 6300, and have worked with GPUs from Radeon 4000 till Radeon RX480 but now I am losing trust in the fact that AMD presents itself as an Open Source contributor. Shame on you AMD!