当前位置: 首页 > news >正文

电子商务网站建设实训室简介今天最新新闻摘抄

电子商务网站建设实训室简介,今天最新新闻摘抄,做头像网站,免费网页设计成品下载使用 mciSendString 播放音乐 mciSendString 支持 mp3、wma、wav、mid 等多种媒体格式,使用非常简单。这里做一个简单的范例,用 mciSendString 函数播放 MP3 格式的音乐,代码如下: // 编译该范例前,请把 music.mp3 放…

使用 mciSendString 播放音乐

mciSendString 支持 mp3、wma、wav、mid 等多种媒体格式,使用非常简单。这里做一个简单的范例,用 mciSendString 函数播放 MP3 格式的音乐,代码如下:

// 编译该范例前,请把 music.mp3 放在项目文件夹中
// 发布时,请把 music.mp3 和编译的 exe 放在一起
// 编译环境:VC6~VC2019 + EasyX_20210115
//
#include <graphics.h>
#include <conio.h>
// 引用 Windows Multimedia API
#pragma comment(lib, "Winmm.lib")int main()
{initgraph(640, 480);// 打开音乐mciSendString(_T("open music.mp3 alias mymusic"), NULL, 0, NULL);outtextxy(0, 0, _T("按任意键开始播放"));_getch();// 播放音乐mciSendString(_T("play mymusic"), NULL, 0, NULL);outtextxy(0, 0, _T("按任意键停止播放"));_getch();// 停止播放并关闭音乐mciSendString(_T("stop mymusic"), NULL, 0, NULL);mciSendString(_T("close mymusic"), NULL, 0, NULL);outtextxy(0, 0, _T("按任意键退出程序"));_getch();closegraph();return 0;
}

简单讲解一下:

一定要引用 Winmm.lib 库文件。这个范例中是通过 #pragma comment 命令引用的,也可以在项目属性中设置,这里不作介绍。

mciSendString 函数的功能很强大,甚至可以播放视频,不过这里就不多作介绍了,详细请参见 MSDN。多数情况只需要用到第一个参数,将另外三个参数置为 NULL, 0, NULL 即可。

第一个参数是多媒体命令字符串,不区分大小写。程序中,先要通过 open 命令打开 background.mp3,并用 alias 指定了别名为“mymusic”,这样在之后的代码中就可以方便的通过“mymusic”这个别名访问该音乐了。当然,并不是必须要指定别名,每次通过文件名访问也是可以的。

open 后面的 mp3 用绝对路径或相对路径都可以。

然后就是:play mymusic 开始播放,stop mymusic 停止播放,close mymusic 关闭文件。

如果需要同时播放多个音乐,请为不同的音乐指定不同的别名,然后分别操作即可。

不再需要播放的音乐,请记得用 close 命令关闭。

另外还有一个 PlaySound 函数也可以用来播放声音,不过可惜不支持 mp3 / wma,这里就不多做介绍了。

一些有用的多媒体命令:

从头播放 xxx:

"play xxx from 0"

循环播放 .mp3 文件(.wma 文件同样可以):

"open xxx.mp3"
"play xxx.mp3 repeat"

循环播放 .wav 文件(.mid 文件同样可以):

"open xxx.wav type MPEGVideo"
"play xxx.wav repeat"

关闭当前程序打开的所有多媒体文件:

"close all"

如果文件名中有空格,需要用双引号引起来文件名(注意转义):

mciSendString("open \"D:\\My Music\\俞丽拿 梁祝 化蝶.mp3\" alias mymusic", NULL, 0, NULL);

使用 mciSendCommand 播放音乐

mciSendCommand 与 mciSendString 的功能类似,只是控制方式略有区别。因此,对 mciSendCommand 不做过多介绍,只看一个使用例子吧。以下范例实现 mp3 的循环播放:

// 该范例演示使用 mciSendCommand 函数循环播放 mp3
// 编译环境:VC2008~VC2019 + EasyX_20210115
//
#include <graphics.h>
#include <Digitalv.h>
#include <conio.h>
#pragma comment(lib, "winmm.lib")int main()
{initgraph(640, 480);// 打开音乐文件MCI_OPEN_PARMS mciOpenParms;mciOpenParms.lpstrDeviceType = L"sequencer";mciOpenParms.lpstrElementName = L"R:\\Downloads\\test.mp3";mciSendCommand(NULL, MCI_OPEN, MCI_OPEN_ELEMENT | MCI_WAIT, DWORD_PTR(&mciOpenParms));	// 打开指定媒体文件UINT wDeviceID = mciOpenParms.wDeviceID;	// 返回的 Device ID 需要保存下来,以便实现后续控制outtextxy(0, 0, L"按任意键开始播放");_getch();// 播放音乐MCI_PLAY_PARMS mciPlayParms;mciSendCommand(wDeviceID, MCI_PLAY, MCI_DGV_PLAY_REPEAT, DWORD_PTR(&mciPlayParms));outtextxy(0, 0, L"按任意键停止播放");_getch();// 停止播放并关闭音乐mciSendCommand(wDeviceID, MCI_STOP, 0, NULL);	// 停止播放mciSendCommand(wDeviceID, MCI_CLOSE, 0, NULL);	// 关闭音乐outtextxy(0, 0, L"按任意键退出程序");_getch();closegraph();return 0;
}

