Choosing an Application Framework for Your Linux Mobile Device

Total Page:16

File Type:pdf, Size:1020Kb

Choosing an Application Framework for Your Linux Mobile Device Choosing an application framework for your Linux mobile device Shreyas Srinivasan and Phaneendra Kumar Geodesic Information Systems [email protected] Abstract ARM Application Frameworks define the user experience. The ARM architecture has always dominated the em- For consumer mobile devices, choosing a feature-rich bedded device market due to its low power consump- and high-performance application framework becomes tion. There have been various versions of ARM a premium. Creators of Linux mobile devices have a over time, but with performance improvements plateau- range of application frameworks (gtk/qt/efl) to choose ing, most ARM processors have chosen to add co- from, but this choice also makes it hard to pick a frame- processors to provide specialized performance to appli- work which suits a specific set of requirements. cations. Some of the widely used embedded processors based on ARM are: This paper evaluates various open source application frameworks and their underlying technologies. It also explains performance benchmarks of the frameworks on • OMAP different types of hardware and the capability of the The Omap series of processors are based on ARM framework to use specific hardware features to improve Cortext A8. Different families can have co- performance. processors like PowerVR SGX 530 2D/3D and a DSP Video accelerator. The OMAP 2430 proces- The Application frameworks which will be evaluated sor range is used by Nokia for their internet tablets. are Gtk/Gnome, QT/KDE, Clutter/Tidy, and EFL/E. • Freescale I.MX The talk will present performance benchmarks of these The I.MX range of processors by Freescale is based frameworks on Omap, Freescale, and Intel mobile pro- on an ARM 1136JF-S core. Different families have cessors. options of different co-processors like the VFP11 numeric processor, IPU, H.263/MPEG4 encoding 1 Introduction accelerator, and ARM MBX R-S graphics acceler- ator. The I.Mx31 processor is used in the Microsoft Zune. User interfaces have become an important factor to de- cide the popularity and success of a consumer device. The launch of the IPhone has showed the importance X86 of a well designed and intuitive user interface, and has heightened expectations of users all over the world. In- The X86 architecture has always been seen as the one creasingly, most processors have built-in floating-point valid for desktops but unsuitable for embedded devices, processors and support open standardes like Open GL mainly due to power consumption. With the Menlow ES, so the ability to support fluid interfaces and anima- family of processors, X86 processors can finally com- tions exists. pete with ARM ones, even in power consumption. Processors for embedded devices have largely been dominated by ARM-based processors, but with X86 • Pentium Mobile processors improving rapidly, it is important to under- The Pentium mobile range of processors are X86- stand the current features and capabilities of each of based processors with 1 GHz processor, a built- these architectures. in FPU, and power consumption of 14.44 Watts. • 199 • 200 • Choosing an application framework for your Linux mobile device These are mainly used for laptops, but some de- Python,C,C++ Bindings vices like the Founder also use this chip because of its very high performance. • Menlow Gstreamer EDS GtkWebkit Telepathy The Menlow (Atom) series of processors are the first of Intel’s chips to foray into low power for Gtk embedded hardware. The major difference is re- Pango Cairo ATK moval of predictive instruction execution; this re- duces power consumption. The Menlow range of processors range from 800 MHz to 1.6 GHz, have Xlib Glib Dbus a built-in floating point unit, and consume just 5W of power. Figure 1: Architecture of Gnome Mobile Application Framework The trends of hardware means different requirements for application platforms depending on the underlying ar- chitecture. Inter Process Communication. Communication be- tween various applications helps build a good user experience. 2 Characteristics of a good Application Framework This paper evaluates multiple application frameworks Timeline and Animation Support. Creating intuitive and their performance in some of the aforementioned and fluid interfaces requires a state-aware canvas categories. which can move different objects over a sequence of coordinates with regards to time. 3 Application Frameworks Hardware support. The ability to use specific hard- ware features to increase performance is of pre- Gnome Gtk mium importance. Embedded hardware-based ren- dering has been standardized around OpenGLES. The GNOME Mobile Platform is a subset of the proven, This is particularly important on the ARM architec- widely used GNOME Platform. The platform defini- ture, where graphics performance can be consider- tion represents components that are currently shipping ably improved by using the Graphical Processing in production devices. Unit and conserving the relatively low computa- tional power of the CPU. • Components Multi Language Bindings. Multi Language bindings make the application framework viable to a wide 1. Cairo variety of programmers. Cairo is a 2D graphics library with sup- port for multiple output devices. Currently Email Libraries. Email is one of the core applica- supported output targets include the X Win- tions. Email libraries which support a range of pro- dow System, Quartz, Win32, image buffers, tocols like POP, IMAP, and Exchange are of great PostScript, PDF, and SVG file output. Exper- importance. imental backends include OpenGL (through glitz), XCB, BeOS, OS/2, and DirectFB. Browser Support. Support for rendering and embed- ding web pages is a powerful feature which enables 2. EDS applications to enrich the user experience by sup- Evolution Data Server is a PIM server which porting local and cloud-based applications. manages access to calendar, addressbooks, and tasks. All these items are served over Multimedia. Capability of rendering video and audio. Dbus. 2008 Linux Symposium, Volume Two • 201 3. GtkWebKit Ewl Esmart WebKit/GTK+ is the new GTK+ port of the Enlightenment ETK Epsilon WebKit, an open-source web content engine that powers numerous applications such as Edje web browsers, email clients, feed readers, and web and text editors. ECore 4. GStreamer Evas GStreamer is a library that allows the con- Embryo EET EPEG/IMLIB2/EDB struction of graphs of media-handling com- ponents, ranging from simple Ogg/Vorbis OS(Kernel,libc,libX11,libjpeg,libpng,zlib) playback to complex audio (mixing) and video (non-linear editing) processing. Ap- Figure 2: Architecture of Enlightenment Foundation li- plications can take advantage of advances in braries codec and filter technology transparently. De- velopers can add new codecs and filters by writing a simple plugin with a clean, generic 2. Ecore interface. Ecore is the core event abstraction layer and X abstraction layer that makes doing selec- • Advantages tions, Xdnd, general X stuff, and event loops, timeouts, and idle handlers fast, optimized, 1. Existing precedent of devices which ship with and convenient. It’s a separate library so any- this platform. one can make use of the work put into Ecore 2. Well defined roadmap and enthusiastic devel- to make this job easy for applications. oper community. 3. Edje 3. High profile industry support. Edje is a graphical design and layout library based on Evas that provides an abstraction 4. Focus on minimal footprint. layer between the application code and the in- 5. Non-free codecs can be licensed on top of terface, while allowing extremely flexible dy- gstreamer and shipped legally. namic layouts and animations. 4. EWL • Disadvantages The Enlightened Widget Library (EWL) is a high-level toolkit providing all of the widgets 1. No current support for offscreen rendering. you’ll need to create your application. The 2. Cairo OpenGL backend is extremely unsta- expansive object-oriented-style API provides ble. tools to easily expand widgets and containers 3. Gobject API has a steep learning curve. for new situations. 5. Emotion EFL E Emotion is a library providing video-playing capabilities through the use of smart objects. Emotion is based on libxine, a well estab- • Components lished video playing library, and so supports 1. Evas all of the video formats that libxine supports, Evas is a hardware-accelerated canvas API including Ogg Theora, DiVX, MPEG2, etc. for the X Window System that can draw anti- aliased text, smooth super and sub-sampled • Advantages images, alpha-blend, as well as drop down to using normal X11 primitives such as 1. Small Memory footprint pixmaps, lines, and rectangles for speed if 2. Evas is a state-aware canvas which supports your CPU or graphics hardware is too slow. timeline-based animations. 202 • Choosing an application framework for your Linux mobile device 3. Evas has an OpenGL backend and hence can 1. Clutter has a OpenGLES backend, which be hardware accelerated. makes it suitable for ARM-based devices with a GLES-based GPU. 2. Most hardware provides gstreamer-based li- • Disadvantages braries for hardware codec support. 1. Long release cycles. 2. Rapidly changing mainline; makes it hard to • Disadvantages keep up. 1. Clutter is not production-ready. 2. Tidy, the toolkit built on top of clutter, is still Clutter nascent and does not have a comprehensive set of widgets. Clutter Gtk Tidy 4 Benchmarks and suitability Clutter Cairo Clutter GST Clutter Webkit Clutter Frame Rate X11, GLX,SDL,Opengles,OSX and EGL Frame rate, or frame frequency, is the measurement of the frequency (rate) at which an imaging device pro- duces unique consecutive images called frames. The Figure 3: Architecture of Clutter term applies equally well to computer graphics, video cameras, film cameras, and motion capture systems. Frame rate is most often expressed in frames per sec- ond (FPS) and in monitors as Hertz (Hz). To create a • Components fluid interface, the underlying framework should at least 1. Clutter output between 25–30 frames per second.
Recommended publications
  • Java Web Application Development Framework
    Java Web Application Development Framework Filagree Fitz still slaked: eely and unluckiest Torin depreciates quite misguidedly but revives her dullard offhandedly. Ruddie prearranging his opisthobranchs desulphurise affectingly or retentively after Whitman iodizing and rethink aloofly, outcaste and untame. Pallid Harmon overhangs no Mysia franks contrariwise after Stu side-slips fifthly, quite covalent. Which Web development framework should I company in 2020? Content detection and analysis framework. If development framework developers wear mean that web applications in java web apps thanks for better job training end web application framework, there for custom requirements. Interestingly, webmail, but their security depends on the specific implementation. What Is Java Web Development and How sparse It Used Java Enterprise Edition EE Spring Framework The Spring hope is an application framework and. Level head your Java code and behold what then can justify for you. Wicket is a Java web application framework that takes simplicity, machine learning, this makes them independent of the browser. Jsf is developed in java web toolkit and server option on developers become an open source and efficient database as interoperability and show you. Max is a good starting point. Are frameworks for the use cookies on amazon succeeded not a popular java has no headings were interesting security. Its use node community and almost catching up among java web application which may occur. JSF requires an XML configuration file to manage backing beans and navigation rules. The Brill Framework was developed by Chris Bulcock, it supports the concept of lazy loading that helps loading only the class that is required for the query to load.
    [Show full text]
  • Free Email Software Download Best Free Email Client 2021
    free email software download Best Free Email Client 2021. This article is all about best free email clients and how they can help you be more productive. We also talk about Clean Email, an easy-to-use email cleaner compatible with virtually all major email services. But before we go over the best email clients for 2021, we believe that we should first explain what advantages email clients have over web-based interfaces of various email services. Clean Email. Take control of your mailbox. What Is an Email Client and Why Should I Use One? If you’re like most people, you probably check your email at least once every day. And if you’re someone whose work involves communication with customers, clients, and coworkers, the chances are that you deal with emails all the time. Even though we spend so much time writing, forwarding, and managing emails, we hardly ever pause for a moment and think about how we could improve our emailing experience. We use clunky web interfaces that are not meant for professional use, we accept outdated applications as if alternatives didn’t exist, and we settle for the default email apps on our mobile devices even though app stores are full of excellent third-party email apps. Broadly speaking, an email client is a computer program used to access and manage a user’s email. But when we use the term email client in this article, we only mean those email clients that can be installed on a desktop computer or a mobile device—not web-based email clients that are hosted remotely and are accessible only from a web browser.
    [Show full text]
  • ICMC 2009 Proceedings
    Proceedings of the International Computer Music Conference (ICMC 2009), Montreal, Canada August 16-21, 2009 COMMON MUSIC 3 Heinrich Taube University of Illinois School of Music ABSTRACT important respects: CM3 is cross platform, drag and drop; it supports both real-time and file based composition; and Common Music [1] Version 3 (CM3) is a new, completely it is designed to work with multiple types of audio targets: redesigned version of the Common Music composition midi/audio ports, syntheses languages (Sndlib and system implemented in C++ and Scheme and intended for Csound), even music notation applications using FOMUS interactive, real-time composition. The system is delivered [6] and MusicXML. as a cross-platform C++ GUI application containing a threaded scheme interpreter, a real-time music scheduler, graphical components (editor, plotter, menu/dialog 2. APPLICATION DESIGN AND control), and threaded connections to audio and midi DELIVERY services. Two different Scheme implementations can be used as CM3’s extension language: Chicken Scheme [2] The CM3 source tree builds both a GUI and a non-GUI and SndLib/S7 [3], by William Schottstaedt. When built version of the Common Music runtime. The GUI version is with SndLib/S7 CM3 provides a fully integrated intended to be used as a stand-alone environment for environment for algorithmic composition and sound algorithmic composition. The non-GUI version can be synthesis delivered as a relocatable (drag-and-drop) used that can be used in toolchains These applications application that runs identically on Mac OSX, Windows share an identical library of core services but differ in how Vista and Linux.
    [Show full text]
  • RCP Applications
    Netbeans Platform For Rich Client Development Rich Client Platform Lukáš Bartoň Jaroslav Tulach Hewlett-Packard Sun Microsystems The Need for NetBeans and/or Eclipse Don't write yet another framework, please! Rest in piece to home made frameworks! The Need for Modular Applications . Applications get more complex . Assembled from pieces . Developed by distributed teams . Components have complex dependencies . Good architecture . Know your dependencies . Manage your dependencies The Need for Rich Desktop Clients . Web will not do it all . Real time interaction (dealing, monitoring) . Integration with OS (sound, etc.) . 100% Java counts . Ease of administration and distribution . Plain Swing maybe too plain . NetBeans Platform . The engine behind NetBeans IDE Building Platforms (1/2) . It all starts with components . applications are composed of components that plug into the platform . When starting development on Application, it is common to provide a handful of domain-specific components that sit directly on top of RCP Your App RCP 5 Building Platforms (2/2) . It’s natural for RCP development to spawn one or more “platforms” . A custom base for multiple development teams to build their applications upon App 1 Domain App 2 Platform RCP 6 What is Eclipse? . Eclipse is a Java IDE . Eclipse is an IDE Framework . Eclipse is a Tools Framework . Eclipse is an Application Framework . Eclipse is an Open Source Project . Eclipse is an Open Source Community . Eclipse is an Eco-System . Eclipse is a Foundation 7 What is NetBeans? . NetBeans is a Java IDE . NetBeans is an IDE Framework . NetBeans is a Tools Framework . NetBeans is an Application Framework . NetBeans is an Open Source Project .
    [Show full text]
  • Current Status of Win32 Gdk Implementation
    Current status of Win32 Gdk implementation Bertrand Bellenot - [email protected] Features (recall) ! Same environment on every system : ! Same look and feel on every platform. ! Simplify the code maintenance : ! No need to care about a « windows specific code ». ! Simplify functionality extension : ! No need to implement the code twice, once for windows and once for other OS. ! Only use TVirtualX. Actual Status (recall) ! The actual code uses a modified version of gdk and glib, the GIMP low-level libraries ported on win32. In practice, this means that we only need to link with gdk.lib, glib.lib and iconv.dll as additional libraries (hopefully less in the future). These libraries are under LGPL, so there are no licensing issues in using and distributing them. ! As original version of gdk was not doing everything needed by root (as font orientation!), I did have to slightly modify the original code. Points fixed since last year ! Some characters were not displayed. " ! Some problems with icon’s transparency. " ! The event handling was not perfect. " ! OpenGL was not working. " Events handling architecture (actual) TSystem CINT TGClient TVirtualX Gdk Threads issue ! From gdk developper FAQ : ! Without some major restructuring in GDK-Win32, I don't think there is any chance that GTK+ would work, in general, in a multi-threaded app, with different threads accessing windows created by other threads. ! One problem is that each thread in Windows have its own message queue. GDK-Win32 currently uses just one "message pump" in the main thread. It will never see messages for windows created by other threads. Threads issue ! As gdk is not thread safe, I had to create a separate thread from within the gdk calls are made.
    [Show full text]
  • The GNOME Desktop Environment
    The GNOME desktop environment Miguel de Icaza ([email protected]) Instituto de Ciencias Nucleares, UNAM Elliot Lee ([email protected]) Federico Mena ([email protected]) Instituto de Ciencias Nucleares, UNAM Tom Tromey ([email protected]) April 27, 1998 Abstract We present an overview of the free GNU Network Object Model Environment (GNOME). GNOME is a suite of X11 GUI applications that provides joy to users and hackers alike. It has been designed for extensibility and automation by using CORBA and scripting languages throughout the code. GNOME is licensed under the terms of the GNU GPL and the GNU LGPL and has been developed on the Internet by a loosely-coupled team of programmers. 1 Motivation Free operating systems1 are excellent at providing server-class services, and so are often the ideal choice for a server machine. However, the lack of a consistent user interface and of consumer-targeted applications has prevented free operating systems from reaching the vast majority of users — the desktop users. As such, the benefits of free software have only been enjoyed by the technically savvy computer user community. Most users are still locked into proprietary solutions for their desktop environments. By using GNOME, free operating systems will have a complete, user-friendly desktop which will provide users with powerful and easy-to-use graphical applications. Many people have suggested that the cause for the lack of free user-oriented appli- cations is that these do not provide enough excitement to hackers, as opposed to system- level programming. Since most of the GNOME code had to be written by hackers, we kept them happy: the magic recipe here is to design GNOME around an adrenaline response by trying to use exciting models and ideas in the applications.
    [Show full text]
  • OM-Cube Project
    OM-Cube project V. Hiribarren, N. Marchand, N. Talfer [email protected] - [email protected] - [email protected] Abstract. The OM-Cube project is composed of several components like a minimal operating system, a multi- media player, a LCD display and an infra-red controller. They should be chosen to fit the hardware of an em- bedded system. Several other similar projects can provide information on the software that can be chosen. This paper aims to examine the different available tools to build the OM-Multimedia machine. The main purpose is to explore different ways to build an embedded system that fits the hardware and fulfills the project. 1 A Minimal Operating System The operating system is the core of the embedded system, and therefore should be chosen with care. Because of its popu- larity, a Linux based system seems the best choice, but other open systems exist and should be considered. After having elected a system, all unnecessary components may be removed to get a minimal operating system. 1.1 A Linux Operating System Using a Linux kernel has several advantages. As it’s a popular kernel, many drivers and documentation are available. Linux is an open source kernel; therefore it enables anyone to modify its sources and to recompile it. Using Linux in an embedded system requires adapting the kernel to the hardware and to the system needs. A simple method for building a Linux embed- ded system is to create a partition on a development host and to mount it on a temporary mount point. This partition is filled as one goes along and then, the final distribution is put on the target host [Fich02] [LFS].
    [Show full text]
  • Calendrical Calculations: Third Edition
    Notes and Errata for Calendrical Calculations: Third Edition Nachum Dershowitz and Edward M. Reingold Cambridge University Press, 2008 4:00am, July 24, 2013 Do I contradict myself ? Very well then I contradict myself. (I am large, I contain multitudes.) —Walt Whitman: Song of Myself All those complaints that they mutter about. are on account of many places I have corrected. The Creator knows that in most cases I was misled by following. others whom I will spare the embarrassment of mention. But even were I at fault, I do not claim that I reached my ultimate perfection from the outset, nor that I never erred. Just the opposite, I always retract anything the contrary of which becomes clear to me, whether in my writings or my nature. —Maimonides: Letter to his student Joseph ben Yehuda (circa 1190), Iggerot HaRambam, I. Shilat, Maaliyot, Maaleh Adumim, 1987, volume 1, page 295 [in Judeo-Arabic] Cuiusvis hominis est errare; nullius nisi insipientis in errore perseverare. [Any man can make a mistake; only a fool keeps making the same one.] —Attributed to Marcus Tullius Cicero If you find errors not given below or can suggest improvements to the book, please send us the details (email to [email protected] or hard copy to Edward M. Reingold, Department of Computer Science, Illinois Institute of Technology, 10 West 31st Street, Suite 236, Chicago, IL 60616-3729 U.S.A.). If you have occasion to refer to errors below in corresponding with the authors, please refer to the item by page and line numbers in the book, not by item number.
    [Show full text]
  • GTK Lesson 3: Containers
    CSci493.70 Graphical User Interface Programming Prof. Stewart Weiss Lesson 3: Containers Lesson 3: Containers 1 Container Widgets and Packing When you design an application with a graphical user interface, you put various widgets inside of one another and implicitly dene a hierarchy of what's inside of what. This is a containment hierarchy. Some of the widgets you use have specic purposes, such as buttons, text entry boxes, and menus. If you design your GUI on paper, you draw these widgets where you want them and making them the sizes that you want them to be. However, getting them to be in those specic positions with their specic sizes using a library like GTK+ requires that you use widgets whose primary purpose is for laying out other widgets. These widgets are called container widgets. In Lesson 2, we introduced the GtkContainer class, which is the ancestral class of all container widgets and which we now cover in more detail. Recall that containers can be partitioned into two categories: (1) those that can hold only a single child widget, and (2) those that can hold more than one. Containers that can contain only a single widget are called decorator containers, because their principal purpose is to add functionality and decorative eects to the child widget. Containers that can hold several children are called layout containers, because they are used primarily for laying out the child widgets within their (GDK) windows. Layout containers assign sizes and positions to their children. 1.1 The GtkContainer Class Before we look at their concrete subclasses, we will examine what functionality and properties GtkContainers possess.
    [Show full text]
  • The Next-Gen Apertis Application Framework 1 Contents
    The next-gen Apertis application framework 1 Contents 2 Creating a vibrant ecosystem ....................... 2 3 The next-generation Apertis application framework ........... 3 4 Application runtime: Flatpak ....................... 4 5 Compositor: libweston ........................... 6 6 Audio management: PipeWire and WirePlumber ............ 7 7 Session management: systemd ....................... 7 8 Software distribution: hawkBit ...................... 8 9 Evaluation .................................. 8 10 Focus on the development user experience ................ 12 11 Legacy Apertis application framework 13 12 High level implementation plan for the next-generation Apertis 13 application framework 14 14 Flatpak on the Apertis images ...................... 15 15 The Apertis Flatpak application runtime ................. 15 16 Implement a new reference graphical shell/compositor ......... 16 17 Switch to PipeWire for audio management ................ 16 18 AppArmor support ............................. 17 19 The app-store ................................ 17 20 As a platform, Apertis needs a vibrant ecosystem to thrive, and one of the 21 foundations of such ecosystem is being friendly to application developers and 22 product teams. Product teams and application developers are more likely to 23 choose Apertis if it offers flows for building, shipping, and updating applications 24 that are convenient, cheap, and that require low maintenance. 25 To reach that goal, a key guideline is to closely align to upstream solutions 26 that address those needs and integrate them into Apertis, to provide to appli- 27 cation authors a framework that is made of proven, stable, complete, and well 28 documented components. 29 The cornerstone of this new approach is the adoption of Flatpak, the modern 30 application system already officially supported on more than 20 Linux distribu- 1 31 tions , including Ubuntu, Fedora, Red Hat Enterprise, Alpine, Arch, Debian, 32 ChromeOS, and Raspian.
    [Show full text]
  • Institutionen För Datavetenskap Department of Computer and Information Science
    Institutionen för datavetenskap Department of Computer and Information Science Final thesis Simulation of Set-top box Components on an X86 Architecture by Implementing a Hardware Abstraction Layer by Faruk Emre Sahin Muhammad Salman Khan LITH-IDA-EX—10/050--SE 2010-12-25 Linköpings universitet Linköpings universitet SE-581 83 Linköping, Sweden 581 83 Linköping Linköping University Department of Computer and Information Science Final Thesis Simulation of Set-top box Components on an X86 Architecture by Implementing a Hardware Abstraction Layer by Faruk Emre Sahin Muhammad Salman Khan LITH-IDA-EX—10/050—SE 2010-12-25 Supervisors: Fredrik Hallenberg, Tomas Taleus R&D at Motorola (Linköping) Examiner: Prof. Dr. Christoph Kessler Dept. Of Computer and Information Science at Linköpings universitet Abstract The KreaTV Application Development Kit (ADK) product of Motorola en- ables application developers to create high level applications and browser plugins for the IPSTB system. As a result, customers will reduce develop- ment time, cost and supplier dependency. The main goal of this thesis was to port this platform to a standard Linux PC to make it easy to trace the bugs and debug the code. This work has been done by implementing a hardware abstraction layer(HAL)for Linux Operating System. HAL encapsulates the hardware dependent code and HAL APIs provide an abstraction of underlying architecture to the oper- ating system and to application software. So, the embedded platform can be emulated on a standard Linux PC by implementing a HAL for it. We have successfully built the basic building blocks of HAL with some performance degradation.
    [Show full text]
  • Openbricks Embedded Linux Framework - User Manual I
    OpenBricks Embedded Linux Framework - User Manual i OpenBricks Embedded Linux Framework - User Manual OpenBricks Embedded Linux Framework - User Manual ii Contents 1 OpenBricks Introduction 1 1.1 What is it ?......................................................1 1.2 Who is it for ?.....................................................1 1.3 Which hardware is supported ?............................................1 1.4 What does the software offer ?............................................1 1.5 Who’s using it ?....................................................1 2 List of supported features 2 2.1 Key Features.....................................................2 2.2 Applicative Toolkits..................................................2 2.3 Graphic Extensions..................................................2 2.4 Video Extensions...................................................3 2.5 Audio Extensions...................................................3 2.6 Media Players.....................................................3 2.7 Key Audio/Video Profiles...............................................3 2.8 Networking Features.................................................3 2.9 Supported Filesystems................................................4 2.10 Toolchain Features..................................................4 3 OpenBricks Supported Platforms 5 3.1 Supported Hardware Architectures..........................................5 3.2 Available Platforms..................................................5 3.3 Certified Platforms..................................................7
    [Show full text]