在阅读本文前,需要读者具备初步的sdl知识,可以参考这篇文章及其系列:SDL入门_慕课手记
SDL2源代码分析
获取: SDL的官方网站(http://www.libsdl.org/)下载
想要SDL播放就要提供sdl所支持的 像素格式 比如:AV_PIX_FMT_YUV420P==>SDL_PIXELFORMAT_IYUV
SDL2常用函数&结构分析:SDL_Texture&SDL_CreateTexture&SDL_UpdateTexture
SDL
实际上是对底层绘图API(Direct3D,OpenGL)的封装,使用起来明显简单于直接调用底层
通用初始化
#include <SDL/SDL.h>
int screen_w,screen_h;
SDL_Surface *screen; 显示图像的容器,即SDL弹出的窗口。在SDL1.x版本中,只可以创建一个SDL_Surface。
SDL_VideoInfo *vi;
SDL_Overlay *bmp; 用于存储YUV数据。一个SDL_Overlay对应一帧YUV数据。
SDL_Rect rect; 确定屏幕上的一个矩形区域{
4个成员:左上角x、y轴坐标+矩形的宽高}
(允许多个SDL_Rect→不同位置显示相同内容)
初始化:
int SDLCALL SDL_Init(Uint32 flags): 初始化SDL。
/*
flags可以取下列值:(依据flag→决定调用对应函数初始化对应子系统)
SDL_INIT_TIMER:定时器 →→