SDL是音视频开发中常用的音频工具
第一步下载SDL2库,官网如下,这里版本可以任意选择,和QT版本,ffmpeg版本无关,下载时一定要选择“SDL2-devel-2.28.5-VC.Zip”,!!!!一定要带有devel和VC字段的压缩包,(PS 我一度以为是下载带有MinGW字段的那个压缩包,结果一直失败,淦)
我这里是windows平台哈,
Simple DirectMedia Layer - Homepage (libsdl.org)x
第二步新建QT项目,Pro文件中引入如下代码,这里采用的是绝对路径,引入的链接库是64位版本,因为我用的编译器是MinGW64位版本,!!!!!这里建议采用MinGW编译器,版本一定要对应!!!!
#SDL库配置
INCLUDEPATH += D:\SDL2-devel-2.28.5-VC\SDL2-2.28.5\include
LIBS += D:\SDL2-devel-2.28.5-VC\SDL2-2.28.5\lib\x64\SDL2.lib\
D:\SDL2-devel-2.28.5-VC\SDL2-2.28.5\lib\x64\SDL2main.lib\
D:\SDL2-devel-2.28.5-VC\SDL2-2.28.5\lib\x64\SDL2test.lib
main文件中加入一下头文件,其中#undef main非常重要,用以区分QTmain函数入口和SDL2main函数入口,
extern "C"
{
#include "SDL.h"
#undef main
}
第三步 main中加入以下代码,如果能正确打印出版本信息,则引入SDL2库正确
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
SDL_version version;
SDL_VERSION(&version);
qDebug()<<"version major is"<<version.major;
qDebug()<<"version minor is"<<version.minor;
return a.exec();
}
运行后成功打印出版本信息,引入正确。