higfxback.github.io

Welcome to HiGFXback with the Linux Framebuffer graphics backend!

Contents

Getting started

Components running on Linux Framebuffer graphics backend just use the Linux Framebuffer graphics driver interface (/dev/fb0). As they directly access the memory of the display device, there is no compositing windowing system.

If the current graphics backend used on HiGFXback is not Linux Framebuffer, switch on it with startfb command.

Components running on Linux Framebuffer graphics backend directly handle keyboard and mouse input events with one of the following input driver interface available on HiGFXback:

But depending on the input peripheral, it’s possible to use specific input driver interfaces if supported by the component running on the Linux Framebuffer graphics backend.

Note that input driver interfaces used for mouse input events are also accessible through the gpm (General Purpose Mouse) mouse server.

Fbpad

When starting on Linux Framebuffer graphics backend, fbpad terminal emulator is displayed. System informations about Linux Framebuffer settings can be get with fbset.

Back to Top

fb-test-app, fbmark

Programs running on Linux Framebuffer graphics backend are available as examples, tests or benchmarks.

Back to Top

showkey, input-events

Programs are available for testing keyboard input interfaces used by components running on Linux Framebuffer graphics backend.

Back to Top

test-mouse, input-events

Programs are available for testing mouse input interfaces used by components running on Linux Framebuffer graphics backend.

Back to Top

Vulkan rendering

For display rendering with Linux Framebuffer graphics backend, Vulkan implementation in libvulkan.so library (loading library from Vulkan-Loader) and its ICD (Installable Client Driver) relies on FBDev WSI interface.

On HiGFXback, FBDev WSI interfaces (Window System Integration for Linux Framebuffer) are used with one of the following ICD selected with VK_ICD_FILENAMES environment variable:

But depending on the platform, specific ICD can be used.

Vulkan-Tools, Vulkan-Examples, vkcube2 and yagears2 programs are available as examples, tests or benchmarks.

Back to Top

OpenGL rendering

For display rendering with Linux Framebuffer graphics backend, OpenGL implementation in libGL.so library, but also OpenGL ES 1.1 CM implementation in libGLESv1_CM.so library and OpenGL ES 2.0 implementation in libGLESv2.so library, rely on GLFBDev or EGL for Linux Framebuffer interfaces.

Loading libraries can be used:

GLFBDev

On HiGFXback, GLFBDev interfaces (OpenGL extension for Linux Framebuffer) are used with one of the following implementation selected with alternatives-GL command:

But depending on the platform, specific implementation can be used.

mesa-demos and yagears programs are available as examples, tests or benchmarks.

Back to Top

EGL for Linux Framebuffer

On HiGFXback, EGL for Linux Framebuffer interfaces are used with one of the following implementation selected with alternatives-GL command:

But depending on the platform, specific implementation can be used.

mesa-demos and yagears programs are available as examples, tests or benchmarks.

Back to Top

Drawing libraries

Cairo

On HiGFXback, Cairo interfaces for Linux Framebuffer graphics backend are provided by libcairo.so library.

cairo-demos programs are available as examples, tests or benchmarks.

Back to Top

Evas

On HiGFXback, Evas interfaces for Linux Framebuffer graphics backend are provided by libevas.so library.

expedite program is available as examples, tests or benchmarks.

Back to Top

Multimedia frameworks

FFmpeg

On HiGFXback, FFmpeg interfaces for Linux Framebuffer graphics backend are provided by libavformat.so, libavcodec.so, libswscale.so libraries and rely on libavdevice.so library for output.

ffmpeg program is available as example.

Back to Top

GStreamer

On HiGFXback, GStreamer interfaces for Linux Framebuffer graphics backend are provided by:

and rely on libgstfbdevsink.so plugin for output.

gst-launch-0.10 program is available as example on GStreamer 0.10.

gst-launch-1.0 program is available as example on GStreamer 1.

Back to Top

Xine

