https://bugs.freedesktop.org/show_bug.cgi?id=105145
--- Comment #7 from k.philipp@gmail.com --- (In reply to Christian König from comment #6)
But checking the documentation once more VA_SURFACE_ATTRIB_USAGE_HINT_VPP_READ actually sounds exactly like what we need.
E.g. we switch over to allocate all surfaces in the progressive/frame format and only use the interlaced/field format when VA_SURFACE_ATTRIB_USAGE_HINT_VPP_READ is given.
I did think about that, but it has the problem of breaking deinterlacing on all clients that do *not* set VA_SURFACE_ATTRIB_USAGE_HINT_VPP_READ (which I assume to be most) since there is - correct me if I'm wrong - at present no code to un-weave a decoded frame to fields and go back to interlaced/field mode, causing the initial issue in the first place.
Now you just need to find somebody volunteering to implement that :)
Using the hint like in your proposal sounds doable to me because it's just shuffling some code around, but if we have to add de-weaving (is that even a word?) I'm probably out.