OK, never say never. But...
XBMC can not work on the Popcorn Hour, NMT (Networked Media Tank), Tvix, Mvix, Myka, Netgear Digital Entertainer, Ruku, Dlink DSM, Sage TV HD Extender, or any set-top-box that uses a Sigma Designs' chipset for the following reasons:
- Sigma 862x (older boxes) use an ARM Processor (porting to ARM processor architecture is being worked on though)
- Sigma 863x (newer boxes such as the PopcornHour) use MIPS processor architecture.
- No GPU (and thus no 3D hardware acceleration)
- No OpenGL support
- Sigma won't release sources needed to access the video acceleration hardware, even though these sources are statically linked in the kernel of the microLinux distro they use.
- ffmpeg doesn't support Sigma's acceleration, even if we did have access to the hardware and sources
This above is only the short list, all of which are on their own a 'showstopper' reason why XBMC will not run on these devices.
Here's a longer list, which I will just use Netgear's Digital Entertainer HD (EVA-8000) as an example:
EVA-8000 hardware:
Code:
Sigma Chip: Sigma [url=http://www.sigmadesigns.com/public/Products/selection_guide/selection_guide.html]EM8623L [/url](non-MacroVision version of EM8622)
HDMI Chip: Silicon Image VastLane SiI9030CTU
[url]http://www.siliconimage.com/iplicensing/hdmi.aspx?catid=14[/url]
[url]http://www.siliconimage.com/products/reference.aspx?id=2[/url]
Flash chip: Macronix MX [url=http://www.macronix.com/QuickPlace/hq/PageLibrary48256F55002C90A5.nsf/h_Toc/75d338438656550a48256f5500408bf7/?OpenDocument]29LV640BTTC-90G[/url] (MX29 series flash)
Should be the 3rd one down in the 64Mb section (8 MB flash) section
Ethernet: Realtek [url=http://www.realtek.com.tw/products/productsView.aspx?Langid=1&PNid=14&PFid=6&Level=5&Conn=4&ProdID=14]RTL8100CL[/url] chipset
USB: Via [url=http://www.via.com.tw/en/products/peripherals/usb/vt6212/]VT6212L[/url]
Wireless: no idea. some generic chipset on an mPCI card, hidden beneath an EMI shield
If you'll read the specs on the Sigma Website, you'll note that this box uses a 200Mhz ARM processor. With that slow of a chip, everything will have to be done in hardware.
The newer boxes such as PCH use a 300Mhz MIPS processor.
The only type of acceleration that appears to be offered by Sigma is a very vague "2D Graphics Acceleration" which is done by their proprietary drivers.
With no GPU and no OpenGL support, we would have to rely on Sigma's hardware to do the acceleration for us in a proprietary way, but it's unclear if their hardware even supports 3D acceleration at all, much less in a way compatible with OpenGL.
In addition, ffmpeg would have to support video decoding through the Sigma drivers in the same way that the VDPAU branch uses ffmpeg support for VDPAU in the Nvidia drivers.
All of this is moot, since Simga won't release the tarballs for their drivers' source.
Netgear has released the sources for their Digital Entertainer HD, but they include the following steps in their readme:
Quote:2. Install Toolchain
Obtain Sigma Designs ARM Toolchain v
2.5.103.0(armutils_22.5.103.0.tgz). Install
the toolchain as instructed in the package.
3. Building Kernel
Obtain Sigma 8622 MRUA v2.8.0.2 distribution
(mrua_EM8622L_2.8.0.2_dev.arm.nodts.tgz)
Untar mrua_EM8622L_2.8.0.2_dev.arm.nodts.tgz and build Sigma 8622 video
drivers
Copy Sigma video drivers (llad.o and em8xxx.o) to kernel folder
arch/armnomu/mach-em86xx
Execute ./makelinks located in root of linux-2.4.22-em86xx
Execute make
How exactly does one "obtain" the Sigma Toolchain and MRUA to build the drivers?
Here's a thread on the subject
http://forum1.netgear.com/showthread.php?t=20991 (registration required, sorry)
Clearly, Sigma isn't interested in releasing their sources.
So, for XBMC to happen on a Sigma-based platform, the following would have to happen:
- Port XBMC to compile on ARM and/or MIPS
- Sigma has to release their tarballs
- These drivers have to support some type of 3D acceleration
- If this 3D acceleration is not OpenGL compatable, or doesn't have an OGL wrapper, XBMC would have to change it's code to support this new acceleration
- If all this happened, the ffmpeg project would have to support the video acceleration in the same way that they support VDPAU (as there's no way ANY video can run on a 200Mhz ARM processor, not even SD)
In short, it's not bloody likely.
Hope this helps stop some of the porting requests,
-Wes