IMVSCVideoWindow
The IMVSCVideoWindow Interface from the MontiVision Smart Control provides methods to display a video stream in the MV Smart Control window. The default behaviour of the MV Smart Control is to display the video stream that the DirectShow Filter Graph Manager provides, if such a video stream is available.
Methods:
| ControlToVideo | Converts coordinates from the control window to the video coordinates. |
| EnableVideoWindowEvents | Enable input events from the video window. |
| MessageDrain | A window handle that receives input messages from the video window. |
| RendererFilter | Name from the video renderer filter within the current filter graph. The control attaches it's window to the video window from this renderer. |
| SetVideoRenderer | Sets a video renderer from an external filter graph to the control window. |
| UseAspectRatio | Enable using the aspect ratio from the video stream for the video window |
| UseOriginalSize | The control shows the video stream with his original size. |
| VideoXResolution | X-Resolution from the original video stream. |
| VideoYResolution | Y-Resolution from the original video stream. |
| Visible | Hides/Shows the video window. |
Typelib: MV SmartControl
Method IMVSCVideoWindow::ControlToVideo
Declaration: Sub ControlToVideo(x As Long, y As Long)Converts coordinates from the control window to the video coordinates.
Parameter:
Prototype:
x X-Coordinate y Y-Coordinate HRESULT ControlToVideo(LONG* x, LONG* y);
Property IMVSCVideoWindow::EnableVideoWindowEvents
Declaration: Property Get/Put EnableVideoWindowEvents As BooleanEnable input events from the video window.
Prototype:HRESULT put_EnableVideoWindowEvents(BOOL);
HRESULT get_EnableVideoWindowEvents(BOOL*);
Property IMVSCVideoWindow::MessageDrain
Declaration: Property Get/Put MessageDrain As LongA window handle that receives input messages from the video window.
A better way to get input events is to handle the corresponding events from the _IMVSmartControlEvents interface.
Prototype:HRESULT put_MessageDrain(LONG);
HRESULT get_MessageDrain(LONG*);
Property IMVSCVideoWindow::RendererFilter
Declaration: Property Get/Put RendererFilter As StringName from the video renderer filter within the current filter graph. The control attachs his window to the video window from this renderer.
Prototype:HRESULT put_RendererFilter(BSTR);
HRESULT get_RendererFilter(BSTR*);
Method IMVSCVideoWindow::SetVideoRenderer
Declaration: Sub SetVideoRenderer(FilterGraph As Unknown, RendererFilter As String)Sets a video renderer from an external filter graph to the control window.
Parameter:
Prototype:
FilterGraph IUnknown interface from the external filter graph. RendererFilter Label from the video renderer filter within the external filter graph. HRESULT SetVideoRenderer(IUnknown* FilterGraph, BSTR RendererFilter);
Property IMVSCVideoWindow::UseAspectRatio
Declaration: Property Get/Put UseAspectRatio As BooleanEnables using the aspect ratio from the videostream for the video window.
Prototype:HRESULT put_UseAspectRatio(BOOL);
HRESULT get_UseAspectRatio(BOOL*);
Property IMVSCVideoWindow::UseOriginalSize
Declaration: Property Get/Put UseOriginalSize As BooleanThe control shows the video stream with his original size.
Prototype:HRESULT put_UseOriginalSize(BOOL);
HRESULT get_UseOriginalSize(BOOL*);
Property IMVSCVideoWindow::VideoXResolution
Declaration: Property Get VideoXResolution As LongX-Resolution from the original video stream.
Prototype:HRESULT get_VideoXResolution(LONG*);
Property IMVSCVideoWindow::VideoYResolution
Declaration: Property Get VideoYResolution As LongY-Resolution from the original video stream.
Prototype:HRESULT get_VideoYResolution(LONG*);
Property IMVSCVideoWindow::Visible
Declaration: Property Get/Put Visible As BooleanEnables the video window.
Prototype:HRESULT put_Visible(BOOL);
HRESULT get_Visible(BOOL*);