SlideShare une entreprise Scribd logo
1  sur  26
Télécharger pour lire hors ligne
GeeXboX Enna: Embedded Media Center




            GeeXboX Enna:
         Embedded Media Center

                 Benjamin Zores


                   12th April 2010
               CELF ELC, San Francisco
GeeXboX Enna: Embedded Media Center
The GeeXboX sub-project(s)


   The GeeXboX team focus on multimedia oriented projects:

       GeeXboX itself, an embedded multimedia Linux distribution,
        for both standalone Set Top Boxes and HTPC.
       Enna, EFL-based low resources Media Center interface.
       uShare, a free UPnP A/V and DLNA Media Server.
       libdlna, reference DLNA protocol OSS implementation.
       libplayer, a multimedia A/V abstraction layer framework.
       libvalhalla, a tiny media information scanning library.
       A few (yet) minor other projects ...
GeeXboX Enna: Embedded Media Center




             GeeXboX
          Embedded Multimedia Linux Distribution

                 http://www.geexbox.org/
GeeXboX Enna: Embedded Media Center
Embedded Multimedia Distribution


   Major Live-CD multimedia distribution since 2003.
   Designed both for full blown HTPC and embedded devices.

   Turns your computer into a full-featured Set-Top-Box:
        Play any kind of multimedia content (audio, video, photos …)
        From various locations: Disk, NFS, Samba, WebRadios, UPnP/DLNA …
        Supports CDDA, DVD, Analog TV and DVB playback.
        Fully controlable through LIRC-compatible remote.


   Ready-to-be-used by end-user: minimalistic configuration.
   Available as a LiveCD, OS for USB key, multi-boot on HDD ...
GeeXboX Enna: Embedded Media Center
What's under the hood


   Bare-metal Linux distribution, completely built from scratch:
        Not related/forked from any other distribution.
        Based on its own shell-based cross-compilation framework,
         (similar to Buildroot, OpenEmbedded, OpenWRT …)
        Supported architectures:
         ARM, PowerPC (32 and 64 bits) and x86 (32 and 64 bits)
        Supports GLIBC, eGLIBC and uClibc.
        Up to 350 packages with build dependencies management.

   System footprint: 8-64 MB, depending on build options.
   Low RAM usage: 128 MB typical, 256 MB for LiveCD.
   Distribution goal: ready to be used, booted as fast as possible.
GeeXboX Enna: Embedded Media Center
Cross-Compilation Framework
GeeXboX Enna: Embedded Media Center
Customizable Build Flavours


   Versatile toolchain and build flags:
        Can generate generic code to support once and every PC.
        Or be optimized to your exact device's SoC instruction set.

   100% free or using proprietary:
        Packages: SGX OpenGL libraries, MAME ...
        Drivers: nVidia X.Org driver, MADwifi ...
        Firmwares: for WiFi and DVB chipsets …

   Optional support for WiFi, TV/DVB and Networking services.
GeeXboX Enna: Embedded Media Center
Runtime Features


   Select between video stacks:
        Console/framebuffer only mode with VIDIX enhancements.
        Bleeding-edge X.Org with Kernel Mode Settings (KMS) support.


   System init through UpStart:
        Modularized and highly configurable.
        Event-based with parallelized services.


   Video Decoding capabilities:
        Soft: optimized for multi-core H.264 and VC-1 decoding.
        Hard: support VDPAU, soon to add VA-API, CrystalHD, and OpenMAX.
GeeXboX Enna: Embedded Media Center




                  Enna
              EFL Media Center Interface

               http://enna.geexbox.org/
GeeXboX Enna: Embedded Media Center
Overview


   Enna is an embedded Media Center application.
   Meant to run on low-resources embedded devices
    (phones, STB) as well as HTPC.
   Small footprint:
    250 kB binary only + theme data.
   Written in pure C.
   GUI relies on Enlightenment
    Foundation Libraries (EFL).
   Multimedia playback
    capabilities and metadata
    information retrieval rely on
    GeeXboX libplayer and
    libvalhalla projects.
GeeXboX Enna: Embedded Media Center
Main Features


   Main modules are:
       Music Player
       Movies & TV Shows Player
       Photos Viewer
       Weather forecast
       Online eBook Reader from various online content providers.
       Digital TV through VDR (VideoDisk Recorder) frontend
       Games Aggregator (e.g MAME, Emulators ...)
GeeXboX Enna: Embedded Media Center
User Centric


   Designed with embedded considerations in mind (low footprint).
   Meant to be user convenient and plug-and-play.
   Controllable through keyboard, mouse,
    touchscreen and remote.
   Modularized and skinnable.
   Available for:
        GeeXboX v2.x.
        GNU/Linux distributions
         (Ubuntu 10.04 LTS ...)
        Mac OSX (in progress)
        Windows (in progress)
