首页
学习
活动
专区
工具
TVP
发布

Linux音视频(SDL与YUV)

拓展: SDL(Simple DirectMedia Layer)是一个跨平台的底层开发库,提供操作诸如音频、键盘、鼠标、游戏杆以及显卡等硬件的方法,被很多多媒体播放器、模拟器和流行游戏所使用,SDL支持...Windows、MacOS、Linux、iOS以及Android,也就是说你目所能及的几乎所有平台它都能运行,并且SDL是开源的,完全由C语言编写,可以在C/C++以及众多主流编程语言中被使用。...使用SDL来显示YUV数据的大概步骤是这样的: 第一步,初始化SDL视频子系统并定义YUVOverlay: SDL_Init(SDL_INIT_VIDEO|SDL_INIT_AUDIO|SDL_INIT_TIMER..., SDL_YUY2_OVERLAY, screen); 第二步,将YUV数据拷贝到YUVOverlay中(需加锁): SDL_LockYUVOverlay...,显示: SDL_DisplayYUVOverlay(bmp, &rect); 当然,有时候YUV数据(上面的变量yuvdata)的各个分量跟SDL的定义方式不同,需要调换次序,总体而言大概如下图所示:

1.6K40
您找到你想要的搜索结果了吗?
是的
没有找到

SDL实践指南】SDL基本介绍

SDL简介 SDL(Security Development Lifecycle,安全开发生命周期)是由微软提出的一种从安全角度指导软件开发的管理模式,它主要通过在传统的软件开发生命周期的各个阶段穿插一系列的安全活动来保障和提升产品自身的安全能力...微软标准 微软在提出SDL的同时也给予了一套实践参考标准: 微软SDL参考标准可以进一步细化为以下三个核心: 培训阶段:对软件产品开发相关的人员(产品经理、项目经理、研发人员等)进行安全培训,培训内容应当贯穿整个...SDL生命周期的各个环节,尤其是对安全意识、安全制度、安全规范、安全评审等的培训讲解 过程阶段:定期评估SDL过程的完备性并对随着新技术的发展和新威胁的引入提出应对措施,使用过程内指标确认过程遵从性,使用发布后指标帮助指导...SDL进行进一步的改进 响应阶段:制定完备的安全响应方案向相关各方提供项目扼要令人信服的指导,同时对响应阶段的所有数据进行存档,通过事后复盘对响应阶段的不足之处进行不断的补充和完善改进 下面是对微软SDL...安全体系建设的第一篇文章主要介绍了软件危机以及引入SDL的目的和SDL的基本流程,后续我们会将SDL的各个环节进行逐一概述,当然也欢迎各位读者一起交流,不足之处还请不吝斧正~

1.4K20

(译)SDL编程入门(1)Hello SDL

这就是SDL所做的事情。它将Windows/Linux/Mac/Android/iOS等工具包装起来,让你可以用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创建一个窗口。

2.4K40

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安全防护:

1.2K20

SDL简介

SDL SDL(Simple DirectMedia Layer)是一套开放源代码的跨平台多媒体开发库,使用C语言写成。...SDL提供了数种控制图像、声音、输出入的函数,让开发者只要用相同或是相似的代码就可以开发出跨多个平台(Linux、Windows、Mac OS X等)的应用软件。...SDL在结构上是将不同操作系统的库再封装成相同的函数,例如SDL在Windows平台上是DirectX的封装,而在使用X11的平台上(包括Linux),SDL则是与Xlib库沟通来输出图像。...SDL_mixer 用于支持额外的音频格式,包括 MP3、OGG、WAV 等。 SDL_ttf 用于 TrueType 字体的渲染。 SDL_rtf 用于简单的 RTF 渲染支持。...SDL_net 用于网络相关的支持。 目前,SDL的最新版本是SDL2,它与SDL1在使用有一些不同,它支持了硬件加速等新的能力,因此我们应学习SDL2的使用。

2.2K30

SDL系列讲解(六) SDL_Activity流程

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的整个调用过程。

1.3K100

SDL系列讲解(十一) SDL_QUIT流程

移步: 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向消息队列扔入一个事件的方法。

1.2K50

SDL系列讲解(七) SDL_image教程

SDL系列讲解(一) 简介 SDL系列讲解(二) 环境搭建 SDL系列讲解(三) 工具安装 SDL是什么,能干什么,为什么我们要学习它?...SDL系列讲解(四) demo讲解 SDL系列讲解(五) 调试c代码 SDL系列讲解(六) SDL_Activity流程 前言 我们SDL默认支持的,只能打开BMP格式的图片。...修改成 LOCAL_SHARED_LIBRARIES := SDL2 SDL2_image 将SDL2_image库加载进来。...我们来到这个文件,修改这个包含为: #include 改为: #include <arm-linux-androideabi/ machine/cpu-features.h...因为这里查找头文件是在ndk下面的ndk-bundle\sysroot\usr\include目录进行查找,所以我们新的ndk包,发现移动到arm-linux-androideabi目录下了,所以要加这个

1.9K90

SDL实战(一)

,让开发者只要用相同或者是相似的代码就可以开发出跨多个平台,比如说Linux、Windows、Mac Os 等操作系统平台;它的应用领域主要包括:游戏开发,模拟器、媒体播放器等多媒体应用领域。...在做演示之前,非常有必要简单介绍一下相关接口和说明: 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数据结构简介

96010

扯谈SDL(一)

借用鸟哥PPT的宝图 今天PYQ看到一篇文章《SDL已死,应用安全路在何方?》,也就想着来扯谈一下SDL。不做科普,不捧不踩,纯粹扯谈。...很“重”的SDL 实际上,SDL已经挺重的了,这是我个人的感觉。这个重有几个方面: 1、流程重。...要打通这些工具,把工具一个个安排得明明白白,还要确保这些工具能完全支撑覆盖SDL全流程、全要求,很重。 4、责任重。 貌似有了SDL,开发上的安全问题就公认的变成了SDL团队的责任了。...然而,令人尴尬的事实是,SDL团队很多时候只是一个背锅侠,且没有太多容错的余地。爆发的安全问题千奇百怪,SDL也人力有穷尽。...比如,重新审视SDL,将SDL的安全管控集中在安全测试和上线阶段。

73510

SDL2来源分析3:渲染(SDL_Renderer)

===================================================== 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中的渲染器。

2.5K20

SDL最初实践】开篇

01 — 写作背景 记得在之前参加面试时,被问到SDL,勉强把其流程稍加解释的给背了出来,面试官一脸不屑的样子记忆犹新。...经过近一年的演变,公司落地版的SDL已稍见雏形,各个环节已基本打通并稳定,期间的各种经验和心得甚为宝贵,于是乎计划着编写这一系列的文章,或许可以在SDL案例缺失的时间里,给同行朋友带来一丝参考与思考。...02 — SDL概况 安全开发生命周期(SDL)即SecurityDevelopment Lifecycle,是微软提出的从安全角度指导软件开发过程的管理模式。...03 — SDL流程 SDL的核心理念就是将安全考虑集成在软件开发的每一个阶段:需求分析、设计、编码、测试和维护。...04 — 我眼里(落地版)的SDL流程 结合实际情况与资源,可以分为这样的七部分: ?

1.6K20
领券