put command

The put command defines the area of the source image and destination window used for display. Digital-video and video-overlay devices recognize this command.

To send this command, call the mciSendString function with the lpszCommand parameter set as follows.


_stprintf_s(
  lpszCommand, 
  TEXT("put %s %s %s"), 
  lpszDeviceID, 
  lpszRegions, 
  lpszFlags
); 

Parameters

lpszDeviceID

Identifier of an MCI device. This identifier or alias is assigned when the device is opened.

lpszRegions

Flag for defining the area. The following table lists device types that recognize the put command and the flags used by each type.

ValueMeaningMeaning
digitalvideodestination
 
destination at rectangle
 
frame
 
frame at rectangle
 
source
 
source at rectangle
video
 
video at rectangle
 
window
 
window at rectangle
 
window client
 
window client at rectangle
overlaydestination
 
destination at rectangle
 
frame
 
frame at rectangle
source
 
source at rectangle
 
video
 
video at rectangle

 

The following table lists the flags that can be specified in the lpszRegions parameter and their meanings.

ValueMeaning
destinationSelects the entire client area of the destination window to display the data.
destination at rectangleSelects a portion of the client area of the destination window used to display the image. When an area of the display window is specified and the device supports stretching, the source image is stretched to the destination offset and extent.
frameSelects the entire frame buffer to receive the incoming video images.
frame at rectangleSelects a portion of the frame buffer to receive the incoming video images.
sourceSelects the entire image for display in the destination window.
source at rectangleSelects a portion of the image to display in the destination window. When an area of the source image is specified, and the device supports stretching, the source image is stretched to the destination offset and extent.
videoSelects the entire incoming video image to capture in the frame buffer.
video at rectangleSelects a portion of the incoming video image to capture in the frame buffer.
windowRestores the initial window size on the display. This command also displays the window.
window at rectangleChanges the size and location of the display window. The specified rectangle is relative to the parent window of the display window (usually the desktop) if the "style child" flag has been used for the open command. To change the location of the window without changing its height or width, specify zero for the height and width.
window clientRestores the client area of the window.
window client at rectangleChanges the size and location of the client area of the window. The specified rectangle is relative to the parent window of the client window. To change the location of the window without changing its height or width, specify zero for the height and width.

 

When a flag includes a rectangle, the rectangle coordinates are relative to the window origin or the image origin, as appropriate, and are specified as X1 Y1 X2 Y2. The coordinates X1Y1 specify the upper left corner, and the coordinates X2Y2 specify the width and height of the rectangle.

lpszFlags

Can be "wait", "notify", or both. For digital-video devices, "test" can also be specified. For more information about these flags, see The Wait, Notify, and Test Flags.

Return Value

Returns zero if successful or an error otherwise.

Remarks

The put command defines one or more of the following rectangles when working with video-overlay devices:

  • The video rectangle defines the region of the incoming video image to capture.
  • The frame rectangle defines the region of the frame buffer that receives the incoming video image.
  • The source rectangle defines which region of the frame buffer is copied to the destination rectangle.
  • The destination rectangle defines the region of the display window client area that receives the video image.

The video rectangle is related to the frame rectangle in the same way the source rectangle is related to the destination rectangle. Stretching can occur from the video rectangle to the frame rectangle and from the source rectangle to the destination rectangle. Not all devices support stretching, and stretching must be enabled (by using the set command).

The following command defines three regions for the video, frame, and source.

put vboard video 120 120 200 200 frame 0 0 200 200 source 0 0 200 200

The regions in this example are defined as follows:

  • A 200- by 200-pixel region of the incoming video data, starting at an origin 120 pixels from the upper left corner, will be captured to the frame buffer.
  • The video data will be placed in a 200- by 200-pixel region at the upper left corner of the frame buffer.
  • Transfers are made from the 200- by 200-pixel region at the upper left corner of the frame buffer to the destination window.

Requirements

Minimum supported client

Windows 2000 Professional [desktop apps only]

Minimum supported server

Windows 2000 Server [desktop apps only]

See also

MCI
MCI Command Strings
open
set

 

 

Show: