mciSendCommand 音频视频播放命令函数
来源:互联网 发布:enum数据类型php 编辑:程序博客网 时间:2024/04/27 01:09
//打开设备
//typedef struct {
// DWORD dwCallback; //指定一个窗口句柄
// MCIDEVICEID wDeviceID; //为成功打开的文件返回 设备标识符.
// LPCSTR lpstrDeviceType; //设备类型的名字或常量标识. (设备名可以从注册表或者 SYSTEM.INI 文件中获得)
// LPCSTR lpstrElementName; //设备元素 (通常是打开的文件全路径).
// LPCSTR lpstrAlias//可选别名
// DWORD dwBufferSeconds;
//} MCI_WAVE_OPEN_PARMS;
//播放文件
//typedef struct {
// DWORD dwCallback;//指定一个窗口句柄
// DWORD dwFrom;//设置播放起始点
// DWORD dwTo;//设置播放结束点
//} MCI_PLAY_PARMS;
//查询信息
//typedef struct {
// DWORD dwCallback;
// DWORD dwReturn;//返回的信息内容
// DWORD dwItem;//请求查询的内容
// DWORD dwTrack;//轨道的长度或数目
//} MCI_STATUS_PARMS;
/*
* 函数名称:MCI_Open
* 函数介绍:用mci命令打开文件
* 输入参数:CString strPath, 文件的路径
* 输出参数:无
* 返回值 :mci命令的错误信息
*/
//typedef struct {
// DWORD dwCallback; //指定一个窗口句柄
// MCIDEVICEID wDeviceID; //为成功打开的文件返回 设备标识符.
// LPCSTR lpstrDeviceType; //设备类型的名字或常量标识. (设备名可以从注册表或者 SYSTEM.INI 文件中获得)
// LPCSTR lpstrElementName; //设备元素 (通常是打开的文件全路径).
// LPCSTR lpstrAlias//可选别名
// DWORD dwBufferSeconds;
//} MCI_WAVE_OPEN_PARMS;
//播放文件
//typedef struct {
// DWORD dwCallback;//指定一个窗口句柄
// DWORD dwFrom;//设置播放起始点
// DWORD dwTo;//设置播放结束点
//} MCI_PLAY_PARMS;
//查询信息
//typedef struct {
// DWORD dwCallback;
// DWORD dwReturn;//返回的信息内容
// DWORD dwItem;//请求查询的内容
// DWORD dwTrack;//轨道的长度或数目
//} MCI_STATUS_PARMS;
/*
* 函数名称:MCI_Open
* 函数介绍:用mci命令打开文件
* 输入参数:CString strPath, 文件的路径
* 输出参数:无
* 返回值 :mci命令的错误信息
*/
DWORD dlg_login::MCIOpen(const CString &strPath){//打开MCI设备MCI_OPEN_PARMS mciOP;DWORD opReturn;MCIDEVICEID wIDDevioce; //保存设备IDmciOP.lpstrDeviceType = NULL;mciOP.lpstrElementName = strPath; //设置打开的文件的名称opReturn = mciSendCommand(NULL, MCI_OPEN, MCI_OPEN_ELEMENT, (DWORD)(LPVOID)&mciOP);if (opReturn == 0){wIDDevioce = mciOP.wDeviceID;//播放设备IdwDevioceId = mciOP.wDeviceID;//设置设备信息MCI_SET_PARMS mciSet;mciSet.dwTimeFormat = MCI_FORMAT_MILLISECONDS; //设置时间单位为毫秒mciSendCommand(wDevioceId, MCI_SET, MCI_SET_TIME_FORMAT, (DWORD)(LPVOID)&mciSet);//设置当前播放位置跳转60秒MCISeek(100);//音频播放MCIPlay();MCI_STATUS_PARMS mciStatus;mciStatus.dwItem = MCI_STATUS_TIME_FORMAT;DWORD sta2Return = mciSendCommand(wIDDevioce, MCI_STATUS, MCI_STATUS_ITEM, (DWORD)(LPVOID)&mciStatus);DWORD music_timestyle = mciStatus.dwReturn; //获得当前的时间格式mciStatus.dwItem = MCI_STATUS_MODE;DWORD sta3Return = mciSendCommand(wIDDevioce, MCI_STATUS, MCI_STATUS_ITEM, (DWORD)(LPVOID)&mciStatus);DWORD music_playstyle = mciStatus.dwReturn; //获得当前播放工作模式 播放 526 暂停525 }elsewIDDevioce = NULL;return opReturn;}
DWORD dlg_login::MCIPlay(){ MCI_PLAY_PARMS mciPP; DWORD opReturn; opReturn = mciSendCommand(wDevioceId, MCI_PLAY, MCI_NOTIFY, (DWORD)&mciPP); return opReturn;}
DWORD dlg_login::MCIStatus_music_length(){ MCI_STATUS_PARMS mciStatus; mciStatus.dwItem = MCI_STATUS_LENGTH; DWORD staReturn = mciSendCommand(wDevioceId, MCI_STATUS, MCI_STATUS_ITEM, (DWORD)(LPVOID)&mciStatus); DWORD music_alltime = mciStatus.dwReturn / 1000; //音乐总时间 return music_alltime;}
DWORD dlg_login::MCIStatus_music_pos(){ MCI_STATUS_PARMS mciStatus; mciStatus.dwItem = MCI_STATUS_POSITION; DWORD sta1Return = mciSendCommand(wDevioceId, MCI_STATUS, MCI_STATUS_ITEM, (DWORD)(LPVOID)&mciStatus); DWORD music_timeing = mciStatus.dwReturn / 1000; //音乐当前播放时间 return music_timeing;}
//从制定位置开始播放void send_music_from_pos(){ MCI_STATUS_PARMS mciStatus; mciStatus.dwItem = MCI_STATUS_POSITION; DWORD sta1Return = mciSendCommand(wDevioceId, MCI_STATUS, MCI_STATUS_ITEM, (DWORD)(LPVOID)&mciStatus); DWORD music_timeing = mciStatus.dwReturn / 1000; //音乐当前播放时间 MCI_PLAY_PARMS PlayParms; PlayParms.dwFrom = music_timeing; // 指定从什么地方(时间)播放 DWORD ret1 = mciSendCommand(wDevioceId, MCI_PLAY, MCI_NOTIFY, (DWORD)(LPVOID)&PlayParms);}
//关闭指定设备
void close_mci(){ DWORD retclose=mciSendCommand(wDevioceId, MCI_CLOSE, NULL, NULL);}
//调节音量DWORD dlg_login::MCISetVolume(DWORD dwVol){MCI_DGV_SETAUDIO_PARMSmciSetAudioPara;mciSetAudioPara.dwCallback= NULL;mciSetAudioPara.dwItem = MCI_DGV_SETAUDIO_VOLUME;mciSetAudioPara.dwValue = dwVol; //此处就是音量大小 (0--1000)DWORD dwReturn = mciSendCommand(wDevioceId, MCI_SETAUDIO, MCI_DGV_SETAUDIO_VALUE | MCI_DGV_SETAUDIO_ITEM, (DWORD)(LPVOID)&mciSetAudioPara);return dwReturn;}
0 0
- mciSendCommand 音频视频播放命令函数
- 音频视频播放
- 音乐播放器 mciSendCommand
- mciSendCommand 函数的使用!
- 详解mciSendCommand 函数
- mciSendCommand 函数的使用!
- mciSendCommand函数实例
- mciSendCommand函数使用
- 使用mciSendCommand循环播放音乐
- 使用mciSendCommand循环播放音乐
- 使用mciSendCommand循环播放音乐
- 音频视频播放汇总
- fedora15 播放音频视频
- 音频视频后台播放
- 音频视频多媒体播放
- android音频视频播放器
- iOS音频视频播放
- html5---音频视频播放
- andriod listview OnScrollListener回调分析
- 【总结】Python中第三方的库(library)、模块(module),包(package)的安装方法
- java实现图片与base64字符串之间的转换
- Cocos2d-x -- 常用工具下载
- 聊聊分布式事务
- mciSendCommand 音频视频播放命令函数
- Ubuntu下配置Apache的Worker模式
- 扬城私厨——策划案
- java.util.Collections与线程安全
- left join 和 left outer join 的区别的总结
- Linux命令集合与实用技巧
- gpio_request()简单分析
- 初次见面 你好EF
- Codeforces #288 B