Archive

Archive for the ‘ARM’ Category

GeeXboX 2.0 has landed …

September 17th, 2011 21 comments

After countless years of development, the 2.0 release of GeeXboX (codename “Love It or Shove It”) finally has landed. The GeeXboX project was created in December 2002, 9 years ago, to become the major HTPC / MediaCenter dedicated Linux distribution. From a ridiculous 3 MB ISO image, using an ultra-simple customized version of MPlayer OSD, GeeXboX now has evolved into a much more mature system. Our objective always has been to provide you with a Linux distribution, so easy to use, that anyone, regardless of any computer skill, would be able to make use of it.

Over the years, the project has evolved to always provide more features and bring support to more and more hardware devices, which we managed to do, at some cost. The architecture that has been originally designed, with the whole UI being MPlayer’s OSD, prevented us from easily adding major features and the look&feel started to look deprecated within the years. We’ve then been struggling for months and years to design this v2.0 version, switching from one Media Center project to another (or even creating our own), using MPUI, Freevo and then Enna, to finally stick with the most powerful one, the reference: XBMC. Our team always has been too small numbered and managing a distribution takes resources. We had no other choice but to understand that we just can’t compete, so let’s just integrate the best components to make one nice product.

So here we are now, and we’re here for good. This new GeeXboX 2.0 release is the accomplishment of hours, days, months of efforts from a lot of people. It is radically different from the 1.x series and, sorry to disappoint some of you, will not provide the same level of services. We are now doing much more things than we used to do with 1.x but unfortunately, a few things have to be left over. But GeeXboX philosophy remains the same and we still aim at targeting the most PCs and devices as possible, in an as lightweight as possible way. The ISO image of “GeeXboX for PC” edition now hits 72 MB, much bigger than it used to be, sure, but still probably one of the lightest distributions you may have seen. GeeXboX now also support many embedded devices running ARM SoCs (such as TI OMAP4 Pandaboard and nVidia Tegra 2) and many much more will be added in the months to come. These devices just make the perfect fanless, energy-efficient HTPC and GeeXboX just make the perfect MediaCenter distribution for those.

But enough with the speech and let’s see what’s behind the hood:

Supported Architectures:

  • x86 32 and 64 bits PCs
  • ARM TI OMAP4 Pandaboard
  • ARM nVidia Tegra2 Harmony

System:

  • Linux Kernel v2.6.38.8.
  • Systemd v29.
  • BusyBox v1.19.2
  • Connman Network Manager v0.76.
  • Xorg Server v1.10.3.
  • Mesa v7.11.
  • OPKG Package Manager v0.18
  • USB persistent user data storage.

Audio Drivers:

  • ALSA v1.0.24.1.
  • Support for Analog, SPDIF and HDMI output devices.

Video Drivers:

  • Support for Intel, nVidia, ATI, Matrox and VIA GPUs.
  • Support for CRT, LCD and HDMI output devices.
  • OpenGL and OpenGL|ES hardware assisted graphics acceleration.
  • VDPAU, VA-API and Crystal HD hardware assisted video decoding for nVidia, Intel and Broadcom GPUs.

Input:

  • Mouse and Synaptics touch pads.
  • HID Keyboards.
  • Remote Controls.

Networking Features:

  • NFS shares.
  • Samba auto-discovery.
  • UPnP / DLNA media discovery.
  • ZeroConf services announcements.
  • HTTP server.
  • FTP server

MediaCenter:

  • XBMC Media Center 10.1 “Dharma” frontend.
  • Movies and TV Shows, with subtitles support.
  • Music Collection
  • Pictures and Slideshows
  • CDDA, DVD and (unencrypted) Bluray support.
  • Media Database Support.
  • Internet MovieDB / TVDB metadata and covers grabbers.
  • Skins

Some features however have vanished. among them, one can note that support for DVB Digital TV cards has been removed (but will come back shortly), support for V4L Analog TV cards has been deprecated (this time dead once for all), GeeXboX unique ISO generator also has perished (not that useful anymore), as well as legacy HDD installation (which has been superseded Live USB support with persistent data storage).

