record 命令

record 命令开始记录数据。 VCR 和波形音频设备可识别此命令。 尽管数字视频设备和 MIDI 序列器也识别此命令,但 MCIAVI 和 MCISEQ 驱动程序不会实现它。

若要发送此命令,请使用 lpszCommand 参数集调用 mciSendString 函数,如下所示。

_stprintf_s(
  lpszCommand, 
  TEXT("record %s %s %s"), 
  lpszDeviceID, 
  lpszRecordFlags, 
  lpszFlags
); 

parameters

lpszDeviceID

MCI 设备的标识符。 打开设备时会分配此标识符或别名。

lpszRecordFlags

用于记录数据的标志。 下表列出了可识别 记录 命令的设备类型以及每种类型使用的标志。

值 含义 含义
digitalvideo 位于矩形音频流流的位置保留处 插入覆盖以 定位视频 流
sequencer 从 位置插入 覆盖到 位置
录像机 时间从位置初始化 插入覆盖到 位置
waveaudio 从 位置插入 覆盖到 位置

下表列出了可在 lpszRecordFlags 参数中指定的标志及其含义。

值 含义
位于矩形处 指定外部输入的矩形区域,用作压缩并保存的像素的源。 如果未指定,则矩形默认为 为放置 “video”指定的矩形。 当它与“视频”矩形不同的设置时,显示的图像不是所录制的图像。
时间 指示设备应何时开始执行此命令;如果设备已被提示,则指示何时开始执行提示命令。 有关详细信息,请参阅 提示 命令。
音频 流 指定用于录制的音频流。 如果未指定此标志,并且文件格式未定义默认值,则会先将其记录到物理流中。
from position 指定录制的起始位置。 如果未指定“from”标志,设备将从当前位置开始录制。
保留 录制完成后冻结图像,而不是显示实时视频。 录制停止时,将执行自动 监视器 “文件”命令。 若要返回到实时视频,请发出 监视器 “输入”命令。
初始化 初始化磁带 (媒体) ,其中涉及录制时间码 ((如果可能)) 空白视频和音频。 如果必须初始化整个磁带,此命令可能需要几个小时。
insert 指定将新数据添加到当前位置的文件。
overwrite 指定新数据将替换文件中的数据。
到 位置 指定录制的结束位置。 如果未指定“to”标志,设备将记录,直到收到 停止 或 暂停 命令。
视频 流 指定用于录制的视频流。 如果未指定此值,并且文件格式未定义默认值,则会先将其记录到物理流中。

lpszFlags

可以是“等待”、“通知”或两者。 对于数字视频和 VCR 设备,还可以指定“测试”。 有关这些标志的详细信息,请参阅 等待、通知和测试标志。

返回值

如果成功,则返回零,否则返回错误。

备注

发出 停止 或 暂停 命令时,录制将停止。 对于 MCIWAVE 驱动程序,如果在未保存文件的情况下关闭文件,则文件打开后记录的所有数据都会被丢弃。

在发出任何使用位置值的命令之前,应使用 set 命令设置所需的时间格式。 要录制的曲目由 settimecode “record”、set“assemble record”、 setvideo “record”和 setaudio “record”命令指定。

示例

以下命令在当前位置开始录制。

record mysound

要求

要求 值
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]

请参阅

Mci

MCI 命令字符串

提示

监视

pause

put

set

setaudio

settimecode

setvideo

stop