一、SDL 视频显示函数 1、SDL_Init 函数 使用 SDL 开发库 的 功能 之前 , 都要先 初始化 SDL 系统环境 ; 调用 SDL_Init() 函数 , 可以初始化 SDL 系统上下文环境...SDL_INIT_TIMER | SDL_INIT_AUDIO | SDL_INIT_VIDEO | SDL_INIT_EVENTS | \ SDL_INIT_JOYSTICK...); 2、SDL_Quit 函数 SDL_Init 函数 的作用是 初始化 要使用的各个子系统 , 使用完毕后需要退出 , SDL_Quit 函数 就是退出 SDL 系统 时需要调用的函数 ; SDL_Quit...SDL 环境 , 用于播放视频 SDL_Init(SDL_INIT_VIDEO); // 创建 SDL_Window 窗口对象 window = SDL_CreateWindow...纹理 是基于 SDL_Renderer 渲染器 对象创建 ; 二、SDL 窗口绘制 - 代码示例 1、SDL 窗口绘制代码 这是在上一篇博客 【FFmpeg】SDL 开发环境搭建 ( SDL 简介 |
SDL_Error: %s\n", SDL_GetError() ); }else{ // 创建窗口 window = SDL_CreateWindow( "SDL...SDL需要这种类型的main,所以它能兼容多种平台。 然后我们声明我们的SDL窗口,我们将在稍后创建这个窗口。继而我们有一个屏幕SDL表面。SDL表面只是一个2D图像。...在声明我们的窗口和屏幕表面后,我们初始化SDL。在没有初始化SDL之前,你不能调用任何SDL函数。由于我们关心的只是使用SDL的视频子系统,所以我们只将SDL_INIT_VIDEO标志传递给它。...由于SDL_GetError是唯一的参数,所以它返回的字符串将被加上。SDL_GetError 返回一个 SDL 函数产生的最新错误。 SDL_GetError是一个非常有用的函数。...SDL_GetError 会让你知道任何 SDL 函数内部是否发生了错误。 如果SDL初始化成功,我们要使用SDL_CreateWindow创建一个窗口。
SDL简介 SDL(Security Development Lifecycle,安全开发生命周期)是由微软提出的一种从安全角度指导软件开发的管理模式,它主要通过在传统的软件开发生命周期的各个阶段穿插一系列的安全活动来保障和提升产品自身的安全能力...微软标准 微软在提出SDL的同时也给予了一套实践参考标准: 微软SDL参考标准可以进一步细化为以下三个核心: 培训阶段:对软件产品开发相关的人员(产品经理、项目经理、研发人员等)进行安全培训,培训内容应当贯穿整个...SDL生命周期的各个环节,尤其是对安全意识、安全制度、安全规范、安全评审等的培训讲解 过程阶段:定期评估SDL过程的完备性并对随着新技术的发展和新威胁的引入提出应对措施,使用过程内指标确认过程遵从性,使用发布后指标帮助指导...SDL进行进一步的改进 响应阶段:制定完备的安全响应方案向相关各方提供项目扼要令人信服的指导,同时对响应阶段的所有数据进行存档,通过事后复盘对响应阶段的不足之处进行不断的补充和完善改进 下面是对微软SDL...安全体系建设的第一篇文章主要介绍了软件危机以及引入SDL的目的和SDL的基本流程,后续我们会将SDL的各个环节进行逐一概述,当然也欢迎各位读者一起交流,不足之处还请不吝斧正~
访问控制缺失以及不安全的配置等众多的因素引起的,而导致这样的安全问题发生的根本原因是由于在软件开发生命周期中缺乏对业务安全问题的考虑以及缺少对项目流程的安全控制,因此需要一个安全设计的最佳实践来指导软件项目的安全落地,所以SDL...安全设计checklist应运而生 核心原则 微软的SDL提出了若干核心的安全设计原则: Basic Privacy:基本隐私 Secure Defaults:默认安全 Threat Modeling:...威胁建模 威胁建模是一种分析应用程序威胁的过程和方法,这里的威胁是指恶意用户可能会试图利用各种手段来破坏系统,而我们常说的漏洞则是一个特定的可以被利用的威胁,例如:缓冲区溢出、SQL注入等 威胁建模作为SDL...2005/2008 xp__cmdshell 存储过程默认关闭,默认不开放远程链接 VS 2005/2008 Web Server和SQL Server默认仅本地访问 安全实践 下面是美的金融科技SDL...安全设计发布的"金融科技SDL安全设计Checklist v1.0",内容涵盖了输入验证、输出编码、身份认证、异常处理、会话管理、访问控制、接口调用、权限控制、敏感信息、运行环境、WEB安全防护:
键盘 / 鼠标 ) 传入的事件 , 如 鼠标移动 , 鼠标点击 , 键盘按键 等事件 ; 2、SDL 事件处理步骤 SDL 事件处理步骤 : 首先 , 调用 SDL_Init 函数 , 初始化 SDL...环境 , 设置要开发的子系统 ; // 初始化 SDL 环境 SDL_Init(SDL_INIT_VIDEO); 然后 , 调用 SDL_CreateWindow 函数创建窗口 ; // 创建 SDL_Window...窗口 SDL_Window* window = SDL_CreateWindow( "SDL Event Handling", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED...初始化SDL SDL_Init(SDL_INIT_VIDEO); // 2....初始化SDL SDL_Init(SDL_INIT_VIDEO); // 2.
SDL SDL(Simple DirectMedia Layer)是一套开放源代码的跨平台多媒体开发库,使用C语言写成。...SDL在结构上是将不同操作系统的库再封装成相同的函数,例如SDL在Windows平台上是DirectX的封装,而在使用X11的平台上(包括Linux),SDL则是与Xlib库沟通来输出图像。...虽然SDL本身是使用C语言写成,但是它几乎可以被所有的编程语言所使用,例如:C++、Perl、Python(借由pygame库)、Pascal、Java等等。...SDL_mixer 用于支持额外的音频格式,包括 MP3、OGG、WAV 等。 SDL_ttf 用于 TrueType 字体的渲染。 SDL_rtf 用于简单的 RTF 渲染支持。...SDL_net 用于网络相关的支持。 目前,SDL的最新版本是SDL2,它与SDL1在使用有一些不同,它支持了硬件加速等新的能力,因此我们应学习SDL2的使用。
SDL系列讲解(一) 简介 SDL系列讲解(二) 环境搭建 SDL系列讲解(三) 工具安装 SDL是什么,能干什么,为什么我们要学习它?...SDL系列讲解(四) demo讲解 SDL系列讲解(五) 调试c代码 SDL系列讲解(六) SDL_Activity流程 SDL系列讲解(七) SDL_image教程 前言 讲解完了图片,这节我们来看下怎么显示文字...下载配置SDL_ttf库 打开官网 https://www.libsdl.org/projects/SDL_ttf/,下载库。.../SDL2_ttf 同时在LOCAL_SHARED_LIBRARIES := SDL2 SDL2_image后面加上 SDL2_ttf 测试字库 从网上下载一个中文字库,放置在asserts目录下,...更多详细用法 关注http://sdl.beuc.net/sdl.wiki/SDL_ttf
SDL系列讲解(一) 简介 SDL系列讲解(二) 环境搭建 SDL系列讲解(三) 工具安装 SDL是什么,能干什么,为什么我们要学习它?...SDL系列讲解(四) demo讲解 SDL系列讲解(五) 调试c代码 前言 总是会出其不意,讲解随性一些不好吗? 只讲如何使用,明显不是我的风格,于是乎,近期会开展SDL的框架原理的系列分析。...SDL自己帮我们写了它在Android的适配工作。...这里SDL便实现了一个Activity,来完成Android的主界面的SDL实现。同时因为我们SDL本身使用的是c语言开发的,所以就需要写JNI进行搭桥,来实现JAVA和C直接的调用,数据传递。...找到对应的实现,然后会调用这些c方法,这些方法便是SDL适配的android版本。然后我们在c代码中,进行相应SDL提供的事件监测,回调方法,来进行处理事件,如此便完成了SDL的整个调用过程。
移步: http://blog.csdn.net/a332324956/article/category/1886055 下来,继续我们 的SDL系列讲解 SDL系列讲解(一) 简介 SDL系列讲解(...二) 环境搭建 SDL系列讲解(三) 工具安装 SDL是什么,能干什么,为什么我们要学习它?...SDL系列讲解(四) demo讲解 SDL系列讲解(五) 调试c代码 SDL系列讲解(六) SDL_Activity流程 SDL系列讲解(七) SDL_image教程 SDL系列讲解(八) SDL_ttf...教程 SDL系列讲解(九) 异常退出分析 SDL系列讲解(十) 按键处理流程 SDL_QUIT时序图 看下创建窗口的流程图,我们简单说下过程。...发送消息,最后走入的是SDL_PushEvent方法,这个是SDL向消息队列扔入一个事件的方法。
SDL系列讲解(一) 简介 SDL系列讲解(二) 环境搭建 SDL系列讲解(三) 工具安装 SDL是什么,能干什么,为什么我们要学习它?...SDL系列讲解(四) demo讲解 SDL系列讲解(五) 调试c代码 SDL系列讲解(六) SDL_Activity流程 前言 我们SDL默认支持的,只能打开BMP格式的图片。...下载配置SDL_image库 打开官网http://www.libsdl.org/projects/SDL_image/ 下载这里的 SDL2_image-2.0.1.zip,解压到我们的工程目录jni.../SDL2_image下面 下一级目录结构如下,记得不要嵌套啦。...修改成 LOCAL_SHARED_LIBRARIES := SDL2 SDL2_image 将SDL2_image库加载进来。
SDL 源码下载地址:http://www.libsdl.org/ 或者 hg clone http://hg.libsdl.org/SDL (hg官网下载工具) vscode安装cmake插件编译...主要函数和结构 结构 SDL_Surface内存数据 SDL_Renderer相当于gdi的dc SDL_Texture材质画板 函数 SDL_CreateWindowFrom窗口句柄转SDL_Window...SDL_SetRenderDrawColor设置颜色,SDL_RenderFillRect填充 SDL_CreateWindowFramebuffer帧数据缓冲区,屏幕数据缓存 参考 https://
博客源码下载 : SDL 多线程模型 代码执行效果如下 : 一、SDL 多线程简介 1、SDL 多线程引入 SDL 支持 多线程 编程 , 开发者 可以 创建多个线程 , 来执行不同的任务 , 如开启多个线程同时处理...和 线程其它信息 ; SDL_Thread 结构体定义在 SDL_thread.h 头文件中 ; /* SDL 线程 结构体 , 定义在 SDL_thread.c 中 */ struct SDL_Thread...; typedef struct SDL_Thread SDL_Thread; SDL_Thread 提供了对线程的 基本管理和控制 功能 , 该结构体对象 是 通过 SDL_CreateThread...函数创建的 ; SDL_Thread 结构体 一般 不需要直接访问其内部字段 , 而是通过 SDL 提供的一系列函数来操作线程 , 如 : SDL_CreateThread 函数 创建线程 ; SDL_WaitThread...函数 阻塞等待指定线程结束 ; 二、SDL 多线程相关函数 1、SDL 创建线程 - SDL_CreateThread 函数 SDL_CreateThread 函数 的 作用是 创建 SDL 线程 ,
扩展库 SDL_image SDL扩展库允许你做一些事情,比如加载BMP以外的图像文件,渲染TTF字体,以及播放音乐。您可以设置SDL_image来加载PNG文件,这可以为您节省大量的磁盘空间。...您需要做的第一件事是下载SDL_image头文件和二进制文件。您可以在SDL_image网站[1]上找到它们 ? 在设置好SDL_image之后,我们将介绍如何使用SDL创建加载PNG。...//使用SDL、SDL_image、标准IO和字符串。...对于SDL_ttf,或者SDL_mixer,我们也要做同样的事情。...gWindow = SDL_CreateWindow( "SDL Tutorial", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED
01 — 关于SDL 100问 自从《SDL最初实践》在公众号上发布以来,已经四年多。从那时起,也创建了微信群“SDL专属交流群”,专题交流软件安全相关内容,现如今成员也有242人。...1.1.命名构想 选择SDL、SDLC、S-SDLC中的哪一个加入标题?...思考了许久,因为本身思维比较严谨、尊重原创以及为了简单好记,所以选择了微软提出的SDL(Security Development Lifecycle,安全开发生命周期),弃用S-SDLC(Secure...不过中间踩了好多坑,不仅令人想到磨刀不误砍柴工,生命的精彩在于折腾等经典名句,并以此来激励自己坚持把分享《SDL 100问》这件事做下去。
在做演示之前,非常有必要简单介绍一下相关接口和说明: SDL子系统(SDL将功能分成下列数个子系统): SDL_INIT_TIMER:定时器 SDL_INIT_AUDIO:音频 SDL_INIT_VIDEO...:包含上述所有选项 SDL Window显示:SDL视频显示函数简介: SDL_Init():初始化SDL系统 SDL_CreateWindow():创建窗口SDL_Window SDL_CreateRenderer...():创建渲染器SDL_Renderer SDL_CreateTexture():创建纹理SDL_Texture SDL_UpdateTexture():设置纹理的数据 SDL_RenderCopy()...:将纹理的数据拷贝给渲染器 SDL_RenderPresent():显示 SDL_Delay():工具函数,用于延时 SDL_Quit():退出SDL系统 SDL Windows显示:SDL数据结构简介...\n"); SDL_Window *window = NULL; SDL_Init(SDL_INIT_VIDEO); window = SDL_CreateWindow("SDL
借用鸟哥PPT的宝图 今天PYQ看到一篇文章《SDL已死,应用安全路在何方?》,也就想着来扯谈一下SDL。不做科普,不捧不踩,纯粹扯谈。...很“重”的SDL 实际上,SDL已经挺重的了,这是我个人的感觉。这个重有几个方面: 1、流程重。...要打通这些工具,把工具一个个安排得明明白白,还要确保这些工具能完全支撑覆盖SDL全流程、全要求,很重。 4、责任重。 貌似有了SDL,开发上的安全问题就公认的变成了SDL团队的责任了。...然而,令人尴尬的事实是,SDL团队很多时候只是一个背锅侠,且没有太多容错的余地。爆发的安全问题千奇百怪,SDL也人力有穷尽。...比如,重新审视SDL,将SDL的安全管控集中在安全测试和上线阶段。
===================================================== SDL源代码分析系列文章上市: SDL2源码分析1:初始化(SDL_Init()) SDL2源码分析...2:窗体(SDL_Window) SDL2源码分析3:渲染器(SDL_Renderer) SDL2源码分析4:纹理(SDL_Texture) SDL2源码分析5:更新纹理(SDL_UpdateTexture...()) SDL2源码分析6:拷贝到渲染器(SDL_RenderCopy()) SDL2源码分析7:显示(SDL_RenderPresent()) SDL2源码分析8:视频显示总结 ===========...这篇文章继续分析SDL的源码。 本文分析SDL的渲染器(SDL_Renderer)。 SDL播放视频的代码流程例如以下所看到的。 初始化: SDL_Init(): 初始化SDL。...本文继续分析该流程中的第3个函数SDL_CreateRenderer()。 SDL_Renderer SDL_Renderer结构体定义了一个SDL2中的渲染器。
01 — 写作背景 记得在之前参加面试时,被问到SDL,勉强把其流程稍加解释的给背了出来,面试官一脸不屑的样子记忆犹新。...经过近一年的演变,公司落地版的SDL已稍见雏形,各个环节已基本打通并稳定,期间的各种经验和心得甚为宝贵,于是乎计划着编写这一系列的文章,或许可以在SDL案例缺失的时间里,给同行朋友带来一丝参考与思考。...02 — SDL概况 安全开发生命周期(SDL)即SecurityDevelopment Lifecycle,是微软提出的从安全角度指导软件开发过程的管理模式。...03 — SDL流程 SDL的核心理念就是将安全考虑集成在软件开发的每一个阶段:需求分析、设计、编码、测试和维护。...04 — 我眼里(落地版)的SDL流程 结合实际情况与资源,可以分为这样的七部分: ?
===================================================== SDL源代码分析系列文章上市: SDL2源码分析1:初始化(SDL_Init()) SDL2源码分析...2:窗体(SDL_Window) SDL2源码分析3:渲染器(SDL_Renderer) SDL2源码分析4:纹理(SDL_Texture) SDL2源码分析5:更新纹理(SDL_UpdateTexture...()) SDL2源码分析6:拷贝到渲染器(SDL_RenderCopy()) SDL2源码分析7:显示(SDL_RenderPresent()) SDL2源码分析8:视频显示总结 ===========...初始化: SDL_Init(): 初始化SDL。 SDL_CreateWindow(): 创建窗体(Window)。...SDL_RenderPresent() 函数简单介绍 SDL使用SDL_RenderPresent()显示画面。 SDL_RenderPresent()的原型例如以下。
目前SDL多用于开发游戏、模拟器、媒体播放器等多媒体应用领域。下面主要介绍一下在Windows下搭建SDL2开发环境的过程。...│ SDL_atomic.h │ SDL_audio.h │...这个配置在项目->属性->配置属性->链接器->输入->附加依赖项< 这里: 在这里面加上那三个静态库的名字即可(SDL2.lib、SDL2main.lib、SDL2test.lib)。...(ren, bmp); SDL_FreeSurface(bmp); SDL_RenderClear(ren); SDL_RenderCopy(ren, tex, NULL, NULL); SDL_RenderPresent...(ren); SDL_Delay(2000); SDL_DestroyTexture(tex); SDL_DestroyRenderer(ren); SDL_DestroyWindow(win)
领取专属 10元无门槛券
手把手带您无忧上云