C语言中PlaySound函数如何播放MP3文件?

作者&投稿:漕群 (若有异议请与网页底部的电邮联系)
C语言中的PlaySound函数能播放MP3么?~

好像不能,Play Sound函数能播放WAVE跟WAV,还有系统声音。不支持MP3。

#include "stdafx.h"#include #include #include #include "resource.h"#include #include int _tmain(int argc, _TCHAR* argv[]){ int soundResourceID = IDR_WAVE1; HINSTANCE hInst = NULL; try{ BOOL bRtn; LPVOID lpRes; HANDLE hRes; HRSRC hResInfo; // Find the WAVE resource. hResInfo = FindResource(hInst, MAKEINTRESOURCEW(soundResourceID), L"WAVE"); if (hResInfo == NULL) throw std::exception("Cannot find the resource"); // Load the WAVE resource. hRes = LoadResource(hInst, hResInfo); if (hRes == NULL) throw std::exception("Cannot load the resource"); // Lock the WAVE resource and play it. lpRes = LockResource(hRes); if (lpRes != NULL) { bRtn = sndPlaySoundW((wchar_t*)lpRes, SND_MEMORY | SND_SYNC | SND_NODEFAULT); UnlockResource(hRes); MessageBoxW(NULL, L"Playing sound", L"", 0); } else bRtn = 0; // Free the WAVE resource and return success or failure. FreeResource(hRes); } catch (const std::exception& e) { MessageBoxA(NULL, e.what(), "", 0); } return 0;}
需要注意 不要忘记代码中的 #include 这几项,还有需要在项目(不是解决方案)的属性页面中进行如上图的设置 在 Configuration Properties->Linker->Input->Additional Dependences 中加入 winmm.lib .

另外补充一下如何打开 项目属性页面,如下图所示

我还上传了源代码,请查看附件
对于您的问题 请参考 https://msdn.microsoft.com/en-us/library/dd743679(v=vs.85).asp

可以使用PlaySound()函数播放声音文件,

该函数原型位于#include <mmsystem.h>中,

因此要使用PlaySound,首先需要添加对这个头文件的引用。

提示:mm就是MultiMedia的简写,多媒体

【1、函数使用说明】

函数原型为: BOOL PlaySound(LPCSTR pszSound, HMODULE hmod,DWORD fdwSound);

返回值表示是否播放成功。

参数pszSound是要播放声音的文件名,

只支持WAV等格式的文件(应该不能播放MP3格式文件);

你可以去mp3.baidu.com用“wav”为关键词可以搜到很多wav音乐,

也可以用工具将其他格式的转换为wav格式的。

参数hmod是应用程序的实例句柄,一般传递NULL就可以;

参数fdwSound是标志的组合掩码,

可选值有SND_FILENAME、SND_ASYNC、SND_SYNC等。

SND_FILENAME表示pszSound参数指定的是文件名(pszSound还可以指定资源、内存音乐、系统音乐等等);

SND_ASYNC:用异步方式播放声音,PlaySound函数在开始播放后立即返回;

SND_SYNC:同步播放声音,在播放完后PlaySound函数才返回;

SND_LOOP一遍遍的重复播放声音,必须与SND_ASYNC标志一块使用。

