frame buffer

29
Frame Buffer Dir ect Dir ect F B New embedded graphic standard

Upload: prue

Post on 11-Jan-2016

75 views

Category:

Documents


3 download

DESCRIPTION

D irect. D irect. FB. Frame Buffer. New embedded graphic standard. 정의. Embedded 장치의 그래픽을 지원 - 소프트웨어 라이브러리 Frame Buffer 장치의 상단에 구현된 그래픽 API 그래픽 및 입력 장치 처리 , 윈도 시스템을 통합. 정의. 가벼움 : 디스크 공간과 CPU 를 사용하는 X server 의 실행이 필요 없음 사용자의 인터페이스가 매우 적어짐 : Desktop 처럼 보여질 필요가 없음. 정의. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Frame   Buffer

Frame Buffer

Di-rectDi-rectFBNew embedded

graphic standard

Page 2: Frame   Buffer

정의

• Embedded 장치의 그래픽을 지원 - 소프트웨어 라이브러리

• Frame Buffer 장치의 상단에 구현된 그래픽 API

• 그래픽 및 입력 장치 처리 , 윈도 시스템을 통합 .

Page 3: Frame   Buffer

정의

• 가벼움 : 디스크 공간과 CPU 를 사용하는 X server 의 실행이 필요 없음

• 사용자의 인터페이스가 매우 적어짐 : Desktop 처럼 보여질 필요가 없음

Page 4: Frame   Buffer

정의

기존의 x win-dow

비디오 메모리나 다른 채널에 직접 그릴 수 없음

DirectFB

FrameBuffer 에 직접렌더링 작업이 가능

Page 5: Frame   Buffer

Graphic op-eration 1

• Rectangle filling/drawing

• Triangle filling/drawing

• Line drawing

• (Stretched) blitting

• Blending with an alphachannel (a.k.a. texture alpha)

Page 6: Frame   Buffer

Graphic op-eration 2

• Blending with a constant alpha blend fac-tor (a.k.a. alpha modulation)

• Nine different blending functions respec-tively for source and destination, so all Porter/Duff rules are supported

• Colorizing (a.k.a. color modulation)

• Source color keying

• Destination color keying

Page 7: Frame   Buffer

Windowsing system

•translucent windows

•transparency

Page 8: Frame   Buffer

Windowsing system

Page 9: Frame   Buffer

Resource Man-agement

•Resource management for video memory

•Exclusive access

•Abstraction

Page 10: Frame   Buffer

Graphic Drivers • 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 se-ries

• SiS 315

• Intel i810

• NSC Geode

Page 11: Frame   Buffer

Input Drivers • standard keyboards

• serial and PS/2 mice

• joysticks

• devices using the linux input layer

• infrared remote con-trols (using lirc)

• iPAQ touchscreen

• ucb 1x00 touch-screen

• Microtouch touch-screen

• Sony PI Jogdial

Page 12: Frame   Buffer

Image Loading

• JPEG (using libjpeg)

• PNG (using libpng2)

• GIF (integrated, no library re-quired)

• various other image formats (using Imlib2)

Page 13: Frame   Buffer

Video Playback

• video4linux (/dev/video)

• mpeg1/2 (using libmpeg3)

• AVI (using avifile)

• MOV (using OpenQuicktime)

• macromedia flash (using libflash)

Page 14: Frame   Buffer

Font Rendering

anti aliased text drawing

• DirectFB bitmap font

• TrueType (using FreeType2)

Page 15: Frame   Buffer

Font Rendering

anti aliased text drawing

• DirectFB bitmap font

• TrueType (using FreeType2)

Page 16: Frame   Buffer

Font Rendering

Page 17: Frame   Buffer

Frame-buffer

Frame-buffer

Accel-eratorAccel-erator

Timing & Mode Registers

Timing & Mode Registers

Framebuffer Driver

Framebuffer Driver

DirectFBDirectFB Chipset driver

Chipset driver

DirectFB Ap-plication

DirectFB Ap-plication

사용자 공간

커널 공간

하드웨어 공간

Page 18: Frame   Buffer

Frame-buffer

Frame-buffer

Accel-eratorAccel-erator

Timing & Mode Registers

Timing & Mode Registers

Framebuffer Driver

Framebuffer Driver

DirectFBDirectFB Chipset driver

Chipset driver

DirectFB Ap-plication

DirectFB Ap-plication

사용자 공간

커널 공간

하드웨어 공간

directFB 가 작동하기

위해서 필요

Page 19: Frame   Buffer

Frame-buffer

Frame-buffer

Accel-eratorAccel-erator

Timing & Mode Registers

Timing & Mode Registers

Framebuffer Driver

Framebuffer Driver

DirectFBDirectFB Chipset driver

Chipset driver

DirectFB Ap-plication

DirectFB Ap-plication

사용자 공간

커널 공간

하드웨어 공간

비디오 모드 세팅

Page 20: Frame   Buffer

Frame-buffer

Frame-buffer

Accel-eratorAccel-erator

Timing & Mode Registers

Timing & Mode Registers

Framebuffer Driver

Framebuffer Driver

DirectFBDirectFB Chipset driver

Chipset driver

DirectFB Ap-plication

DirectFB Ap-plication

사용자 공간

커널 공간

하드웨어 공간

메모리 맵핑 ,

창 변경

Page 21: Frame   Buffer

Frame-buffer

Frame-buffer

Accel-eratorAccel-erator

Timing & Mode Registers

Timing & Mode Registers

Framebuffer Driver

Framebuffer Driver

DirectFBDirectFB Chipset driver

Chipset driver

DirectFB Ap-plication

DirectFB Ap-plication

사용자 공간

커널 공간

하드웨어 공간

가속기를 켬

Page 22: Frame   Buffer

Frame buf-fer

• 그래픽 가속기 사용 여부에 관계 없이

Frame buffer driver 를 사용하는 경우

- setting the video mode- changing of the viewport of the frame-buffer- memory mapping of the cards the framebuffer

Page 23: Frame   Buffer

Frame buf-fer

• DirectFB 가 Card 를 지원하고 , 리눅스 커널 내에 chipset 에 대한 framebuffer driver 가 있을 때 frmebuffer 장치를 사용하는 경우

- memory mapping of the cards mem-ory mapped io ports- Turning off framebuffer driver’s inter-nal acceleration

Page 24: Frame   Buffer

Important terms

• Blitting

• Surface

• SubSurface

• Layer

• Window / Windowstack

Page 25: Frame   Buffer

Layerwindow

sur-faceSub sur-

face

Page 26: Frame   Buffer

Laye

rwindow1

sur-face

window2

sur-face

window3

sur-face

Page 27: Frame   Buffer

Layer2

window

sur-face

Layer1

win-dow

surface

Page 28: Frame   Buffer

Direct API • Interface 를 사용하는 구조• C structure :Function Pointer

• e.g) IDirectFBSurface

Page 29: Frame   Buffer