Video Channel


The Video Channel object, which is derived from the Channel object, contains manipulation functions specific to video channels.

NetMeeting 2.1 allows audio and video with only one other meeting participant at a time. Therefore, there can be only one active incoming Video Channel and one active outgoing Video Channel at any given time.

To obtain a Video Channel, use INmChannel::QueryInterface with the IID_INmChannelVideo interface identifier.

INmChannelVideo Interface
INmChannelVideoNotify Interface

Up ArrowBack to COM Object Reference

INmChannelVideo Interface

This interface manages the exchange of video information during a conference.

In addition to the INmChannel Interface methods, this interface implements the following:

GetProperty
GetState
IsIncoming
SetProperty

Up ArrowBack to Video Channel

INmChannelVideo::GetProperty

HRESULT GetProperty(
[in] NM_VIDPROP uID,
[out] ULONG *puValue);

Retrieves the display properties of the current Video Channel.

uID
NM_VIDPROP that identifies the video property. Constants include:
NM_VIDPROP_PAUSE Video pause state. puValue will receive 0 if it is not paused (default), or 1 if it is paused.
NM_VIDPROP_WINDOW_AUTO_SIZE The size of the video window as a percent of the actual image size being received from the video camera. puValue will be a value from 0 (no autosize) to 400 (400 percent larger than actual size).
NM_VIDPROP_WINDOW_SIZE The size of the video window. puValue's LOWORD will receive the width of the window size, and HIWORD will receive the height. Both values will be in pixels (from 0 to 32767).
NM_VIDPROP_WINDOW_POSITION The position of the video window. puValue's LOWORD will receive the window's x-coordinate, and HIWORD will receive the y-coordinate. Both values will be in pixels (from -32768 to 32767).
NM_VIDPROP_WINDOW_TOP_MOST Position of the video window relative to other windows. puValue will receive 0 if the window is not the topmost window, or 1 if the window is the topmost window.
NM_VIDPROP_WINDOW_VISIBLE Visibility of the video window. puValue will receive 0 if the window is not visible, or 1 if the window is visible.
NM_VIDPROP_IMAGE_PREFERRED_SIZE Size of the video window. puValue will receive one of the following:
NM_VIDEO_SMALL
NM_VIDEO_MEDIUM
NM_VIDEO_LARGE
NM_VIDPROP_IMAGE_QUALITY Image quality of the video window. puValue will receive a value from 0 to 31 (31 = highest quality).
NM_VIDPROP_CAMERA_DIALOG Dialogs supported by the capture device. puValue will receive one or both of the following constants:
NM_VIDEO_FORMAT_DIALOG
NM_VIDEO_SOURCE_DIALOG
puValue
Pointer to a ULONG containing the video property.

Up ArrowBack to INmChannelVideo Interface

Up ArrowBack to Video Channel

Up ArrowBack to COM Object Listing

INmChannelVideo::GetState

HRESULT GetState(
[out] NM_VIDEO_STATE *puState);

Retrieves the state of the current Video Channel.

puState
NM_VIDEO_STATE that identifies the current state. Constants include:
NM_VIDEO_BOTHPAUSED The local and remote computers are connected with video, and they are both paused.
NM_VIDEO_IDLE The local computer does not have a video connection to anyone, and it is not displaying local video.
NM_VIDEO_LOCALPAUSED The local and remote computers are connected with video, but video is paused. The remote computer's video is not paused.
NM_VIDEO_PREVIEWING The local computer does not have a video connection to anyone, but it is displaying local video.
NM_VIDEO_REMOTEPAUSED The local and remote computers are connected with video, and the remote computer's video is paused.
NM_VIDEO_TRANSFERRING The local and remote computers are connected with video, and neither computer is paused (video is being transferred between the two computers).

Up ArrowBack to INmChannelVideo Interface

Up ArrowBack to Video Channel

Up ArrowBack to COM Object Listing

INmChannelVideo::IsIncoming

HRESULT IsIncoming(void);

Determines if a video source is incoming (receiving) or outgoing (sending).

Up ArrowBack to INmChannelVideo Interface

Up ArrowBack to Video Channel

Up ArrowBack to COM Object Listing

INmChannelVideo::SetProperty

HRESULT SetProperty(
[in] NM_VIDPROP uID,
[in] ULONG uValue);

Sets the properties of the current Video Channel.