GeeXboX Enna: Embedded Media Center
Supported Protocols

   Dynamic media detection through:
       mtab
       HAL
       UDEV
                                    Media Browsing protocols:

                                            Local disks
                                            CDDA
                                            DVD
                                            Media Database
                                            SHOUTcast
                                            Podcasts
                                            UPnP A/V and DLNA
                                            Bluray, some day ...
GeeXboX: An Introduction to Enna Media Center
Software Architecture


   Built on Enlightenment Foundation Libraries (EFL) and
    GeeXboX multimedia libraries (libplayer and libvalhalla).
   Enna is presentation-level only:
    provides many abstraction layers.
GeeXboX Enna: Embedded Media Center




                     EFL
           Enlightenment Foundation Libraries
             http://www.enlightenment.org/
GeeXboX Enna: Embedded Media Center
Enlightenment Foundation Libraries


   EFL are ”a whole suite of libraries to help you create beautiful
    user interfaces with much less work than doing it the old
    fashioned way and fighting with traditional toolkits”.

        Eina provides optimized
         data types and useful tools.
        Evas is the canvas display layer.
        Ecore is a tiny event loop library.
        Edje is a graphical design and
         layout library which allows extremely
         flexible dynamic layouts and animations.
        Elementary is a widget set.
GeeXboX Enna: Embedded Media Center




               libplayer
        Multimedia A/V Abstraction Layer Framework

                http://libplayer.geexbox.org/
GeeXboX Enna: Embedded Media Center
libplayer


   libplayer is a multimedia A/V abstraction layer framework.
   Provides a generic API to control various multimedia players:
        MPlayer, through FIFO-based slave-mode.
        Xine
        VLC (requires to-be-released v1.1 API)
        GStreamer (preliminary, yet experimental)
   Fully thread-safe.
   Player controls and notification are offloaded to frontend.
   Supports most of currently available A/V renderers:
        Audio: ALSA, OSS, PulseAudio
        Video: Framebuffer, OpenGL, SDL, VDPAU, X11, XVideo
GeeXboX Enna: Embedded Media Center
libplayer Architecture
GeeXboX Enna: Embedded Media Center




            libvalhalla
         Tiny Media Information Scanning Library

              http://libvalhalla.geexbox.org/
GeeXboX Enna: Embedded Media Center
libvalhalla


   libvalhalla is a tiny media scanner library:
        High-performances multi-threaded implementation.
        Supports both background and on-demand operations.
        Stores information in SQLite database.
        Parses A/V stream properties through FFmpeg.
        Features many on-line grabbers for automatic retrieval of
         covers, lyrics, synopsis, list of actors …

   Currently supported grabbers:
        Offline: EXIF, FFmpeg and NFO.
        Online : Allocine, Amazon, ChartLyrics, ImDB, Last.fm,
         LyricWiki, TheMovieDB, TheTVDB and TVRage.
GeeXboX Enna: Embedded Media Center
libvalhalla Architecture
GeeXboX Enna: Embedded Media Center




 Status & Roadmap
                Pinky: "Gee, Brain, what do you want to do tonight ?"
  The Brain: "The same thing we do every night, Pinky—try to take over the world !"
GeeXboX Enna: Embedded Media Center
Status


   Enna first release (0.4.0) was made on 2nd January 2010.
        First users feedback was quite impressive.
        Mature code, part of most famous distros a few weeks later.
        Will be key part of GeeXboX 2.0 release (alpha2 released in March).

   Still many competitors:
        XBMC / Boxee, Moovida, Meedio, Win MCE …
        But not targeting embedded device field

   Port to ARM-based devices in progress:
    Beagleboard, Nokia N900 mobile phone, TouchBook …

   Next step/targets: ISP STB, connected TVs ...
GeeXboX Enna: Embedded Media Center
Expected features


   Seamless TV support through VDR skin.
   Additional online content connections:
    Picasa, Flickr, YouTube browsing ...
   Provide Video On Demand (VOD):
    Apple Trailers, Amazon.com, Netflix ...
   Instant Messaging (through Telepathy framework).
   VoIP Telephony, Video Conference and TelePresence.
   Get use of more and more hardware accelerators:
        Additional ARM VFP and NEON optimizations.
        OpenMAX DSP access for video playback
        OpenGL|ES 3D GPU Acceleration
        Flash 10 decoder
GeeXboX Enna: Embedded Media Center
That's all folks ...




                               Thanks
                              http://www.geexbox.org/

Contenu connexe

Tendances

Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)IJERD Editor
 
Linux – an introduction
Linux – an introductionLinux – an introduction
Linux – an introductionWingston
 
Hillel kobrovski Linux security overview for ciso
Hillel kobrovski   Linux security overview for cisoHillel kobrovski   Linux security overview for ciso
Hillel kobrovski Linux security overview for cisoHillel Kobrovski
 
Introduction to linux
Introduction to linuxIntroduction to linux
Introduction to linuxplarsen67
 
