以文本方式查看主题 - 中文XML论坛 - 专业的XML技术讨论区 (http://bbs.xml.org.cn/index.asp) -- 『 C/C++编程思想 』 (http://bbs.xml.org.cn/list.asp?boardid=61) ---- 播放数字化视频AVI的方法 (http://bbs.xml.org.cn/dispbbs.asp?boardid=61&rootid=&id=35475) |
-- 作者:卷积内核 -- 发布时间:7/11/2006 9:51:00 AM -- 播放数字化视频AVI的方法 播放数字化视频AVI的方法 ///////////////////////////////////////////////////////////////////////// // PlayMovie // 使用 MCI_OPEN和MCI_PLAY命令消息打开并播放数字化视频AVI // 参数:lpszFileName 指定的AVI文件名 // dwFrom —— 开始播放位置 // dwTo —— 结束播放位置 // // 返回值:0 —— 成功 // 非0 —— 失败,返回值为MCI错误码 ///////////////////////////////////////////////////////////////////////// DWORD PlayMovie(LPSTR lpszFileName, DWORD dwFrom, DWORD dwTo) { DWORD dwReturn;
// 打开AVI MCI_DGV_OPEN_PARMS mciOpen; mciOpen.dwCallback = 0L; mciOpen.wDeviceID = 0; mciOpen.lpstrDeviceType = AVI_VIDEO; mciOpen.lpstrElementName = lpszFileName; mciOpen.lpstrAlias = NULL; mciOpen.dwStyle = 0; mciOpen.hWndParent = NULL; if (dwReturn=mciSendCommand(0, MCI_OPEN, (DWORD)(MCI_OPEN_TYPE), (DWORD)(LPMCI_DGV_OPEN_PARMS)&mciOpen) ) { // 打开设备失败,返回错误码 return dwReturn; }
// 播放AVI MCI_DGV_PLAY_PARMS mciPlay; // play parameters DWORD dwFlags = 0;
// 打开设备成功,获取设备ID WORD wDevID = mciOpen.wDeviceID;
// 检查开始播放位置,如不等于0,则进行设置 if (dwFrom) { mciPlay.dwFrom = dwFrom; // 设置参数 dwFlags |= MCI_FROM; // 设置标志 }
// 检查结束播放位置,如不等于0,则进行设置 if (dwTo) { mciPlay.dwTo = dwTo; // 设置参数 dwFlags |= MCI_TO; // 设置标志 }
// 用MCI_PLAY 命令播放并返回结果 return mciSendCommand(wDevID, MCI_PLAY, dwFlags, (DWORD)(LPVOID)&mciPlay); |
W 3 C h i n a ( since 2003 ) 旗 下 站 点 苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》 |
46.875ms |