Rova is always such a shining becon of implication.
I think I can get around upgrading the whole OpenTZT program to DX8 if I make MD a consumable plug-in/dll. I'm guessing that DX8 would be able to accept a DX7 surface if the calling program was hooking a DX8 DLL and passing the surface through a function call. I can always be wrong about these thing, though.
OpenTZT does not currently handle any audio, so that would need to be updated (by grabbing it from the windows record source). It's primary function is to manipulate video live by reacting to user control.