By Nathan Willis
January 9, 2013
Version 12 of the XBMC
media-playback application is currently in
the final stages of development; release candidate 3 was released
on January 3. There are multiple enhancements to the codebase, but
one of the biggest stories is that XBMC v12 will officially add
support for Android. An Android port naturally makes XBMC available
on tablets and handsets, but, just as importantly, it enables running
on numerous set-top boxes, "smart TVs," and the increasingly-popular
smart TV dongle — device classes currently dominated by
proprietary applications produced by entertainment companies.
Binary builds RC3 of XBMC v12 are available for download from
xbmc.org. The Android build is an .apk package that is installable on
any device on which the user has enabled installation of non-Play
Store software. The project site says that XBMC will eventually come
to the Play Store, but not during the pre-release phase. The XBMC
wiki has an Android
hardware page outlining which devices have tested well with which
media types — as one might expect, there is a significantly
higher hardware threshold required to enable 1080p video playback.
The target platform for the initial Android release is set-top
boxes, in particular the Pivos XIOS DS, which is a compact ARM Cortex
A-9 device that the team used as the reference development
platform. The project offers
a few guidelines for assessing the suitability of other devices,
including a note that practically speaking, any Android device that
does not have the NEON-compatible coprocessor (or does not have it enabled) will
probably be unable to play back HD video. Nevertheless, there are
unsupported NEON-free builds linked to from the Android hardware wiki
page. The final caveat is that thus far the porting effort has not
addressed power consumption, so users of battery powered mobile devices
may find XBMC to be quite draining — although the project
assures users that this, too, will be addressed in the future.
Wall-powered set-top boxes, of course, may not find high power
consumption as problematic.
Functionality
I tested the new release on a Nook Tablet running CyanogenMod 7 (CM7),
and the battery-draining issue is indeed no joke. The device boasts a
4000 mAh battery, which XBMC managed to drain completely in a little
over 3 hours, even though video playback only accounted for a small
portion of the time. Granted, CM7 is an unofficial port for this
particular device and comes with its own share of power consumption
problems. Still, it is clear that there is considerable room for
improvement. Nevertheless, even on year-old hardware and a
less-than-up-to-date version of Android, XBMC runs remarkably well.
Feature-wise, the good news is that the Android port is nothing
short of the full XBMC experience — this is not a "light" or
"mobile" version of the software. All of the media formats, network
protocols, and add-ons supported in desktop XBMC are available in the
Android edition. NFS access was missing from some of the early betas
of XBMC v12, but as of now, there are no major gaps in player
functionality. Video playback from standard-definition web sources
was smooth, and a significantly better experience than accessing the
same sites through either the stock Android browser or Firefox. Audio
playback rarely stress-tests modern devices, so it gets less
attention in reviews, but all of the audio add-ons tested worked like
a charm as well.
There are, however, still hiccups to be encountered in individual
plug-ins. To some degree this is unavoidable; a huge subset of the
video playback add-ons, for example, are "screen scraper"-style hacks
to retrieve content from specific Web-based video services, such as
the many cable and broadcast TV channels that offer a subset of their
programming online. The authors of these add-ons must rewrite their
page parsing code every time the target site alters its layout, but
one of XBMC's strengths is that add-ons are installable from within
the XBMC interface, and updates to restore service can be pushed
out quickly.
But reliance on third-party add-on developers has its downside;
there are other add-ons available for desktop Linux XBMC
that do not seem to work for the Android build, such as the D-Bus
based notifications, some of which may never work because of platform
limitations. Still others offer functionality that depends on
external factors, such as the MythBox add-on, which allows XBMC to
play back content from a MythTV back-end. But the add-on only
supports MythTV 0.24, which is two releases out-of-date.
Experience
A far more significant problem with XBMC v12 on Android is
navigating the user interface. XBMC has long had navigation "trap
doors;" spots where it is possible to navigate into a menu or tool,
but it is either impossible to navigate back out, or it is only
possible to navigate back out through different means (for example,
menus where the left-arrow key allows you to enter a screen, but the
screen can only be exited by hitting Escape). These
trapdoors are usability warts under the best of circumstances, but on
an Android device they can literally leave the user stranded if the
device does not have a hardware keyboard. Android phones
might have a keyboard; tablets will not. Some set-top boxes
come with wireless keyboards, although they are largely looked down
on, and there is always the possibility of pairing Bluetooth
keyboards. But users seem to loathe putting down the directional
remote with its single-thumb driveability.
Trapdoors are not the only interface difficulty, however. Many of
XBMC's screens and onscreen controls assume the presence of either a
traditional pointer or a touchscreen. Jumping directly to a specific
point in the timeline of a song or video, for instance, requires a
pointing device to be at least marginally accurate. There may not be a
one-size-fits-all solution, considering the variety of content types
XBMC plays (and the variety of caching/streaming challenges that
accompany them), but some more work will probably be required to
optimize for the Android set-top box, which is often touch-free (and
may be pointer-free as well).
But the bigger question that XBMC needs to answer for potential
Android users is how it offers an improvement over getting at the
same content through other applications. Quite simply, the answer it
gives is "it depends" — entirely on the type of content.
Consuming Internet-delivered video and audio is significantly better
through XBMC than it is through a browser. The difference is not
quite as stark when compared to a dedicated Android application for a
particular service (such as Grooveshark). And XBMC is far less
compelling for content that requires more manual searching and
browsing.
Take podcasts, for example. XBMC supports managing podcasts, but its
interface for subscribing and listening to them is no better than any
other on the market. In fact, when coupled with the difficulties of
using the UI without a keyboard, it may actually be slightly worse.
The same is true for watching or listening to files from local storage
— there is no compelling advantage to using XBMC for this task
over the stock Android tools, and in some places the interface makes
the task more difficult.
As a result, XBMC for Android works well as an Internet content
front-end, where a set-top box must compete against the rapidly
growing stack of commercial streaming boxes from Roku, Netgear, and
everyone else at the big consumer electronics shows. Some of these
commercial products also offer an interface into the owner's local
music and video collection (typically through UPnP/DLNA).
XBMC can match that experience, although with a large enough
collection no DLNA solution is particularly pleasant — all
eventually fall back on scrolling through page after page of track
titles.
Where XBMC has a clear advantage is that it will always be able to
offer access to more online content than these proprietary
competitors, because the community writes its own add-ons and updates
them without the need to call in lawyers and negotiate complex
multi-year distribution deals. This is probably where XBMC will make
the biggest splash, if and when users of commercial Android set-top
boxes can install XBMC through the Google Play store. The
do-it-yourself crowd will probably find a desktop Linux-based XBMC
set-top box both easier to build and more flexible — but the
average consumer may very well discover a new world through seeing
XBMC available as a one-click installation option.
The application may also end up being a handy option on handheld
Android devices (once the power-consumption issues are fixed). There
will probably be more and better options for podcasts and locally
stored content, but XBMC's unified front-end to a wealth of
Internet-delivered services is likely to be a hit even on phones. If
nothing else, it saves users the trouble of scrolling through dozens
and dozens of extra application launchers.
(
Log in to post comments)