This is a train of thought I had earliear today on the subject. Now, seeing as how I've only read about the crashes and never experienced them myself, I'm guessing I may have missed a few facets of these inexplicable bugs, and in that case, point 'em out. Or, if you think you see a promising angle on a feasible solution/explanation, point it out.
Now, to begin:We know the usual suspects for movie scene crashes -- improper codecs, bad/corrupt CDs, bad/corrupt optical drives, etc. These standard solutions sometimes don't work, and its frustrating when that happens.
And the more I think about it, the more I suspect that the Cosmo observatory, Junon Elevator, and (in roastbeefsally's case) Cloud's Mind crash scenes when the normal solutions have proven to be ineffective, are manifesting due to some incompatibility between the video card drivers, XP, and the way DX5 handled scenes with both 3D models and an FMV playing simultaneously. Think about it for a second -- nearly every major movie crash scene has an instance of in-game models being drawn on top of the movie. Direct3D and DirectShow routines are more or less being run simultaneously.
It's as if DirectShow5 and Direct3D5 are fighting for primary (and possibly exclusive) control of the primarly drawing surface, or are trying to cooperate in a way that uses the hardware at a level which the newer WinNT kernal forbids (think along the lines of old-school techniques like Direct Hardware Access that are no-no for windows NT).
Now, there may be another angle -- from what I've seen, very little PC games these days try to use movie playback as a background to render 3D objects on top of, let alone animate them. If anything, its either movie playback, or 3D rendering, but not both simultaneously. Perhaps graphics driver programmers, upon following the trend away from simultaneous movie playback + 3D rendering scenario's in games, have decided to phase out a significant amount of support for doing it?
And then, finally, there's the whole thing about DX5 code being looked on as uber-legacy programming from the modern driver-developer's perspective these days. I highly doubt that they are concerned with keeping 100% support for old DX5 programming routines, so their drivers may have acculmulated an FF7-killing bug here or there that may be indirectly caused by whatever generic legacy support for DX5 routines they have programmed in.