c++怎样播放mp3
C++语言中播放音频文件的方法如下:
1:Playsound函数
事例代码如下
#include<windows.h>
#include<stdio.h>
#pragma comment(lib,"WinMM.Lib")
void main()
{
PlaySound("c:dui12.wav",NULL,SND_FILENAME|SND_ASYNC);
}
2:和Playsound函数类似的undplaysound函数#include<windows.h>
#include<stdio.h>
#pragma comment(lib,"WinMM.Lib")
void main()
{
undPlaySound("c:dui12.wav",NULL,SND_FILENAME|SND_ASYNC);}
3:功能强大的函数,支持混音的MCI类
事例代码如下
#include<windows.h>
#include "mmsystem.h"//导入声音头文件
#pragma comment(lib,"winmm.lib")//导入声音头文件库
#include<stdio.h>
void PlayMp3() ;
void main()
{
PlayMp3() ;
PlaySound("C:Normal2.wav", NULL, SND_FILENAME | SND_ASYNC | SND_LOOP);
system("pause");
}
void PlayMp3()
{
char buf[128];
char str[128]= {0 };
int i = 0;
//use mciSendCommand
MCI_OPEN_PARMS mciOpen;
MCIERROR mciError;
//SetWindowText(NULL,"12345");
mciOpen.lpstrDeviceType = "mpegvideo";
mciOpen.lpstrElementName = "c:WELCOME.WAV";
mciError = mciSendCommand(0,MCI_OPEN,MCI_OPEN_TYPE | MCI_OPEN_ELEMENT,(Dword)&mciOpen);
if(mciError)
{
mciGetErrorString(mciError,buf,128);
printf("send MCI_OPEN command failed:%s ",buf);
return;
}
UINT DeviceID = mciOpen.wDeviceID ;
MCI_PLAY_PARMS mciPlay;
mciError = mciSendCommand(DeviceID,MCI_PLAY,0 ,(Dword)&mciPlay);
if(mciError)
{
printf("send MCI_PLAY command failed ");
return;
}
}