c++音频播放,wav格式的
c++播放音频文件我搞了很久都没有搞清楚,播放视频可以用opencv,但是音频就没有库来实现,只有两个简单的函数,mciSendString()和 PlaySound(path, NULL, SND_FILENAME | SND_ASYNC);
但是他们在windows下只能播放wav格式的音乐,mp3格式的播放不了。要想播放MP3格式的还是用ffmpeg吧,一般的 音频格式它都能解码,去看看吧!
下面给出mciSendString代码
#include "stdafx.h"
#include <stdio.h>
#include <windows.h>
#include <mmsystem.h>
#include <stdio.h>
#pragma comment(lib, "Winmm.lib")
int WINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
PSTR szCmdLine,
int iCmdShow)
{
DWORD dwret = mciSendString(L"open \"C:\\1.wav\" alias aa", NULL, 0, NULL);//路径
if (dwret == 0){
mciSendString(L"play aa wait", NULL, 0, NULL);
mciSendString(L"close aa", NULL, 0, NULL);
}
else
{
MessageBox(0,
TEXT("放心,小小错误。\n\n请注意文件名。那个是我本机的表白文件\n\n你没有的话,请替换为你自己有的文件。\n\n替换后再尝试\n\n程序自行退出!!")
, TEXT("Error Message"), 0x21);
}
return 0;
}
// 函数②
int main(int argc, char **argv)
{
WinMain(NULL, 0, 0, 0);
return 0;
}