Appendix B: Digital Video MCI Command String Syntax

Digitalvideo devices support the following set of commands. Digitalvideo devices also support notify, test and wait as optional flags. You can add either or all of these flags to any digitalvideo command.

Command

Arguments


capability item


















capture items
close
configure

{can eject
| can freeze
| can lock
| can play
| can record
| can reverse
| can save
| can stretch [input]
| can test
| compound device
| device type
| has audio
| has still
| has video
| maximum play rate
| minimum play rate
| uses files
| uses palettes
| windows}
as file [at rect]

copy items

[at rect]





cue items

[audio stream stream]
[from position]
[to position]
[video stream stream]
{[input] | [output [to position [noshow]]]}

cut items

[at rect]

[audio stream stream]
[from position]
[to position]
[video stream stream]

delete items

[at rect]





freeze item

[audio stream stream]
[from position]
[to position]
[video stream stream]
[at rect [outside]]

info items

{audio algorithm
| audio quality
| file
| product
| still algorithm
| still quality
| usage
| version
| video algorithm
| video quality
| window text}

list items











load item
monitor items

{audio algorithm {count | number n}
| audio quality algorithm
{algorithm | current} {count | number n}
| audio stream {count | number n}
| still algorithm {count | number n}
| still quality algorithm
{algorithm | current} {count | number n}
| video algorithm {count | number n}
| video quality algorithm
{algorithm | current} {count | number n}
| video source {count | number n}
| video stream {count | number n}}
filename
{file | input [method {pre | post | direct}]}

open items

[alias alias]
[nostatic]
[parent hwnd]
[shareable]
[style {overlapped | popup | child}]
[type device_type]

paste items




pause

[at rect]
[audio stream stream]
[insert | overwrite]
[to position]
[video stream stream]

play items

[from pos]
[repeat]
[reverse]
[to pos]

put items

{destination [at rect]
| frame [at rect]
| source [at rect]
| video [at rect]
| {window [at rect] [client]}}

quality items





realize items

{audio name name algorithm algorithm
{dialog | handle handle}
| still name name algorithm algorithm
{dialog | handle handle}
| video name name algorithm algorithm
{dialog | handle handle}}
[background | normal]

record items






reserve items

restore
resume
save item

seek items

[at rect]
[audio stream stream]
[from pos]
[hold]
[insert | overwrite]
[to pos]
[video stream stream]
[in pathname]
[size duration]
[at rect] from file

filename [keepreserve] [at rect]
| abort
{to pos | to end | to start}

set items




setaudio items














setvideo items























signal items

status items
























































step items
stop item
undo
unfreeze item
update items

{door {open | closed}
| [still] file format format
| seek exactly {on | off}
| speed factor
| time format {frames | ms | milliseconds}}
{algorithm name [quality name]
| alignment to integer
| bass to value
[over duration [clocktime]] [input | output]
| bitspersample to bitcount
| bytespersec to integer
| record {on | off}
| samplespersec to integer
| source to {left | right | average | stereo}
| stream to number
| treble to value
[over duration [clocktime]] [input | output]
| [left | right] on | off
| [left | right] volume to value
[over duration [clocktime]] [input | output]}
{[still] algorithm name [quality descriptor]}
| bitsperpel to count
| brightness to value
[over duration [clocktime]] [input | output]
| color to value
[over duration [clocktime]] [input | output]
| contrast to value
[over duration [clocktime]] [input | output]
| gamma to gamma * 1000
[over duration [clocktime]] [input | output]
| key index to index
| key color to r:g:b
| on | off
| palette handle to handle
| record {on | off}
| record frame rate to {1000 * frames/sec | natural}
| sharpness to value
[over duration [clocktime]] [input | output]
| source to {ntsc | rgb | svideo | pal | secam | generic}
[number value]
| [still] quality descriptor
| stream to number
| tint to value
[over duration [clocktime]] [input | output]}
|{{{[at pos] [every dur]} [return position] } | cancel}
[uservalue id]
{ audio
| audio alignment
| audio input
| audio record
| audio source
| audio stream
| bass [nominal] [input | output]
| bitsperpel
| bitspersample
| brightness [nominal] [input | output]
| bytespersec
| color [nominal] [input | output]
| contrast [nominal] [input | output]
| current track
| disk space drive
| [still] file format
| file completion
| file mode
| forward
| gamma [input | output]
| length
| length track trackno
| media present
| mode
| monitor [method]
| nominal frame rate
| number of tracks
| palette handle
| pause mode
| position
| position track trackno
| ready
| record frame rate [nominal]
| reference frame
| reserved size
| samplespersec
| seek exactly
| sharpness [nominal] [input | output]
| smpte
| speed
| start position
| time format
| tint [nominal] [input | output]
| treble [nominal] [input | output]
| unsaved
| video
| video key index
| video key color
| video record
| video source
| video source number
| video stream
| [left | right] volume [input | output]}
| window handle
| window maximized
| window minimized
| window visible}
[by frames] [reverse]
[hold]

[at rect]
[at rect] [hdc hdc] [paint]

where items

{destination [max]
| frame [max]
| source [max]
| video [max]
| window [max]}

window items

{{handle handle | handle default}
| state state
| text caption}


The following conventions are used in the previous table:

Type
Style

Used
For


Bold

A specific term intended to be used literally. When used in the command column, it represents the MCI string command. When used in the arguments column, it represents a flag. For example, the capability command and the can play flag must be typed as show.

Italics

Place holders for information you must provide. The MCI command or flag associated with the information must precede it. For example, to use the alias words for the device_name with the capability command, type "capability words can play."

|

Divider for mutually exclusive arguments. When multiple arguments are separated by this symbol, only one of them can be used for each command. For example, the items in the list are mutually exclusive and you must select only one to use with the capability command. (Do not type the | with the argument.)

{ }

Required argument. You must include an argument enclosed by braces. For example, you must use one of the arguments can eject, can play, can record, can save, compound device, device type, has audio, has video, uses files with the capability command. (Do not type the braces with the argument.)

[ ]

Optional argument. For example, the alias, type, and shareable flags are optional for the open command. You can use any combination of these flags. You can also use optional arguments with a required argument. (Do not type the brackets with the argument)