第1章VisualC++60开发环境-Read.PPTVIP

  • 2
  • 0
  • 约5.81千字
  • 约 12页
  • 2017-06-25 发布于天津
  • 举报
第1章VisualC60开发环境-Read

第10章媒体控制接口 10.1 MCI设备类型 10.2 MCI编程步骤 10.3使用MCIWnd窗口类 10.1 MCI设备类型 媒体控制接口允许控制两类设备:第一类为简单设备,是指那些不需要文件的设备,如CD音频播放设备;第二类为复合设备,是那些需要文件的设备,如数字视频及波形音频设备等。表列出了目前已定义的设备的标识符。 10.2 MCI编程步骤 打开设备 MCI为不同的多媒体设备打开提供相应的数据结构类型。若不想使用设备中特定的参数数据,则可使用统一的MCI_OPEN_PARMS结构,原型: typedef struct { DWORD dwCallback; // 低字节用于MCI_NOTIFY的窗口句柄 MCIDEVICEID wDeviceID; // 返回的设备标识符 LPCSTR lpstrDeviceType; // MCI设备的类型 LPCSTR lpstrElementName; // 设备元素 LPCSTR lpstrAlias; // 可选的设备别名 } MCI_OPEN_PARMS; 打开多媒体设备的过程:定义一个MCI_OPEN_PARMS结构类型变量,给结构变量中的相应参数赋值,调用mciSendCommand向设备发送MCI_OPEN命令消息,成功调用时,可获得相应的设备标识符。例如,下面的代码是打开波形音频设备: WORD wDeviceID; // MCI设备ID CString fileName; // 波形文件名 ... MCI_OPEN_PARMS openParms; // MCI设备打开参数 openParms.lpstrDeviceType = waveaudio; // 波形音频设备 openParms.lpstrElementName = fileName; if (mciSendCommand (NULL, MCI_OPEN, MCI_OPEN_ELEMENT | MCI_OPEN_TYPE, (DWORD)(LPVOID) openParms)) return FALSE; wDeviceID = openParms.wDeviceID; ... 10.2 MCI编程步骤 设置或获取设备信息 使用MCI_SET和MCI_STATUS命令可以用来设置和获取设备信息,在用函数mciSendCommand发送命令时,使用相应的MCI_SET_PARMS和MCI_STATUS_PARMS结构。原型: typedef struct { DWORD dwCallback; // 低字节用于MCI_NOTIFY的窗口句柄 DWORD dwTimeFormat; // 时间格式 DWORD dwAudio; // 输出声道 } MCI_SET_PARMS; typedef struct { DWORD dwCallback; // 低字节用于MCI_NOTIFY的窗口句柄 DWORD dwReturn; // 要获取的设备信息 DWORD dwItem; // 需要获取的信息项 DWORD dwTrack; // 曲目的长度或曲目号 } MCI_STATUS_PARMS; 例如,下面的代码是将波形音频设备的时间格式设成毫秒: MCI_SET_PARMS setParms; setParms.dwTimeFormat=MCI_FORMAT_MILLISECONDS; if (mciSendCommand(wDeviceID, MCI_SET, MCI_SET_TIME_FORMAT, (DWORD)(LPVOID) setParms)) return FALSE; 10.2 MCI编程步骤 播放设备 使用MCI_PLAY命令可以使设备播放多媒体文件,并在用函数mciSendCommand发送命令时,使用相应的MCI_PLAY_PARMS结构,其原型如下: typedef struct { DWORD dwCallback; // 低字节用于MCI_NOTIFY的窗口句柄 DWORD dwFrom; // 播放的起点位置 DWORD dwTo; // 播放的终点位置 } MCI_PLAY_PARMS; 例如,下面的代码是播放波形音频设备: MCI_PLAY_PARMS playParms; // 定位到开始位置 mciSendCommand (

文档评论(0)

1亿VIP精品文档

相关文档