如何添加mp3文件作为资源,然后播放



我正在使用visualstudio,我想知道如何添加mp3文件作为资源,然后播放它,我在这方面找不到任何东西!

对于nom,我已经将文件添加到资源文件夹中,但我做得对吗?我不知道我的.rc文件有一个名为"mp3"的文件夹,其中是文件IDR_MP31我试过这个:

PlaySound(L"mp3\IDR_MP31", NULL, SND_RESOURCE | SND_ASYNC);

不幸的是,这似乎不起作用如何在代码中引用资源?我可以用mciSendString演奏吗?

编辑:我已经从内存中播放了.WAV文件,但这并不理想,因为它需要大量内存

在资源中。h:

#define IDR_WAVE1                       104

功能

HINSTANCE h = ::GetModuleHandle(0);
HRSRC res = ::FindResource(h, MAKEINTRESOURCE(104), TEXT("WAVE"));
if (res == 0)
return;
HGLOBAL global = ::LoadResource(h, res);
if (global == 0)
return;
void* wav = ::LockResource(global);
if (wav == 0)
{
UnlockResource(global);
FreeResource(global);
return;
}
PlaySound(LPCWSTR(wav), NULL, SND_MEMORY | SND_ASYNC | SND_NODEFAULT);

UnlockResource(global);
FreeResource(global);

如果有人知道如何用这种方式播放mp3文件,请告诉我。感谢

您应该能够使用mciSendString:mciSendString("play mp3", NULL, 0, NULL);播放它

这个链接还有一些有用的信息:https://www.codeproject.com/Articles/17279/Using-mciSendString-to-play-media-files

最新更新