GeeXboX for PCs still is provided as a directly burnable ISO image though it is much more common these days to use it as a Live USB distribution instead of a Live CD one. We extended this feature with a persistent user data storage capability that allows you to keep your configuration, media database, downloaded media covers, lyrics … among reboots. No configuration is needed and everything can be done quite easily through Unetbootin.

We’ve put a lot of hard work into this new GeeXboX release and we truly hope it’ll suits all of your geeky needs. Next steps are up to you: download it, put it on some USB key, reboot your PC and sit on your couch :-)

Share
Categories: ARM, GeeXboX, HDTV, Release, x86 Tags:

GeeXboX Project Renewal Phase #1

August 22nd, 2011 1 comment

For quite a long time, there used to be pretty much no news at all about the project status, with no major release coming out, ending up in either user frustration or disappointment. Beneath the surface, development never was discontinued at all but was more oriented over the OpenBricks framework, a generic embedded Linux build system which now sustains the GeeXboX project.

The good news is that the project went well and should soon be delivering its very first release, meaning we’ll be able to finally deliver a new major GeeXboX release. A lot of things have changed and we’ve been sponsored with a new web server, providing us more possible services.

As a result, the GeeXboX project is now able to run multiple HTPC frontends (including Enna, Freevo, MythTV, VDR, QtMediaHub, XBMC and Boxee). GeeXboX’s new default media center frontend now is the award winning XBMC project, that we’re very proud to integrate. We now provide support for the most up-to-date audio/video technologies with complete GPU hardware video decoding support on x86 desktop PCs. Support also has been extended to port GeeXboX on all new ARM-based SoC (e.g TI OMAP 3 & 4, nVidia Tegra2 …) as you can find on our platform compatibility matrix. As for regular PCs, the distribution still support LiveCD booting with improved support for USB-key boot, including persistent data storage (have a try at unetbootin for that). The whole thing comes with a packaging system so that upgrades will be much easier in the future.

That being said, the new release is not yet here but thanks to our new host, we’re able to provide you with pretty stable GeeXboX/XBMC development snapshots for all the major platforms we do support. Actually, as you may have seen, the whole web server has been upgraded to be faster and safer and the old un-maintained forum has been deprecated and replaced by a more integrated version (though forum’s history has been wiped out).

That’s all for today folks, and just remember to enjoy our brand new services:

 

Share
Categories: ARM, GeeXboX, Release, Website, x86 Tags:

GeeXboX at Linaro Developer Summit

May 23rd, 2011 1 comment

Linaro was kind enough to invite us to attend the recent Linaro Development Summit (colocated with Ubuntu Developer Summit in Budapest, May 9-13 2011). I showed off our latest developments during the Linaro Technical Showcase, demoing GeeXboX running on IGEPv2 (OMAP3), PandaBoard (OMAP4) and x86, with different media center frontends. I noticed that the view of XBMC smoothly running on PandaBoard drew a lot of interest from the public :) There was also a contest: the GeeXboX demo was voted “2nd best”, and I went home with a couple of nice prizes… hopefully you’ll soon see GeeXboX running on the brand new Snowball board by ST Ericsson.

Thanks again to Linaro for sponsoring the trip and arranging an awesome conference and showcase!

We plan to release shortly the images used during the demo, so stay tuned :)

Share
Categories: ARM, GeeXboX, Meeting Tags:

Linux 2.6.35 upgrade

August 7th, 2010 3 comments

So Linux 2.6.35 is barely out and has already been integrated to GeeXboX. We planned to stick on previous kernel but this one really has some major improvements. It came with many changes over ARM architecture and allowed us to get rid of an incredible number of patches for OMAP3 boards. Also it now supports upcoming OMAP4 boards which soon will be supported by GeeXboX too.

Last but not least, there was a major improvement over x86 Intel DRM drivers that now supports H.264 hardware video decoding for newest G45 GPUs. As a result, we also update our VA-API framework and enabled it within GStreamer and VLC players, providing hardware video decoding capabilities.

As for embedded space, one may also notice the introduction of DirectFB, an accelerated framebuffer interface that allow us to provide non-X support for some devices. Enna still has to be updated to take profit of that but this will open our media center to a bunch more devices.

