Added 1/9 to fix a regression reported by Rémi in 7272.
I'm not sure about the fix exactly. There is *one* bit of more or less common code, which is that d3d9 does in fact support video decode via dxva2.dll.
On the GL side, supporting d3d10-style planar textures, as well as supporting video decode, is possible and would involve emulation through multiple images. This can be done while still maintaining existing ddraw-d3d9 support, though it'll require the effort of rewriting. [Note that EGL_EXT_yuv_surface exists, but does not particularly help us, since we can't rely on it in order to maintain the ddraw-d3d9 support that currently exists.]
More saliently though, as the actual crash shows, we need a way to disable d3d10-specific logic for d3d9, specifically forbidding non-planar views and unaligned texture sizes. The latter is allowed in d3d9 and the former is effectively allowed [otherwise we have to do some annoying rewriting.] Another way to handle this is to add yet another struct wined3d flag that basically means "d3d9 vs d3d10", in addition to the several we already have. This is a bit more precedented than using a separate format enumerant, but requires more plumbing.
The naming "NV12_PLANAR" is not great exactly, since NV12 is planar, but this at least alludes to the idea that *views* must be planar.