seek
The seek command moves to the specified position and stops. CD audio, digital-video, MIDI sequencer, VCR, videodisc, and waveform-audio devices recognize this command.
To send this command, call the mciSendString function with the lpszCommand parameter set as follows.
_stprintf_s(
lpszCommand,
TEXT("seek %s %s %s"),
lpszDeviceID,
lpszSeekFlags,
lpszFlags
);
Parameters
lpszDeviceID
Identifier of an MCI device. This identifier or alias is assigned when the device is opened.
lpszSeekFlags
Flag for moving to a specified position. The following table lists device types that recognize the seek command and the flags used by each type.
Value | Meaning | Meaning |
cdaudio | to end to position |
to start |
digitalvideo | to end to position |
to start |
sequencer | to end to position |
to start |
vcr | at time mark mark_num reverse |
to end to position to start |
videodisc | reverse to end |
to position to start |
waveaudio | to end to position |
to start |
The following table lists the flags that can be specified in the lpszSeekFlags parameter and their meanings.
Value | Meaning |
at time | Indicates when the device should begin performing this command, or, if the device has been cued, when the cued command begins. For more information, see the cue command. |
mark mark_num | Seeks to the relative mark indicated by mark_num, which must be a positive integer value. Marks are signals written to the VCR tape using the mark command and are used for high-speed searching. |
reverse | Indicates that the seek direction on VCRs and CAV videodiscs is backward. This flag is invalid if the "to" flag is specified. For VCRs, this flag must be used with the "mark" flag. |
to end | Seeks to the end of the content. |
to position | Specifies the position to stop the seek. For cdaudio devices, MCI returns an out-of-range error if the specified position is greater than the length of the disc. |
to start | Seeks to the start of the content. |
lpszFlags
Can be "wait", "notify", or both. For digital-video and VCR devices, "test" can also be specified. For more information about these flags, see The Wait, Notify, and Test Flags.
Return Values
Returns zero if successful or an error otherwise.
Remarks
Before issuing any commands that use position values, you should set the desired time format by using the set command.
Digital-video devices support two seek modes, which you can change by using the set command. The "seek exactly on" mode causes the seek command to move to the specified frame. The "seek exactly off" mode causes the seek command to move to the closest key frame prior to the specified frame.
If a CD audio device is playing when the seek command is issued, playback is stopped. When the seek command is issued with a videodisc device, the device searches using fast forward or fast reverse with video and audio off.
When the seek command is issued with a waveform-audio device, the behavior depends on the sample size. If the sample size is 16 bits or greater, seek moves to the beginning of the nearest sample when a specified position does not coincide with the start of a sample.
The following command seeks to the start of the media file associated with the "mysound" device:
seek mysound to start
Requirements
** Windows NT/2000/XP:** Included in Windows NT 3.1 and later.
** Windows 95/98/Me:** Included in Windows 95 and later.
See Also
MCI, MCI Command Strings, cue, mark, set