uID
NM_VIDPROP that determines how uValue is interpreted. Constants include:
NM_VIDPROP_PAUSE Video pause state. Set uValue to 0 to play (default), or 1 to pause.
NM_VIDPROP_WINDOW_AUTO_SIZE Sets the size of the video window as a percent of the actual image size being received from the video camera. uValue may be a value from 0 (no autosize) to 400 (400 percent larger than actual size).
NM_VIDPROP_WINDOW_SIZE Set uValue's LOWORD to the desired width of the window, and HIWORD to the desired height (both in pixels). Both values may be set from 0 to 32767.
NM_VIDPROP_WINDOW_POSITION Set uValue's LOWORD to the desired x-coordinate, and HIWORD to the desired the y-coordinate. Both values must be in pixels (from -32768 to 32767).
NM_VIDPROP_WINDOW_TOP_MOST Set uValue to 1 to set the video window as the topmost window, or 0 to set it as not topmost.
NM_VIDPROP_WINDOW_VISIBLE Set uValue to 0 to hide the video window, or 1 to make it visible.
NM_VIDPROP_IMAGE_PREFERRED_SIZE Set uValue to one of the following values to alter the video window's size:
NM_VIDEO_SMALL
NM_VIDEO_MEDIUM
NM_VIDEO_LARGE
NM_VIDPROP_IMAGE_QUALITY Set uValue to a value from 0 to 31 (31 = highest quality) to alter the image quality.
NM_VIDPROP_CAMERA_DIALOG Set the dialog used by the capture device by assigning one of the following values to uValue:
NM_VIDEO_FORMAT_DIALOG
NM_VIDEO_SOURCE_DIALOG
uValue
Value of the video property.

Up ArrowBack to INmChannelVideo Interface

Up ArrowBack to Video Channel

Up ArrowBack to COM Object Listing

INmChannelVideoNotify Interface

This is an event notification sink interface for the INmChannelVideo interface. The methods in this interface are called by the Video Channel object when specific events occur.

These event sink methods should be defined and implemented by the client application to respond to notifications from a Video Channel object. For example, the INmChannelVideoNotify::StateChanged method is notified when the state of the Video Channel has changed. The client application implementation of this method could provide a display to the user informing him or her of this change.

MemberChanged
NmUI
PropertyChanged
StateChanged

Up ArrowBack to Video Channel

INmChannelVideoNotify::MemberChanged

HRESULT MemberChanged(
[in] NM_MEMBER_NOTIFY uNotify,
[in] INmMember *pMember);

Receives notification that a member of the Video Channel was added, removed, or updated. This method is inherited from INmChannelNotify.

uNotify
Identifier of an event constant during a conference.
NM_MEMBER_ADDED A member was added to the conference.
NM_MEMBER_REMOVED A member was removed from the conference.
NM_MEMBER_UPDATED Information for a conference member was updated.
pMember
Pointer to the INmMember Interface on the Member object that changed.

Up ArrowBack to INmChannelVideoNotify Interface

Up ArrowBack to Video Channel

Up ArrowBack to COM Object Listing

INmChannelVideoNotify::NmUI

HRESULT NmUI(
[in] CONFN uNotify);

Receives event notification when a channel change occurs. Only the application in charge (initialized with NM_INIT_CONTROL) of the NetMeeting user interface will receive these notifications. This method is inherited from INmChannelNotify.

uNotify
Reserved for future use.

Up ArrowBack to INmChannelVideoNotify Interface

Up ArrowBack to Video Channel

Up ArrowBack to COM Object Listing

INmChannelVideoNotify::PropertyChanged

HRESULT PropertyChanged(
[in] DWORD dwReserved);

Indicates that the video property has changed.

dwReserved
Video property that changed. Possible properties include:
NM_VIDPROP_PAUSE Pause state.
NM_VIDPROP_WINDOW_AUTO_SIZE Size of the video window as a percentage of the actual image size received from the camera.
NM_VIDPROP_WINDOW_SIZE Size of the video window.
NM_VIDPROP_WINDOW_POSITION Position of the video window.
NM_VIDPROP_WINDOW_TOP_MOST Whether or not the video window is the topmost window.
NM_VIDPROP_WINDOW_VISIBLE Whether or not the video window is visible.
NM_VIDPROP_IMAGE_PREFERRED_SIZE Size of the video window.
NM_VIDPROP_IMAGE_QUALITY Quality of the video image.
NM_VIDPROP_CAMERA_DIALOG Dialog used by the capture device.

When this event sink is notified, use INmChannelVideo::GetProperty to determine the new state of the property.

Up ArrowBack to INmChannelVideoNotify Interface

Up ArrowBack to Video Channel

Up ArrowBack to COM Object Listing

INmChannelVideoNotify::StateChanged

HRESULT StateChanged(
[in] NM_VIDEO_STATE uState);

Indicates that the video state has changed.

uState
NM_VIDEO_STATE that identifies the current state. Constants include:
NM_VIDEO_BOTHPAUSED The local and remote computers are connected with video, and they are both paused.
NM_VIDEO_IDLE The local computer does not have a video connection to anyone, and it is not displaying local video.
NM_VIDEO_LOCALPAUSED The local and remote computers are connected with video, but video is paused. The remote computer's video is not paused.
NM_VIDEO_PREVIEWING The local computer does not have a video connection to anyone, but it is displaying local video.
NM_VIDEO_REMOTEPAUSED The local and remote computers are connected with video, and the remote computer's video is paused.
NM_VIDEO_TRANSFERRING The local and remote computers are connected with video, and neither computer is paused (video is being transferred between the two computers).

Up ArrowBack to INmChannelVideoNotify Interface

Up ArrowBack to Video Channel

Up ArrowBack to COM Object Listing

Last Updated: November 1, 1997
© 1997 Microsoft Corporation. All rights reserved. Terms of Use.