Operating systems linux
Operating systems linuxOperating systems linux
Operating systems linuxwilliam_morg
 
An Introduction to Linux
An Introduction to LinuxAn Introduction to Linux
An Introduction to Linuxanandvaidya
 
ELCE 2011 - BZ - Embedded Linux Optimization Techniques - How Not To Be Slow
ELCE 2011 - BZ - Embedded Linux Optimization Techniques - How Not To Be SlowELCE 2011 - BZ - Embedded Linux Optimization Techniques - How Not To Be Slow
ELCE 2011 - BZ - Embedded Linux Optimization Techniques - How Not To Be SlowBenjamin Zores
 
Qt Experiences on NXP's Connetcted TV Platforms
Qt Experiences on NXP's Connetcted TV PlatformsQt Experiences on NXP's Connetcted TV Platforms
Qt Experiences on NXP's Connetcted TV Platformsaccount inactive
 
08 android multimedia_framework_overview
08 android multimedia_framework_overview08 android multimedia_framework_overview
08 android multimedia_framework_overviewArjun Reddy
 
Linux Seminar for Beginners
Linux Seminar for BeginnersLinux Seminar for Beginners
Linux Seminar for BeginnersNAILBITER
 
Pearce Barry Resume
Pearce Barry ResumePearce Barry Resume
Pearce Barry ResumePearce Barry
 
Presentation on HP ProLiant value add tools on Linux
Presentation on HP ProLiant value add tools on LinuxPresentation on HP ProLiant value add tools on Linux
Presentation on HP ProLiant value add tools on LinuxBruno Cornec
 
Introduction to linux ppt
Introduction to linux pptIntroduction to linux ppt
Introduction to linux pptOmi Vichare
 
Introduction To Opensource And GNU/Linux
Introduction To Opensource And GNU/LinuxIntroduction To Opensource And GNU/Linux
Introduction To Opensource And GNU/LinuxSheila Eiffert
 

Tendances (20)

Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)
 
Linux – an introduction
Linux – an introductionLinux – an introduction
Linux – an introduction
 
Hillel kobrovski Linux security overview for ciso
Hillel kobrovski   Linux security overview for cisoHillel kobrovski   Linux security overview for ciso
Hillel kobrovski Linux security overview for ciso
 
Introduction to linux
Introduction to linuxIntroduction to linux
Introduction to linux
 
linux introduction
linux introductionlinux introduction
linux introduction
 
Operating systems linux
Operating systems linuxOperating systems linux
Operating systems linux
 
An Introduction to Linux
An Introduction to LinuxAn Introduction to Linux
An Introduction to Linux
 
ELCE 2011 - BZ - Embedded Linux Optimization Techniques - How Not To Be Slow
ELCE 2011 - BZ - Embedded Linux Optimization Techniques - How Not To Be SlowELCE 2011 - BZ - Embedded Linux Optimization Techniques - How Not To Be Slow
ELCE 2011 - BZ - Embedded Linux Optimization Techniques - How Not To Be Slow
 
Qt Experiences on NXP's Connetcted TV Platforms
Qt Experiences on NXP's Connetcted TV PlatformsQt Experiences on NXP's Connetcted TV Platforms
Qt Experiences on NXP's Connetcted TV Platforms
 
08 android multimedia_framework_overview
08 android multimedia_framework_overview08 android multimedia_framework_overview
08 android multimedia_framework_overview
 
Linux Introduction
Linux IntroductionLinux Introduction
Linux Introduction
 
Linux Seminar for Beginners
Linux Seminar for BeginnersLinux Seminar for Beginners
Linux Seminar for Beginners
 
Pearce Barry Resume
Pearce Barry ResumePearce Barry Resume
Pearce Barry Resume
 
ICIT2013-Keynote-Speech-In-Bali
ICIT2013-Keynote-Speech-In-BaliICIT2013-Keynote-Speech-In-Bali
ICIT2013-Keynote-Speech-In-Bali
 
Presentation on HP ProLiant value add tools on Linux
Presentation on HP ProLiant value add tools on LinuxPresentation on HP ProLiant value add tools on Linux
Presentation on HP ProLiant value add tools on Linux
 
Linux
LinuxLinux
Linux
 
Linux introduction Class 02
Linux introduction Class 02Linux introduction Class 02
Linux introduction Class 02
 
Introduction to linux ppt
Introduction to linux pptIntroduction to linux ppt
Introduction to linux ppt
 
Foss History
Foss HistoryFoss History
Foss History
 
Introduction To Opensource And GNU/Linux
Introduction To Opensource And GNU/LinuxIntroduction To Opensource And GNU/Linux
Introduction To Opensource And GNU/Linux
 

En vedette

ABS 2012 - Android Device Porting Walkthrough
ABS 2012 - Android Device Porting WalkthroughABS 2012 - Android Device Porting Walkthrough
ABS 2012 - Android Device Porting WalkthroughBenjamin Zores
 