On HiGFXback, Xine interfaces for Linux Framebuffer graphics backend are provided by libxine.so library and rely on xineplug_vo_out_fb.so plugin for output.

xine-ui program is available as example.

Back to Top

VLC

On HiGFXback, VLC interfaces for Linux Framebuffer graphics backend are provided by libvlc.so library and rely on libfb_plugin.so plugin for output.

vlc program is available as example.

Back to Top

Tools

Fbi, FIM

Fbpdf

Fbff, MPlayer

Back to Top

Graphics abstraction layers

GLUT

On HiGFXback, GLUT (openGL Utility Toolkit) interfaces running on Linux Framebuffer graphics backend are provided by one of the following implementation selected with alternatives-glut command:

For OpenGL rendering, note that EGL for Linux Framebuffer interfaces can also be used internally by GLUT implementations instead of GLFBDev interfaces.

mesa-demos and yagears programs are available as examples, tests or benchmarks.

Back to Top

SDL

On HiGFXback, SDL (Simple Directmedia Layer) interfaces running on Linux Framebuffer graphics backend are provided by libSDL.so library.

For OpenGL rendering, note that EGL for Linux Framebuffer interfaces can also be used internally by SDL instead of GLFBDev interfaces.

SDL-test and yagears programs are available as examples, tests or benchmarks.

Back to Top

User interface toolkits

GTK+

Graphical user interfaces can rely on GTK+ (Gimp ToolKit) using the port for Linux Framebuffer graphics backend. Web rendering can then rely on WebKitGTK+, a port of the WebKit browser engine for GTK+.

On HiGFXback, GTK+ interfaces running on Linux Framebuffer graphics backend are provided by libgtk-2.0.so and libgtkgl-2.0.so libraries.

For OpenGL rendering, note that EGL for Linux Framebuffer interfaces can also be used internally by GTK+ instead of GLFBDev interfaces.

gtk-demo, gtk-tests, gtkperf and yagears programs are available as examples, tests or benchmarks.

On HiGFXback, WebKitGTK+ interfaces for GTK+ with Linux Framebuffer graphics backend are provided by libwebkitgtk-2.0.so library.

For WebGL rendering, note that EGL for Linux Framebuffer interfaces can also be used instead of GLFBDev interfaces.

GtkLauncher program is available as example.

Back to Top

Qt

Graphical user interfaces can rely on Qt (Q toolKit) using the port for Linux Framebuffer graphics backend. Web rendering can then rely on QtWebKit, a port of the WebKit browser engine for Qt.

On HiGFXback, Qt interfaces running on Linux Framebuffer graphics backend are provided by libQtGui.so and libQtOpenGL.so libraries.

For OpenGL rendering, note that EGL for Linux Framebuffer interfaces can also be used internally by Qt instead of GLFBDev interfaces.

qtdemo, qt-examples, qtperf and yagears programs are available as examples, tests or benchmarks.

On HiGFXback, QtWebKit interfaces for Qt with Linux Framebuffer graphics backend are provided by libQtWebKit.so library.

For WebGL rendering, note that EGL for Linux Framebuffer interfaces can also be used instead of GLFBDev interfaces.

QtTestBrowser program is available as example.

Back to Top

EFL

Graphical user interfaces can rely on EFL (Enlightenment Foundation Libraries) with Elementary using the port for Linux Framebuffer graphics backend.

On HiGFXback, EFL with Elementary interfaces running on Linux Framebuffer graphics backend are provided by libelementary.so library.

For OpenGL rendering, note that EGL for Linux Framebuffer interfaces can also be used internally by EFL with Elementary instead of GLFBDev interfaces.

elementary-test, elementary-examples and yagears programs are available as examples, tests or benchmarks.

Back to Top

Applications

   
ffplay multimedia player

   
qemu machine emulator

   
midori web browser

   
qupzilla web browser

   
BillardGL, gtktetris, pinball games

Back to Top