最近需要添加声音播放功能,最后选择用fmod,据说用它开发简单。打开fmod下载官网:
http://www.fmod.org/download/
注册下载,需要什么验证码,需要翻墙或者发邮件,果断翻墙,下载安装,打开API文件夹,有三个,用lowlevel,资源里有上传。把里面的inc 和 lib两个文件加拷贝到工程里,将动态库fmod64.dll放在工程所在的文件夹。
// fmodExcise.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "inc/fmod.hpp" #include <stdio.h> using namespace FMOD; #pragma comment(lib,"fmod64_vc.lib") #pragma warning(disable:4996) int _tmain(int argc, _TCHAR* argv[]) { System* sys = NULL; Sound* snd1 = NULL; Sound* snd2 = NULL; //Channel* ch1 = NULL; //Channel* ch2 = NULL; System_Create(&sys); sys->init(10, FMOD_INIT_NORMAL, NULL); sys->createStream("F:\\1.mp3", FMOD_DEFAULT, NULL, &snd1); sys->createStream("F:\\2.mp3", FMOD_DEFAULT, NULL, &snd2); //snd1->setMusicSpeed(2.0); sys->playSound(snd1, NULL, false, NULL/*&ch1*/); sys->playSound(snd2, NULL, false, NULL/*&ch2*/); printf("Press a key (press \'Q/q\' to quit):"); char key = 0; while (key!='q'||key!='Q') { /* 这个循环是为了让主函数永不结束(除非输入'Q'键) 这样FMOD就有机会继续执行任务(播放声音) 否则主函数会继续执行下一语句,直接退出 实际情况不应该是这样,这里仅仅作为一个示例罢了 实际情况应该是有一个前台任务在执行,在后台播放声音 */ key = getchar(); } return 0; }