Introduction to OpenBricks: an Embedded Linux Framework
Introduction to OpenBricks: an Embedded Linux FrameworkIntroduction to OpenBricks: an Embedded Linux Framework
Introduction to OpenBricks: an Embedded Linux FrameworkBenjamin Zores
 
Finans Sektöründe Verimli Yazılımcı Olabilmek
Finans Sektöründe Verimli Yazılımcı OlabilmekFinans Sektöründe Verimli Yazılımcı Olabilmek
Finans Sektöründe Verimli Yazılımcı OlabilmekBurak Selim Şenyurt
 
Bir .Net Geliştiricisinin Ruby ile İmtihanı
Bir .Net Geliştiricisinin Ruby ile İmtihanıBir .Net Geliştiricisinin Ruby ile İmtihanı
Bir .Net Geliştiricisinin Ruby ile İmtihanıBurak Selim Şenyurt
 
CloudOpen 2014 - Extending Cloud Automation, When OpenStack Meets Ansible
CloudOpen 2014 - Extending Cloud Automation, When OpenStack Meets AnsibleCloudOpen 2014 - Extending Cloud Automation, When OpenStack Meets Ansible
CloudOpen 2014 - Extending Cloud Automation, When OpenStack Meets AnsibleBenjamin Zores
 
ABS 2014 - Android Kit Kat Internals
ABS 2014 - Android Kit Kat InternalsABS 2014 - Android Kit Kat Internals
ABS 2014 - Android Kit Kat InternalsBenjamin Zores
 
Linux Sürücü Geliştirme (Linux Device Driver Development)
Linux Sürücü Geliştirme (Linux Device Driver Development)Linux Sürücü Geliştirme (Linux Device Driver Development)
Linux Sürücü Geliştirme (Linux Device Driver Development)kyasar
 
Design Of A Usb Device Driver (Overview)
Design Of A Usb Device Driver (Overview)Design Of A Usb Device Driver (Overview)
Design Of A Usb Device Driver (Overview)allankliu
 

En vedette (20)

ABS 2012 - Android Device Porting Walkthrough
ABS 2012 - Android Device Porting WalkthroughABS 2012 - Android Device Porting Walkthrough
ABS 2012 - Android Device Porting Walkthrough
 
Ready to Rock
Ready to RockReady to Rock
Ready to Rock
 
Kariyerini Çiz
Kariyerini ÇizKariyerini Çiz
Kariyerini Çiz
 
Introduction to OpenBricks: an Embedded Linux Framework
Introduction to OpenBricks: an Embedded Linux FrameworkIntroduction to OpenBricks: an Embedded Linux Framework
Introduction to OpenBricks: an Embedded Linux Framework
 
Finans Sektöründe Verimli Yazılımcı Olabilmek
Finans Sektöründe Verimli Yazılımcı OlabilmekFinans Sektöründe Verimli Yazılımcı Olabilmek
Finans Sektöründe Verimli Yazılımcı Olabilmek
 
Bir .Net Geliştiricisinin Ruby ile İmtihanı
Bir .Net Geliştiricisinin Ruby ile İmtihanıBir .Net Geliştiricisinin Ruby ile İmtihanı
Bir .Net Geliştiricisinin Ruby ile İmtihanı
 
CloudOpen 2014 - Extending Cloud Automation, When OpenStack Meets Ansible
CloudOpen 2014 - Extending Cloud Automation, When OpenStack Meets AnsibleCloudOpen 2014 - Extending Cloud Automation, When OpenStack Meets Ansible
CloudOpen 2014 - Extending Cloud Automation, When OpenStack Meets Ansible
 
ABS 2014 - Android Kit Kat Internals
ABS 2014 - Android Kit Kat InternalsABS 2014 - Android Kit Kat Internals
ABS 2014 - Android Kit Kat Internals
 
Linux Sürücü Geliştirme (Linux Device Driver Development)
Linux Sürücü Geliştirme (Linux Device Driver Development)Linux Sürücü Geliştirme (Linux Device Driver Development)
Linux Sürücü Geliştirme (Linux Device Driver Development)
 
SOA Gerçekleri
SOA GerçekleriSOA Gerçekleri
SOA Gerçekleri
 
Design Of A Usb Device Driver (Overview)
Design Of A Usb Device Driver (Overview)Design Of A Usb Device Driver (Overview)
Design Of A Usb Device Driver (Overview)
 
BusyBox for Embedded Linux
BusyBox for Embedded LinuxBusyBox for Embedded Linux
BusyBox for Embedded Linux
 
File systems for Embedded Linux
File systems for Embedded LinuxFile systems for Embedded Linux
File systems for Embedded Linux
 
Embedded Linux - Building toolchain
Embedded Linux - Building toolchainEmbedded Linux - Building toolchain
Embedded Linux - Building toolchain
 
