DirectFB 综述

目标
  • 最小的内存占用
  • 最大可能的硬件加速
  • 支持高级图形操作,如 multiple alpha blending mode
  • 无内核修改
  • 无依赖库 (除了 libc)
  • 满足 MHP 的需要
图形操作

DirectFB 支持以下图形功能,可硬件实现(若chipset driver 支持),也可软件实现

  • 矩形填充/绘制
  • 三角形填充绘制
  • 画线
  • 内存拷贝 (blitting)
  • 基于 alpha 通道的混合
  • 基于某个 alpha 元素的混合
  • 支持 Porter/Duff 定义的所有混合
  • colorizing
  • source color keying
  • Destination color keying
窗口系统
  • 支持透明/半透明窗口
  • ARGB surface
资源管理
  • 显示层和输入设备可以被锁定 (用于游戏)
  • 对显示层、窗口和其它 surface 进行了抽象,便于全屏和窗口之间的切换
图形驱动

使用可动态加载的驱动模块,实现硬件加速,目前支持的芯片有:

  • Matrox Mystique/Millenium, G100, G200, G400/G450, G550
  • Via CLE266
  • ATI mach64/Rage Pro series
  • ATI Rage 128
  • ATI Radeon
  • 3dfx Voodoo3/4/5/Banshee
  • igs CyberPro 5xxx
  • S3 Savage 3/4 series
  • NeoMagic 220/2230/2360/2380
  • nVidia TNT/GeForce series
  • SiS 315
  • Intel i810
  • NSC Geode

其它芯片也可以工作,但不支持硬件加速。

输入驱动

支持下面的输入设备:

  • standard keyboards
  • serial and PS/2 mice
  • joysticks
  • devices using the linux input layer
  • infrared remote controls (using lirc)
  • iPAQ touchscreen
  • ucb 1x00 touchscreen
  • Microtouch touchscreen
  • Sony PI Jogdial
图象装载

支持如下图象格式:

  • JPEG (通过 libjpeg 实现)
  • PNG (libpng2)
  • GIF (内部实现)
  • 其它各种格式 (通过Imlib2实现)
视频播放

支持如下格式:

  • video4linux (/dev/video)
  • mpeg1/2 (using libmpeg3)
  • AVI (using avifile)
  • MOV (using OpenQuicktime)
  • macromedia (using libflash)
字体渲染

提供反锯齿文本绘制,支持如下字体:

  • DirectFB bitmap font
  • TrueType (using FreeType2)
体系结构
directfb architecture
directfb architecture
访问图形硬件
  • 通过 framebuffer 来访问图形硬件,一些特殊的芯片也可以在 VESA framebuffer 下工作
  • 可在用户空间实现硬件加速
访问输入设备

使用 linux kernel 提供的标准设备接口


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值