Share
Categories: ARM, Enna, GeeXboX, x86 Tags:

Road to ARM devices !

June 4th, 2010 1 comment

This ain’t news to anyone now cause, as announced to last ELC, the GeeXboX project is now focusing most of its efforts to support ARM devices and I’m glad to say that we made impressive improvements in this area. First, let’s be realistic, there are hundreds of different SoCs and ARM devices and it’s definitely not possible to support them all as one would do on x86 computers. Right now, we’ve decided to focus on OMAP3 from Texas Instruments. Why so ? That’s easy: it features nearly everything one can want to build a Media Center: an ARMv7 CPU (Cortex-A8), an OpenGL|ES compatible GPU (PowerVR SGX 530) and a 720p H.264 hardware capable decoding DSP. This SoC is also mature and has an impressive support from community. As a consequence, thanks to a few sponsors (CELF), the revenues from Google AdSense and generous donations, we’ve been able to get access to one BeagleBoard, 3 IGEPv2 boards and a TouchBook.

These brand new shiny toys really make wonders and thanks to a very hard labor, I’m proud to say that GeeXboX current development tree is now running fine out there. Of course, there are still many rooms for improvements but the basics are there and we’ve been able to run Enna on it by this week. While now working out of the box on these devices, we’re still using fully software methods (i.e. no DSP or GPU) which are, by definition, resources eating. But at least all of the infrastructure work has been done and we’ll now be able to focus on these peripherals.

When this will be achieved, we’ll have a complete out-of-the-box multimedia solution for very low-end devices that one can use to drive is Set-Top-Box. Speaking of that, we’ve decided to work, in the months to come, to the hardware design of our own motherboard (obviously based on ARM SoC), as to provide a full-featured STB, with Open Software and Open Hardware. More details will be available in the weeks to come.

In the long term, we also intend to support as much ARM chips as possible. I originally wanted to target at least ARMv7 architecture, due to its impressive NEON SIMD instructions set, but many devices still being based on ARMv5, we might possibly do some porting efforts. With a bit of luck (and very likely depending on Texas Instruments), we might also support OMAP4 architecture by end of the year (Cortex-A9, PowerVR SGX 540 and 1080p-capable DSP) and why not nVidia Tegra2. This can however only be done if we managed to get access to the hardware. So any interested developer or if you know any way to get sponsored some boards, feel free to join or to contact us at least.

Regarding GeeXboX itself, we also made very deep changes in the toolchain and our build system. I’ll make some announcement when the time will come but you may soon expect to have a impressively easy cross-compilation framework, with the possibility to create additional components through our SDK and package the whole thing using OPKG, which we’ll be using to have a fully packaged-based and upgradeable multimedia distribution.

So stay tuned :-)

Share
Categories: ARM, GeeXboX Tags:

GeeXboX at Embedded Linux Conference 2010

April 26th, 2010 1 comment

The CE Linux Forum organized the ELC (Embedded Linux Conference) 2010 session at San Francisco from 12th to 14th April. I had a 1h speaking timeslot where I presented GeeXboX, Enna, libplayer and libvalhalla. This was also followed by a 2 hours demo session where Davide and myself presented Enna on netbooks + Nokia N900 to various attendees and enterprises.

For interested people, my slides are available at:
http://elinux.org/images/0/03/ELC_2010_-_BZ_-_GeeXboX_Enna_-_Embedded_Media_Center.pdf

And the video will be posted when available.

Those interested in all ELC conferences might take a look at:
http://elinux.org/ELC_2010_Presentations

So, what happened meanwhile this event ?

GeeXboX and Enna received a pretty good feedback from both the people attending the presentation than the demo. We also managed to draw contacts with many interesting people from various companies: Nokia, Texas Instruments, Samsung, Numonyx, AlwaysInnovating …