【2、使用举例】
PlaySound(TEXT("C:\\WINDOWS\\Media\\Windows XP 启
动.wav"),NULL,SND_FILENAME|SND_SYNC);

注意的问题:文件名中的反斜线要用“\\”,

因为C语言中“\”默认是转义符,

如果要表示“\”则需要使用“\\”,

对这点不明白的请回去翻一下C语言的书;

对中文字符串要使用TEXT宏。

PlaySound只能播放wav格式的
MP3可以使用MediaPlayer控件

playsound 和sndplaysound 函数只能播放wav
格式的文件

PlaySound 不能直接播放裸mp3文件,只能播放wav文件,不过wav文件里面可以内嵌mp3的压缩数据(就相当于在mp3文件的前面加一个wav头)。


网络常用语言及解释
so so:一般 cutie:甜心 d\\\\\\*amn:靠,他xx的 包子:某人长得难看或者笨就说他包子 粉:很,非常 ...COSPLAY COSTUMEPLAY,扮演自己所喜欢的角色表演,来自于日本〔ko-su-pu-re〕的发音。 cow **,kao。

Edward, you play so well. But I ___ you played the piano. A.did...
A。 句意为:爱德华,你打得好。但我不知道你弹钢琴。所谈论的是指过去行为,故用过去式。

Everyone playing so well为什么play要用现在分词?
你好!这个句子漏掉了一个单词is,正确的句子是:Everyone is playing so well.句中的is playing 是现在进行时的谓语。

edward,you play so well
过去时就要加ed,因为后面都说了,didn't know,说明是过去时,前面当然也要用过去式

副词是什么,副词有哪些
副词:常用来限制、修饰动词、形容词性词语,表示程度、范围、时间等意义。表示程度:很、非常、极、十分、最、顶、太、更、挺、极其、格外、分外、更加、越、越发、有点儿、稍、稍微、略微、几乎、过于、尤其 表示范围:都、全、总、总共、共、统统、仅仅、只、光、净、一概、一律、一齐、单、单...

【TED演讲】怎样说话人们才会听(中英文对照稿)
The human voice: It's the instrument we all play. It's the most powerful sound in the world...So here they are, seven deadly sins of speaking. These are things I think we need to avoid...那是唱歌,是元语言, 我们用来传送意味。 在谈话中是意 思的根基。 那种说话一个声调的人 很难让...

初中英语知识点,重点语法总结
for + 段时间, since + 点时间;in the last\/ past three years, so far, by now, up to now\/ present等连用 2. 过去时指过去某时或某一段时间发生的动作或存在的状态。指的现在之前的情况,与现在无关 3. 过去完成时指的过去某一时间动作之前发生的动作或存在的状态,“过去的过去”。

英语双关语(pun)如何分类
一、英语双关语的分类主要有语音双关和语义双关。二、语音双关:1、同音双关 在现代英语词C中,同音异义词数量很大,为双关表达提供了大量的原始素材。同音异义词发音一样,拼写和词义不同因此常被巧妙地运用,形成双关。2、近音双关 近音双关指的是两个词或短语的发音相似,意思不同,给听者或读者...

请问一些网络术语
COSPLAY COSTUME PLAY,扮演自己所喜欢的角色表演,来自于xx〔ko-su-pu-re〕的发音。cow **,kao。...so so:一般 cutie:甜心 包子:某人长得难看或者笨就说他包子 粉:很,非常 菜鸟,小虾,初哥:就是初级

给发个 英语常用缩写词要全一点的 不胜感激
IANALBIPOOTV I am not a lawyer, but I play one on TV IARTPFWTSIOWIM I am repeating this...ILSHIBAMF I laughed so hard I broke all my furniture! IMAP(Internet Message Access Protocol) ...JavaScript :这是一种在网页中使用的描述语言,可以使网页变得生动活泼。微软版的 JavaScript 被称之为...

冀州市17818939182: C语言中PlaySound函数如何播放MP3文件? -
势疮止咳: 可以使用PlaySound()函数播放声音文件, 该函数原型位于#include <mmsystem.h>中, 因此要使用PlaySound,首先需要添加对这个头文件的引用. 提示:mm就是MultiMedia的简写,多媒体 【1、函数使用说明】 函数原型为: BOOL ...

冀州市17818939182: 在C语言中PlaySound 函数怎么用? 可以把格式描述清楚点吗? -
势疮止咳: #include "windows.h" PlaySound("xxx.wav", NULL, SND_FILENAME | SND_ASYNC); 可以看这个 chenzhand1.blog.hexun.com.tw/43298441_d.html

冀州市17818939182: 怎样用C语言编程打开一个文件(比如mp3,mp4) -
势疮止咳: 可以使用PlaySound()函数播放mp3音频,该函数原型位于windows.h.PlaySound函数的声明为: BOOL PlaySound(LPCSTR pszSound, HMODULE hwnd,DWORD fdwSound); 参数pszSound是指定了要播放声音的字符串...

冀州市17818939182: 如何用C语言播放一段音频呢 -
势疮止咳: 可以使用PlaySound()函数播放wav声音,该函数原型位于windows.h中, 函数原型为: BOOL PlaySound(LPCSTR pszSound, HMODULE hmod,DWORD fdwSound); 参数pszSound是指定了要播放声音的字符串,该参数可以是WAVE文件...

冀州市17818939182: c语言调用声音的函数? -
势疮止咳: 两个声音函数sound(),nosound()和延迟函数delay()由函数库提供. 函数名: sound 功 能: 以指定频率打开PC扬声器 用 法: void sound(unsigned frequency); 程序例: #include int main(void) { sound(7); delay(10000); nosound(); return 0; }

冀州市17818939182: C++里playsound函数到底如何使用? -
势疮止咳: PlaySound函数的声明为:BOOL PlaySound(LPCSTR pszSound, HMODULE hmod,DWORD fdwSound); 参数pszSound是指定了要播放声音的字符串,.如果该参数为NULL则停止正在播放的声音.参数hmod是应用程序的实例句柄,除非...

冀州市17818939182: C语言Playsound函数使用问题 -
势疮止咳: 右键点击项目,properties,在第一个标签页project settings的右下角点击project's build option...,在弹出的窗口第二个标签linker setting的other link option中加一行-lwinmm就可以了.

冀州市17818939182: c语言如何引用音乐文件 -
势疮止咳: 使用 PlaySound() 函数播放音乐文件.需添加 #include引用.函数原型: BOOL PlaySound (LPCSTR pszSound, HMODULE hmod, DWORD fdwSound);

冀州市17818939182: 学习c语言的时候如何在程序中添加声音······
势疮止咳: 转义字符\a,嘟的一声 在windows平台上,你可以调用PlaySound函数播放声音文件 PlaySound("sound.wav",NULL,SND_ASYNC );

冀州市17818939182: 求一个c语言代码,能实现播放音乐功能 -
势疮止咳: 用C语言播放音乐,一般需要额外的库或者调用系统的API函数.以Windows为例,可以通过PlaySound函数播放wav格式的音乐.示例如下:#include<stdio.h>#include<windows.h>#include<mmsystem.h>#pragma comment(lib, "WINMM.LIB") ...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网