MCI_RECORD

The MCI_RECORD command starts recording from the current position or from one specified location to another specified location. VCR and waveform-audio devices recognize this command. Although digital-video devices and MIDI sequencers also recognize this command, the MCIAVI and MCISEQ drivers do not implement it.

MCIERROR mciSendCommand(MCIDEVICEID wDeviceID, MCI_RECORD, 
    DWORD dwFlags, (DWORD) (LPMCI_RECORD_PARMS) lpRecord);
 

Parameters

wDeviceID
Device identifier of the MCI device that is to receive the command message.
dwFlags
MCI_NOTIFY, MCI_WAIT, or, for digital-video and VCR devices, MCI_TEST. For information about these flags, see The Wait, Notify, and Test Flags.
lpRecord
Address of an MCI_RECORD_PARMS structure. (Devices with extended command sets might replace this structure with a device-specific structure.)

Return Values

Returns zero if successful or an error otherwise.

Remarks

This command is supported by devices that return TRUE when you call the MCI_GETDEVCAPS command with the MCI_GETDEVCAPS_CAN_RECORD flag. For the MCIWAVE driver, all data recorded after a file is opened is discarded if the file is closed without saving it.

The following additional flags apply to all devices supporting MCI_RECORD:

MCI_FROM
A starting location is included in the dwFrom member of the structure identified by lpRecord. The units assigned to the position values are specified with the MCI_SET_TIME_FORMAT flag of the MCI_SET command. If MCI_FROM is not specified, the starting location defaults to the current position.
MCI_RECORD_INSERT
Newly recorded information should be inserted or pasted into the existing data. Some devices might not support this. If supported, this is the default.
MCI_RECORD_OVERWRITE
Data should overwrite existing data. The MCIWAVE.DRV device returns MCIERR_UNSUPPORTED_FUNCTION in response to this flag.
MCI_TO
An ending location is included in the dwTo member of the structure identified by lpRecord. The units assigned to the position values are specified with the MCI_SET_TIME_FORMAT flag of the MCI_SET command. If MCI_TO is not specified, the ending location defaults to the end of the content.

The following additional flags are used with the digitalvideo device type:

MCI_DGV_RECORD_AUDIO_STREAM
An audio-stream number is included in the dwAudioStream member of the structure identified by lpRecord. If you omit this flag, audio data is recorded into the first physical stream.
MCI_DGV_RECORD_HOLD
When recording stops, the screen will hold the last image and will not resume showing the video until an MCI_MONITOR command is issued.
MCI_DGV_RECORD_VIDEO_STREAM
A video-stream number is included in the dwVideoStream member of the structure identified by lpRecord. If you omit this flag, video data is recorded into the first physical stream.
MCI_DGV_RECT
A rectangle is specified in the rc member of the structure identified by lpRecord. The rectangle specifies the region of the external input used as the source for the pixels compressed and saved. This rectangle defaults to the rectangle specified (or defaulted) by the MCI_DGV_PUT_VIDEO flag for the MCI_PUT command. When it is set differently than the video rectangle, what is displayed is not what is recorded

For digital-video devices, lpRecord points to an MCI_DGV_RECORD_PARMS structure.

The following additional flags are used with the vcr device type:

MCI_VCR_RECORD_AT
The dwAt member of the structure identified by lpRecord contains a time when the entire command begins, or if the device is cued, when the device reaches the from position given by the cue command.
MCI_VCR_RECORD_INITIALIZE
Seek the device to the start of the media, begin recording blank video and audio, and record timecode, if possible.

For VCR devices, lpRecord points to an MCI_VCR_RECORD_PARMS structure.

QuickInfo

  Windows NT: Requires version 3.1 or later.
  Windows: Requires Windows 95 or later.
  Windows CE: Unsupported.
  Header: Declared in mmsystem.h.

See Also

MCI Overview, MCI Commands, MCI_DGV_RECORD_PARMS, MCI_GETDEVCAPS, MCI_MONITOR, MCI_PUT, MCI_RECORD_PARMS, MCI_SET, MCI_VCR_RECORD_PARMS