Xojo Conferences

Platforms to show: All Mac Windows Linux Cross-Platform

DirectShowVideoWindowMBS class

Type Topic Plugin Version macOS Windows Linux Console & Web iOS
class DirectShow MBS Win Plugin 12.1 No Yes No Yes, Windows only No
Function: The direct show class for a video window.
The DirectShowVideoWindowMBS interface sets properties on the video window. Applications can use it to set the window owner, the position and dimensions of the window, and other properties.

The Video Renderer filter and the Filter Graph Manager both expose this interface. The Filter Graph Manager forwards all method calls to the Video Renderer. It also forwards certain window messages that the Video Renderer needs to receive, such as WM_DISPLAYCHANGE. Because the video window is usually a child of an application window, the filter would not otherwise receive these messages. Therefore it relies on the Filter Graph Manager to forward them.

In most cases, an application should query the Filter Graph Manager for this interface, and not call the filter directly, because of the messaging issue just described. However, if the filter graph has more than one Video Renderer, the Filter Graph Manager only communicates with one of them, selected arbitrarily. Therefore, if your application uses multiple video windows, use the DirectShowVideoWindowMBS interface directly on the filters. In that case, you must forward window messages to each Video Renderer instance, using the NotifyOwnerMessage method.

Properties set on a video renderer persist between successive connections and disconnections.

Error codes: If the video renderer filter is not connected to another filter, all methods return the error code VFW_E_NOT_CONNECTED. For the Filter Graph Manager's implementation, if the graph does not contain a video renderer filter, all methods return E_NOINTERFACE. Note that the Filter Graph Manager exposes the interface even when the graph does not contain a video renderer, so an application can query for the interface before it builds the graph.
This is an abstract class. You can't create an instance, but you can get one from various plugin functions.

Feedback, Comments & Corrections

This class has no sub classes.

Some methods using this class:

Some examples which use this class:

The items on this page are in the following plugins: MBS Win Plugin.

DirectShowVideoStreamConfigCapsMBS   -   DirectShowWaveFormatMBS

MBS FileMaker Plugins