解决某些 MP3 无法播放的问题

有些 mp3 无法用 mciSendString 播放,是因为用了比较大的封面,我测试过一个 mp3 的封面尺寸是 1824x1824,直接无法播放。将封面尺寸修改为 500x500,顺利播放。当然,更简单的办法是直接移除封面。这里给大家推荐个工具:Mp3tag,官网:https://www.mp3tag.de,Mp3tag 的操作方法非常简单,点点鼠标就能搞定,这里不再详述。

使用 PlaySound 函数播放音乐

PlaySound 可以用来播放 wav 和系统声音,使用很简单,一些常用的用法如下:

// 注意:
// 1. 需要使用预编译指令 #pragma comment(lib, "winmm.lib") 链入库文件
// 2. 第一个参数是字符串,注意使用程序中约定的字符集,例如 Unicode 字符集需要在字符串前面加 L
//
PlaySound("C:\\SOUNDS\\BELLS.WAV", NULL, SND_SYNC);				// 播放 Bells.wav,并等待直到播放结束
PlaySound("C:\\SOUNDS\\BELLS.WAV", NULL, SND_ASYNC);			// 后台播放 Bells.wav,函数立即返回
PlaySound("SystemExclamation", NULL, SND_ASYNC);				// 后台播放系统定义的 SystemExclamation 声音
PlaySound("C:\\SOUNDS\\BELLS.WAV", NULL, SND_LOOP | SND_ASYNC);	// 后台循环播放 Bells.wav
PlaySound(NULL, NULL, 0);										// 停止后台播放

更多好玩的小项目看我哔哩哔哩、Q裙:小鱼快来啊的个人空间-小鱼快来啊个人主页-哔哩哔哩视频哔哩哔哩小鱼快来啊的个人空间,提供小鱼快来啊分享的视频、音频、文章、动态、收藏等内容,关注小鱼快来啊账号,第一时间了解UP注动态。编程学习群:725022484 每天分享一个编程小游戏~C/C++游戏源码素材及各种安装包, 私信不常看!https://space.bilibili.com/1827181878?spm_id_from=333.1007.0.0

http://www.ds6.com.cn/news/63177.html

相关文章:

  • 邮轮哪个网站是可以做特价品牌营销包括哪些内容
  • 工信部的网站备案深圳seo专家
  • 三网合一网站模板大型网站建设
  • 做界面的网站百度怎么推广广告
  • 技术支持 东莞网站建设 轴承火爆产品的推广文案
  • 宁慈建设网站seo快速排名源码
  • 天津网站开发制作58同城网站推广
  • 我的网站要换新域名如何做怎么进行推广
  • 百度推广一个点击多少钱浙江搜索引擎优化
  • 怀化公司做网站企业网站seo方案
  • 网站建设的新发展百度问一问客服人工在线咨询
  • 创新网站设计seo网站建设优化
  • 如何取外贸网站域名百度上的广告多少钱一个月
  • 湖北省建设银行网站长沙网站seo外包
  • 广告联盟哪个好做灰色词seo靠谱
  • 西充建设局网站济南计算机培训机构哪个最好
  • 要对网页中各个元素优化大师免费下载
  • 网页背景做的比较好的网站湖人最新消息
  • 温州公司网站开发电商培训心得体会
  • 建设工程网上质检备案网站网络seo关键词优化技术
  • 滕州本地网站建设沈阳专业网站seo推广
  • 卧龙区网站制作百度关键词优化大
  • 谷歌网站江东怎样优化seo
  • 佛山微网站建设多少钱网站制作的基本流程
  • 情侣做记录网站源码晋江友情链接是什么意思
  • 百度小程序制作网站买卖网交易平台
  • 企业logo设计思路杭州seo关键字优化
  • html5的网站设计seo网站平台
  • 网站建设所需要软件关键词排名零芯互联排名
  • 扁平网站欣赏太原网站排名推广