Microsoft Visual Studio2019环境下搭建SDL开发环境

参考链接

  • 《基于 FFmpeg + SDL 的视频播放器的制作》课程的视频_雷霄骅的博客-CSDN博客_雷霄骅ffmpeg视频教程
  • 小学期课程资料 - 基于FFmpeg+SDL的视频播放器的制作.zip_免费高速下载|百度网盘-分享无限制
  • 辅助参考链接
  • VS自动链接到Windows上随vcpkg安装的SDL2库 | 码农俱乐部 - Golang中国 - Go语言中文社区
  • Simple DirectMedia Layer - SDL version 2.0.22 (stable)
  • Microsoft Visual Studio2019环境下搭建FFmpeg开发环境_MY CUP OF TEA的博客-CSDN博客

注意事项

  • vcpkg如果不指定具体安装方式,默认安装x86架构的包
  • vcpkg本人安装位置 C:\Users\32157\vcpkg

Win安装/配置SDL2

  • 使用./vcpkg.exe search sdl2 查找sdl2的对应版本
  • 本次安装的是 sdl2 2.0.22#1 x86架构

Microsoft Visual Studio2019环境下搭建SDL开发环境_第1张图片

  • 使用命令  ./vcpkg.exe install sdl2 进行安装

Microsoft Visual Studio2019环境下搭建SDL开发环境_第2张图片

  •  将下载的库集成到全局中
  • ./vcpkg.exe integrate install

测试

测试代码

  • 参考链接
    • 阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台
    • SDL 库安装、环境配置与使用 - 简书
  • #define SDL_MAIN_HANDLED  需要加上这句话,否则会出错
    • 显示 :无法解析的外部符号 _main,该符号在函数 "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) 中被引用 
  • //由于SDL内部重新定义了main,因此main函数需要写成如下形式 int main(int argc,char* argv[])
    • 添加 #define SDL_MAIN_HANDLED  这个之后,即使main函数为空,也不会报错

测试代码1

// test_ffmpeg.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#define SDL_MAIN_HANDLED
#include 
#include 

//由于SDL内部重新定义了main,因此main函数需要写成如下形式
int main(int argc,char* argv[])
{
    //初始化SDL
	if ((SDL_Init(SDL_INIT_AUDIO | SDL_INIT_VIDEO) == -1)) {
		//初始化失败,打印错误信息
		std::cout << "Could not initialize SDL:" << SDL_GetError();
	}
	else {
		std::cout << "SDL initialize OK!";
	}
	//结束SDL
	SDL_Quit();
	return 0;
}

// 运行程序: Ctrl + F5 或调试 >“开始执行(不调试)”菜单
// 调试程序: F5 或调试 >“开始调试”菜单

// 入门使用技巧: 
//   1. 使用解决方案资源管理器窗口添加/管理文件
//   2. 使用团队资源管理器窗口连接到源代码管理
//   3. 使用输出窗口查看生成输出和其他消息
//   4. 使用错误列表窗口查看错误
//   5. 转到“项目”>“添加新项”以创建新的代码文件,或转到“项目”>“添加现有项”以将现有代码文件添加到项目
//   6. 将来,若要再次打开此项目,请转到“文件”>“打开”>“项目”并选择 .sln 文件

Microsoft Visual Studio2019环境下搭建SDL开发环境_第3张图片

 测试代码2

// test_ffmpeg.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#define SDL_MAIN_HANDLED
#include 
#include 

//由于SDL内部重新定义了main,因此main函数需要写成如下形式
int main(int argc, char* argv[])
{
	SDL_Window* window = SDL_CreateWindow("demo", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 640, 480, SDL_WINDOW_SHOWN);
	SDL_Renderer* renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED);
	bool quit = false;
	SDL_Event event;

	SDL_SetRenderDrawColor(renderer, 255, 255, 255, 255);
	while (!quit) {
		while (SDL_PollEvent(&event)) {
			switch (event.type) {
			case SDL_QUIT:
				quit = true;
				break;
			case SDL_MOUSEMOTION:
				if (SDL_GetMouseState(NULL, NULL) & SDL_BUTTON(1))
					SDL_RenderDrawPoint(renderer, event.motion.x, event.motion.y);
				break;
			}
		}

		SDL_RenderPresent(renderer);
		SDL_Delay(1000 / 60);
	}
	SDL_DestroyWindow(window);
	SDL_DestroyRenderer(renderer);
	return 0;
}

// 运行程序: Ctrl + F5 或调试 >“开始执行(不调试)”菜单
// 调试程序: F5 或调试 >“开始调试”菜单

// 入门使用技巧: 
//   1. 使用解决方案资源管理器窗口添加/管理文件
//   2. 使用团队资源管理器窗口连接到源代码管理
//   3. 使用输出窗口查看生成输出和其他消息
//   4. 使用错误列表窗口查看错误
//   5. 转到“项目”>“添加新项”以创建新的代码文件,或转到“项目”>“添加现有项”以将现有代码文件添加到项目
//   6. 将来,若要再次打开此项目,请转到“文件”>“打开”>“项目”并选择 .sln 文件

Microsoft Visual Studio2019环境下搭建SDL开发环境_第4张图片

你可能感兴趣的:(音视频,visual,studio,音视频,ide)