Embedded Linux Kernel - Build your custom kernel
Embedded Linux Kernel - Build your custom kernelEmbedded Linux Kernel - Build your custom kernel
Embedded Linux Kernel - Build your custom kernel
 
Linux systems - Getting started with setting up and embedded platform
Linux systems - Getting started with setting up and embedded platformLinux systems - Getting started with setting up and embedded platform
Linux systems - Getting started with setting up and embedded platform
 
Embedded Android : System Development - Part III
Embedded Android : System Development - Part IIIEmbedded Android : System Development - Part III
Embedded Android : System Development - Part III
 
Embedded Android : System Development - Part IV
Embedded Android : System Development - Part IVEmbedded Android : System Development - Part IV
Embedded Android : System Development - Part IV
 
Data Structures & Algorithm design using C
Data Structures & Algorithm design using C Data Structures & Algorithm design using C
Data Structures & Algorithm design using C
 
Embedded Android : System Development - Part I
Embedded Android : System Development - Part IEmbedded Android : System Development - Part I
Embedded Android : System Development - Part I
 

Similaire à ELC 2010 - GeeXboX Enna: Embedded Media Center

Embedded Linux Multimedia
Embedded Linux MultimediaEmbedded Linux Multimedia
Embedded Linux MultimediaCaglar Dursun
 
Kerja Kursus ICT(open source)
Kerja Kursus ICT(open source)Kerja Kursus ICT(open source)
Kerja Kursus ICT(open source)Zul Azmi
 
Graphical libraries
Graphical librariesGraphical libraries
Graphical librariesguestbd40369
 
A Tour of Open Source on the Mainframe
A Tour of Open Source on the MainframeA Tour of Open Source on the Mainframe
A Tour of Open Source on the MainframeAll Things Open
 
Sound systems on linux
Sound systems on linuxSound systems on linux
Sound systems on linuxDeepak KARDA
 
Rapid IoT Prototyping with Tizen on Raspberry Pi
Rapid IoT Prototyping with Tizen on Raspberry PiRapid IoT Prototyping with Tizen on Raspberry Pi
Rapid IoT Prototyping with Tizen on Raspberry PiLeon Anavi
 
Linux gaming landscape
Linux gaming landscapeLinux gaming landscape
Linux gaming landscapeRené Ribaud
 
Raspberry Pi introduction
Raspberry Pi introductionRaspberry Pi introduction
Raspberry Pi introductionLotfi Messaoudi
 
Fusioninventory project FOSDEM 2011
Fusioninventory project FOSDEM 2011Fusioninventory project FOSDEM 2011
Fusioninventory project FOSDEM 2011Gonéri Le Bouder
 
20040927-Commons-Riddle.ppt
20040927-Commons-Riddle.ppt20040927-Commons-Riddle.ppt
20040927-Commons-Riddle.pptVideoguy
 
5.Arne_Nowak_Digital_Archiving_Pilots.pdf
5.Arne_Nowak_Digital_Archiving_Pilots.pdf5.Arne_Nowak_Digital_Archiving_Pilots.pdf
5.Arne_Nowak_Digital_Archiving_Pilots.pdfssuser7dc8771
 
