如何在C中播放MP3文件?

Sam*_*Sam 34 c mp3

我正在寻找在C中播放MP3文件的最简单方法.我正在寻找一个库,我可以在文件名中调用函数,或者只运行和退出的可执行文件.请建议.

Gab*_*ona 24

使用FMOD(跨平台),这应该是这样简单:

#include <conio.h>
#include "inc/fmod.h"

FSOUND_SAMPLE* handle;

int main ()
{
   // init FMOD sound system
   FSOUND_Init (44100, 32, 0);

   // load and play mp3
   handle=FSOUND_Sample_Load (0,"my.mp3",0, 0, 0);
   FSOUND_PlaySound (0,handle);

   // wait until the users hits a key to end the app
   while (!_kbhit())
   {
   }

   // clean up
   FSOUND_Sample_Free (handle);
   FSOUND_Close();
}
Run Code Online (Sandbox Code Playgroud)

作为旁注,我建议你使用C++而不是C.

  • 我不明白旁注与问题有什么关系. (29认同)

Tam*_*ege 5

BASS DLL是很容易使用,可能会做你的需要.但它仅供非商业用途免费使用.

如果你需要更多控制,你将需要一个编解码器(我更喜欢libMad)和一些声音输出API,如Windows上的DirectSound或ALSA或Linux(或本周用于声音的任何Linux用户)


小智 3

我不知道这是否是“最简单的方法”,但你可以看看SDL(以及SDL_sound)。