A lot of questions were raised, a few remarks too and in many cases, people had the same remarks or feelings (I do personally share many of them btw).

  • Most of the people were impressed by Enna on Nokia N900. Actually, most of people are interested by Enna on embedded devices (but that’s somehow normal due to expected audience), way more than on regular PC. Most people want it to run on ARM targets.
  • People were impressed by the very low footprint required. Numonyx folks consider it very useful with XIP approach.
  • Many people where very interested by libplayer actually. Its capability to allow user choose which backend to use seems to be very popular. Though everyone requested a GStreamer backend. I’m currently writing it but it’s definitely the way to go if we really intend to address embedded devices and enterprise-grade devices. It’s the only way to correctly handle DSPs atm.
  • Executives from Samsung were really interested by Enna itself. Actually, they knew about it before joining the stand. They wanted to know what was the difference with the enna from Enlightenment project (memo: Samsung hired the EFL main developer). They were happy to know that our Enna is the same as the one from E project. They also are very interested in it for their mobile phones (but not for the Bada project, or so they said) but were very disappointed by its very slow response time on N900. For the record N900 is running in software_x11_16 currently, the OpenGL|ES renderer being barely faster (if not slower) and produces garbage. I recalled them that they hire the man responsible of Evas and the renderers. Though it’s true and I confirm their feeling. I consider Enna as really really slow to draw anything (both on embedded devices and x86). No idea if its Evas issues or Enna bottleneck for we have slowdown issues. Though, from the expedite tests I did on N900, I’m disappointed by Evas performances.
  • People loved libvalhalla (or what it provides) and the capability to retrieve all metadata was really welcomed.
  • The biggest reproach done to Enna was the use of EFL instead of QT. Both individuals and enterprises (including Nokia obviously, but not Samsung, obviously too :-) would have recommended to use QT for its stabilized and documented API. The no-relases behavior, lack of documentation and unstable API of EFL was stated countless of times. Nokia shown us some small apps written using their new QML langage (EFL Edje equivalent) which is completely interpreted (but can be compiled) and I have to say the results were impressing. At first they have all necessary widgets (i.e. a completed Elementary) we need and the performances (on a regular PC at least) truely outcomes the ones of Evas-based applications (again while being interpreted). I asked us about OpenGL|ES performances and benchmarks (as it’s now my main point of interest) but they have no numbers to be provided (they however confirmed it to work fine). A lot of people also told us they would consider helping the project if it was QT written.
Share
Categories: ARM, Enna, GeeXboX, Meeting Tags:

Enna for Nokia N900 is out

March 21st, 2010 2 comments

Good news everyone ! I recently ‘ve been sponsored Nokia N900 phone by CELF, this awesome pro-Linux foundation that already used to sponsor me DLNA specifications a few years back. The idea of course was to start porting our software to ARM-based devices. Nokia N900 phone is a great toy. It features an OMAP3 SoC (ARM Cortex-A8 CPU associated with an SGX GPU that can handle OpenGL|ES) and is running Maemo 5 distribution (soon to be replaced by Meego), a Debian-derivated by Nokia. The idea behind all this of course was to port Enna (and its associated dependencies, i.e. libplayer, libnfo and libvalhalla) on this system and optimize the hell out of it :-)

This is now done. Kudos to myself :p

There are still room for way more optimizations. Enna has been ported, that’s a fact. The underlying dependencies can however be improved a lot. The EFL can use either X11 or OpenGL for output. Right now, we’re still using plain X11. It’s not really optimized but I’m not yet fully convinced of the OpenGL|ES port so it’ll stay this way for a still a while. Also, libplayer on N900 has been configured to use MPlayer. While this perfectly works, it uses CPU (with all possible ARM VFP and NEON optimizations though) for software decoding instead of using the hardware DSP. As a result, it can decode much more audio and video formats than the default embedded played allows to, but it’s also slower. I have multiple possibilities to make use of this DSP (through Maemo MAFW video API or using OpenMAX) and have not yet settled my choice.

Anyhow, everyone should now be able to try out out Enna v0.4.0 on his phone, provided he has one Nokia N900 of course :-)

In order to install it, go to Package Manager and add a new repository:

  • Name: GeeXboX
  • URL: http://packages.geexbox.org
  • Distribution: fremantle
  • Component: main

Proceed with packages database update and then:

  • Hit the Download icon.
  • Choose Multimedia application.
  • Select Enna Media Center.

That’s it. I hope you’ll enjoy it :-)

Share
Categories: ARM, Enna Tags: