Fundamentals of Audio and Video Programming for Games (Pro-Developer)
The VMR runs in one of three distinct modes, depending on how the application configures it at run time:
-
In windowed mode, the VMR creates its own window where it draws the video. This mode exists only for backward-compatibility with the old Video Renderer filter. Unless you re retrofitting an existing application to use the VMR-9, there is no particular reason to use windowed mode, and we will not use it in this book.
-
In windowless mode, the VMR does not create its own video window. Instead, it draws the video directly onto the application s window. The application specifies a rectangular clipping region within its client area, and the VMR automatically draws the video inside that region. Don t be misled by the term windowless ” the application still uses a window. The name simply refers to the fact that the VMR does not create its own separate window, which distinguishes this mode from windowed mode.
-
In renderless mode, the application takes over responsibility for two important tasks : allocating Direct3D surfaces to hold the video frames , and rendering those surfaces onto the screen. This mode enables applications to use video inside a Direct3D application.
We ll use renderless mode extensively in the next chapter, but first we ll describe how an application uses windowless mode. This will give you an opportunity to play around with the VMR s video mixing capabilities, and also to get a feel for VMR programming, before we throw Direct3D into the mix.