Fall Premieres: Media Frameworks in iOS 11, macOS 10.13, and tvOS 11 (CocoaCo...
Fall Premieres: Media Frameworks in iOS 11, macOS 10.13, and tvOS 11 (CocoaCo...Fall Premieres: Media Frameworks in iOS 11, macOS 10.13, and tvOS 11 (CocoaCo...
Fall Premieres: Media Frameworks in iOS 11, macOS 10.13, and tvOS 11 (CocoaCo...Chris Adamson
 
Linux Information
Linux InformationLinux Information
Linux InformationRahul Pola
 

Similaire à ELC 2010 - GeeXboX Enna: Embedded Media Center (20)

Embedded Linux Multimedia
Embedded Linux MultimediaEmbedded Linux Multimedia
Embedded Linux Multimedia
 
Kerja Kursus ICT(open source)
Kerja Kursus ICT(open source)Kerja Kursus ICT(open source)
Kerja Kursus ICT(open source)
 
Video Drivers
Video DriversVideo Drivers
Video Drivers
 
Graphical libraries
Graphical librariesGraphical libraries
Graphical libraries
 
A Tour of Open Source on the Mainframe
A Tour of Open Source on the MainframeA Tour of Open Source on the Mainframe
A Tour of Open Source on the Mainframe
 
welcome to linux
welcome to linuxwelcome to linux
welcome to linux
 
Sound systems on linux
Sound systems on linuxSound systems on linux
Sound systems on linux
 
Rapid IoT Prototyping with Tizen on Raspberry Pi
Rapid IoT Prototyping with Tizen on Raspberry PiRapid IoT Prototyping with Tizen on Raspberry Pi
Rapid IoT Prototyping with Tizen on Raspberry Pi
 
Fedora Linux
Fedora LinuxFedora Linux
Fedora Linux
 
Linux
Linux Linux
Linux
 
Linux gaming landscape
Linux gaming landscapeLinux gaming landscape
Linux gaming landscape
 
Raspberry Pi introduction
Raspberry Pi introductionRaspberry Pi introduction
Raspberry Pi introduction
 
Fusioninventory project FOSDEM 2011
Fusioninventory project FOSDEM 2011Fusioninventory project FOSDEM 2011
Fusioninventory project FOSDEM 2011
 
Linux Intro
Linux   IntroLinux   Intro
Linux Intro
 
FFMPEG TOOLS
FFMPEG TOOLSFFMPEG TOOLS
FFMPEG TOOLS
 
20040927-Commons-Riddle.ppt
20040927-Commons-Riddle.ppt20040927-Commons-Riddle.ppt
20040927-Commons-Riddle.ppt
 
5.Arne_Nowak_Digital_Archiving_Pilots.pdf
5.Arne_Nowak_Digital_Archiving_Pilots.pdf5.Arne_Nowak_Digital_Archiving_Pilots.pdf
5.Arne_Nowak_Digital_Archiving_Pilots.pdf
 
Linux Presentation
Linux PresentationLinux Presentation
Linux Presentation
 
Fall Premieres: Media Frameworks in iOS 11, macOS 10.13, and tvOS 11 (CocoaCo...
Fall Premieres: Media Frameworks in iOS 11, macOS 10.13, and tvOS 11 (CocoaCo...Fall Premieres: Media Frameworks in iOS 11, macOS 10.13, and tvOS 11 (CocoaCo...
Fall Premieres: Media Frameworks in iOS 11, macOS 10.13, and tvOS 11 (CocoaCo...
 
Linux Information
Linux InformationLinux Information
Linux Information
 

Plus de Benjamin Zores

ABS 2014 - The Growth of Android in Embedded Systems
ABS 2014 - The Growth of Android in Embedded SystemsABS 2014 - The Growth of Android in Embedded Systems
ABS 2014 - The Growth of Android in Embedded SystemsBenjamin Zores
 
Droidcon 2013 france - The Growth of Android in Embedded Systems
Droidcon 2013 france - The Growth of Android in Embedded SystemsDroidcon 2013 france - The Growth of Android in Embedded Systems
Droidcon 2013 france - The Growth of Android in Embedded SystemsBenjamin Zores
 
Droidcon 2013 France - Android Platform Anatomy
Droidcon 2013 France - Android Platform AnatomyDroidcon 2013 France - Android Platform Anatomy
Droidcon 2013 France - Android Platform AnatomyBenjamin Zores
 
ABS 2013: Dive into Android Networking - Adding Ethernet Connectivity
ABS 2013: Dive into Android Networking - Adding Ethernet ConnectivityABS 2013: Dive into Android Networking - Adding Ethernet Connectivity
ABS 2013: Dive into Android Networking - Adding Ethernet ConnectivityBenjamin Zores
 
ABS 2013: Android Jelly Bean Device Porting Walkthrough
ABS 2013: Android Jelly Bean Device Porting WalkthroughABS 2013: Android Jelly Bean Device Porting Walkthrough
ABS 2013: Android Jelly Bean Device Porting WalkthroughBenjamin Zores
 
ELCE 2012 - Dive into Android Networking: Adding Ethernet Connectivity
ELCE 2012 - Dive into Android Networking: Adding Ethernet ConnectivityELCE 2012 - Dive into Android Networking: Adding Ethernet Connectivity
ELCE 2012 - Dive into Android Networking: Adding Ethernet ConnectivityBenjamin Zores
 
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux DevicesELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux DevicesBenjamin Zores
 

Plus de Benjamin Zores (7)

ABS 2014 - The Growth of Android in Embedded Systems
ABS 2014 - The Growth of Android in Embedded SystemsABS 2014 - The Growth of Android in Embedded Systems
ABS 2014 - The Growth of Android in Embedded Systems
 
Droidcon 2013 france - The Growth of Android in Embedded Systems
Droidcon 2013 france - The Growth of Android in Embedded SystemsDroidcon 2013 france - The Growth of Android in Embedded Systems
Droidcon 2013 france - The Growth of Android in Embedded Systems
 
Droidcon 2013 France - Android Platform Anatomy
Droidcon 2013 France - Android Platform AnatomyDroidcon 2013 France - Android Platform Anatomy
Droidcon 2013 France - Android Platform Anatomy
 
ABS 2013: Dive into Android Networking - Adding Ethernet Connectivity
ABS 2013: Dive into Android Networking - Adding Ethernet ConnectivityABS 2013: Dive into Android Networking - Adding Ethernet Connectivity
ABS 2013: Dive into Android Networking - Adding Ethernet Connectivity
 
ABS 2013: Android Jelly Bean Device Porting Walkthrough
ABS 2013: Android Jelly Bean Device Porting WalkthroughABS 2013: Android Jelly Bean Device Porting Walkthrough
ABS 2013: Android Jelly Bean Device Porting Walkthrough
 
ELCE 2012 - Dive into Android Networking: Adding Ethernet Connectivity
ELCE 2012 - Dive into Android Networking: Adding Ethernet ConnectivityELCE 2012 - Dive into Android Networking: Adding Ethernet Connectivity
ELCE 2012 - Dive into Android Networking: Adding Ethernet Connectivity
 
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux DevicesELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
ELCE 2010 - State Of Multimedia In 2010 Embedded Linux Devices
 

Dernier

The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 

Dernier (20)

The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 

ELC 2010 - GeeXboX Enna: Embedded Media Center

  • 1. GeeXboX Enna: Embedded Media Center GeeXboX Enna: Embedded Media Center Benjamin Zores 12th April 2010 CELF ELC, San Francisco
  • 2. GeeXboX Enna: Embedded Media Center The GeeXboX sub-project(s)  The GeeXboX team focus on multimedia oriented projects:  GeeXboX itself, an embedded multimedia Linux distribution, for both standalone Set Top Boxes and HTPC.  Enna, EFL-based low resources Media Center interface.  uShare, a free UPnP A/V and DLNA Media Server.  libdlna, reference DLNA protocol OSS implementation.  libplayer, a multimedia A/V abstraction layer framework.  libvalhalla, a tiny media information scanning library.  A few (yet) minor other projects ...
  • 3. GeeXboX Enna: Embedded Media Center GeeXboX Embedded Multimedia Linux Distribution http://www.geexbox.org/
  • 4. GeeXboX Enna: Embedded Media Center Embedded Multimedia Distribution  Major Live-CD multimedia distribution since 2003.  Designed both for full blown HTPC and embedded devices.  Turns your computer into a full-featured Set-Top-Box:  Play any kind of multimedia content (audio, video, photos …)  From various locations: Disk, NFS, Samba, WebRadios, UPnP/DLNA …  Supports CDDA, DVD, Analog TV and DVB playback.  Fully controlable through LIRC-compatible remote.  Ready-to-be-used by end-user: minimalistic configuration.  Available as a LiveCD, OS for USB key, multi-boot on HDD ...
  • 5. GeeXboX Enna: Embedded Media Center What's under the hood  Bare-metal Linux distribution, completely built from scratch:  Not related/forked from any other distribution.  Based on its own shell-based cross-compilation framework, (similar to Buildroot, OpenEmbedded, OpenWRT …)  Supported architectures: ARM, PowerPC (32 and 64 bits) and x86 (32 and 64 bits)  Supports GLIBC, eGLIBC and uClibc.  Up to 350 packages with build dependencies management.  System footprint: 8-64 MB, depending on build options.  Low RAM usage: 128 MB typical, 256 MB for LiveCD.  Distribution goal: ready to be used, booted as fast as possible.
  • 6. GeeXboX Enna: Embedded Media Center Cross-Compilation Framework
  • 7. GeeXboX Enna: Embedded Media Center Customizable Build Flavours  Versatile toolchain and build flags:  Can generate generic code to support once and every PC.  Or be optimized to your exact device's SoC instruction set.  100% free or using proprietary:  Packages: SGX OpenGL libraries, MAME ...  Drivers: nVidia X.Org driver, MADwifi ...  Firmwares: for WiFi and DVB chipsets …  Optional support for WiFi, TV/DVB and Networking services.
  • 8. GeeXboX Enna: Embedded Media Center Runtime Features  Select between video stacks:  Console/framebuffer only mode with VIDIX enhancements.  Bleeding-edge X.Org with Kernel Mode Settings (KMS) support.  System init through UpStart:  Modularized and highly configurable.  Event-based with parallelized services.  Video Decoding capabilities:  Soft: optimized for multi-core H.264 and VC-1 decoding.  Hard: support VDPAU, soon to add VA-API, CrystalHD, and OpenMAX.
  • 9. GeeXboX Enna: Embedded Media Center Enna EFL Media Center Interface http://enna.geexbox.org/
  • 10. GeeXboX Enna: Embedded Media Center Overview  Enna is an embedded Media Center application.  Meant to run on low-resources embedded devices (phones, STB) as well as HTPC.  Small footprint: 250 kB binary only + theme data.  Written in pure C.  GUI relies on Enlightenment Foundation Libraries (EFL).  Multimedia playback capabilities and metadata information retrieval rely on GeeXboX libplayer and libvalhalla projects.
  • 11. GeeXboX Enna: Embedded Media Center Main Features  Main modules are:  Music Player  Movies & TV Shows Player  Photos Viewer  Weather forecast  Online eBook Reader from various online content providers.  Digital TV through VDR (VideoDisk Recorder) frontend  Games Aggregator (e.g MAME, Emulators ...)
  • 12. GeeXboX Enna: Embedded Media Center User Centric  Designed with embedded considerations in mind (low footprint).  Meant to be user convenient and plug-and-play.  Controllable through keyboard, mouse, touchscreen and remote.  Modularized and skinnable.  Available for:  GeeXboX v2.x.  GNU/Linux distributions (Ubuntu 10.04 LTS ...)  Mac OSX (in progress)  Windows (in progress)
  • 13. GeeXboX Enna: Embedded Media Center Supported Protocols  Dynamic media detection through:  mtab  HAL  UDEV  Media Browsing protocols:  Local disks  CDDA  DVD  Media Database  SHOUTcast  Podcasts  UPnP A/V and DLNA  Bluray, some day ...
  • 14. GeeXboX: An Introduction to Enna Media Center Software Architecture  Built on Enlightenment Foundation Libraries (EFL) and GeeXboX multimedia libraries (libplayer and libvalhalla).  Enna is presentation-level only: provides many abstraction layers.
  • 15. GeeXboX Enna: Embedded Media Center EFL Enlightenment Foundation Libraries http://www.enlightenment.org/
  • 16. GeeXboX Enna: Embedded Media Center Enlightenment Foundation Libraries  EFL are ”a whole suite of libraries to help you create beautiful user interfaces with much less work than doing it the old fashioned way and fighting with traditional toolkits”.  Eina provides optimized data types and useful tools.  Evas is the canvas display layer.  Ecore is a tiny event loop library.  Edje is a graphical design and layout library which allows extremely flexible dynamic layouts and animations.  Elementary is a widget set.
  • 17. GeeXboX Enna: Embedded Media Center libplayer Multimedia A/V Abstraction Layer Framework http://libplayer.geexbox.org/
  • 18. GeeXboX Enna: Embedded Media Center libplayer  libplayer is a multimedia A/V abstraction layer framework.  Provides a generic API to control various multimedia players:  MPlayer, through FIFO-based slave-mode.  Xine  VLC (requires to-be-released v1.1 API)  GStreamer (preliminary, yet experimental)  Fully thread-safe.  Player controls and notification are offloaded to frontend.  Supports most of currently available A/V renderers:  Audio: ALSA, OSS, PulseAudio  Video: Framebuffer, OpenGL, SDL, VDPAU, X11, XVideo
  • 19. GeeXboX Enna: Embedded Media Center libplayer Architecture
  • 20. GeeXboX Enna: Embedded Media Center libvalhalla Tiny Media Information Scanning Library http://libvalhalla.geexbox.org/
  • 21. GeeXboX Enna: Embedded Media Center libvalhalla  libvalhalla is a tiny media scanner library:  High-performances multi-threaded implementation.  Supports both background and on-demand operations.  Stores information in SQLite database.  Parses A/V stream properties through FFmpeg.  Features many on-line grabbers for automatic retrieval of covers, lyrics, synopsis, list of actors …  Currently supported grabbers:  Offline: EXIF, FFmpeg and NFO.  Online : Allocine, Amazon, ChartLyrics, ImDB, Last.fm, LyricWiki, TheMovieDB, TheTVDB and TVRage.
  • 22. GeeXboX Enna: Embedded Media Center libvalhalla Architecture
  • 23. GeeXboX Enna: Embedded Media Center Status & Roadmap Pinky: "Gee, Brain, what do you want to do tonight ?" The Brain: "The same thing we do every night, Pinky—try to take over the world !"
  • 24. GeeXboX Enna: Embedded Media Center Status  Enna first release (0.4.0) was made on 2nd January 2010.  First users feedback was quite impressive.  Mature code, part of most famous distros a few weeks later.  Will be key part of GeeXboX 2.0 release (alpha2 released in March).  Still many competitors:  XBMC / Boxee, Moovida, Meedio, Win MCE …  But not targeting embedded device field  Port to ARM-based devices in progress: Beagleboard, Nokia N900 mobile phone, TouchBook …  Next step/targets: ISP STB, connected TVs ...
  • 25. GeeXboX Enna: Embedded Media Center Expected features  Seamless TV support through VDR skin.  Additional online content connections: Picasa, Flickr, YouTube browsing ...  Provide Video On Demand (VOD): Apple Trailers, Amazon.com, Netflix ...  Instant Messaging (through Telepathy framework).  VoIP Telephony, Video Conference and TelePresence.  Get use of more and more hardware accelerators:  Additional ARM VFP and NEON optimizations.  OpenMAX DSP access for video playback  OpenGL|ES 3D GPU Acceleration  Flash 10 decoder
  • 26. GeeXboX Enna: Embedded Media Center That's all folks ... Thanks http://www.geexbox.org/