Kodi Community Forum

Full Version: [LINUX] XBMC for Linux port to ARM architecture CPU and SoC chips?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Soju Wrote:Hey Guys do you know if the Roku player will take the build? Anyone try?

I gather it is Arm based, myth has a build going. Its 79 bucks BTW. probably no h264 or 1080P. Some source info.

That myth build is for Roku's orphaned 1st gen PhotoBridge. Mpeg2 only and it worked great until Roku orphaned it and basically screwed all PhotoBridge owners who paid $500 and less when the product was shipping. Power supplies and chip failure due to improper heat management design that was ignored by Roku. They all will eventually fail as mine did three times (fixed it myself). I own such a doorstop and will never purchase a Roku product again because of their attitude of the user will take what we give them.

Remember the ReplayTV, that was a pervious company run by the same people.
squid1 Wrote:IGEPv2 board , is currently out of stock really been thinking of getting one to play about with maybe even donate one with hows your experience been so far with it as far a xbmc goes ?? not done any gfx on arm my understanding that port is for open gl and is not direct fb based?

No to Direct FB...and No to Open GL... Yes to Open GL ES
There is a difference between OpenGL and OpenGL ES.
It is not easy to change one to the other.

OpenGL is rather relaxed and allows you to use the fixed functionality of Open GL <2.0, with the shader support of Open GL 2.0+...ES does not allow this, so had to first convert all GL code to use programmable shaders, then change to ES.

Currently it works with GLES2.0, but not in a very efficient way, in order to keep compatability with GL. If I were to start from scratch the rendering stages, with ES in mind, then performance should increase somewhat.
Hello,

has anyone tried out the igep v2 Board?
Which type did you try out? The 600MHz or the 720MHz version?

Greets from Germany
elektron
Any chance it will work on chumby

ARM 454MHZ CPU
64MB DDR SDRAM
2GB Microsd
3.5 LCD
802.11b/g wifi
$99

Here is another opensource product:

Touchbook ARM
Texas Instruments OMAP3530 (600MHz)
256MB RAM (Micron)
256MB Flash Memory Built-In
8.9 inch AU Optronics B089AW01 V0 screen
1024x600 WSVGA (Wide) Resolution (132dpi) LED backlight
Pressure Sensitive touchscreen
8GB class 6 card (6 MB/s) included
802.11 b/g/n Wifi powered
Bluetooth Class 2.1 USB dongle
$299
@elektron: I have not tested the igepv2 board as i dont have one. My current concentration will be spent profiling and optimising this port. After that, i will look into alternative hardware and hardware acceleration. Feel free to keep mentioning alternatives till then!

@CrashX: The chumby is an ARM9 based product, and as such will work with my port...but it does not have OpenGL ES. This means you will have to render everything in software, and basically on an ARM9 at that speed, its completely unusable (imo)
The touchbook is almost exactly the same as a beagleboard, and has the exact same SoC (OMAP3530) so yes this will definately run as is on that, including rendering with GPU. (although i havent tested this)
Sorry if this is a silly question but can the new nokia n900 be a targeted platform for the arm port ?

The N900 has :
- TI OMAP 3430 ARM Cortex-A8 600 MHz
- PowerVR SGX with OpenGL ES 2.0 support
- Up to 1GB of application memory (256 MB RAM, 768 MB virtual memory)
- 3.5 inch touch-sensitive widescreen display with 800 × 480 pixel resolution

Complete specifications
IF the device has an ARM processor, and IF the device has OpenGL ES 2.0 capabilities, then it SHOULD be able to run xbmc on it.
The only issue is, how well it will run.

Short answer, in theory, it should be able to run on the n900. This is not tested though.
Thanks.
I was looking forward for this port of xbmc on beagle for a long time.. it would be really good if someone post the sources and pre built binaries to try it out.

Thanks
Arun
the source is located in the svn:
https://xbmc.svn.sourceforge.net/svnroot...bmc_on_arm

Feel free to try it out yourself.
There is currently no pre-built binaries available, but you can build it yourself.
Remember that this is not in a 'useful' state at the moment, just for developers to play with and improve.

-Thanks
The work you've done is fantastic and I decided to try it.

I'm actually trying to compile XBMC with Scratchbox. To do so I follow the instructions in the README.armel file and I get trouble with these command lines :

> cd xbmc_on_arm/XBMC/
> ./configure --prefix=/usr --disable-xrandr --disable-debug --disable-gles1
> make

I download the sources through svn and it appears that the 'configure' file and the Makefile are missing. Is it normal or is there another way to compile the source ?
usually there is "autogen.sh" or "bootstrap" script ( it is the latter here ) which generate "configure" script and then with "./configure" Makefile is generated.

So it should be
Code:
cd xbmc_on_arm/XBMC/
sh bootstrap
./configure --prefix=/usr --disable-xrandr --disable-debug --disable-gles1
make
Thanks it works fine but now I've got the following error during the 'make' step :

g++ -O2 -O2 -DNDEBUG=1 -o xbmc.bin -Wl,--whole-archive guilib/guilib.a guilib/common/gui_common.a guilib/tinyXML/tinyxml.a xbmc/xbmc.a xbmc/cdrip/cdrip.a xbmc/cores/cores.a xbmc/cores/DllLoader/dllloader.a xbmc/cores/DllLoader/exports/exports.a xbmc/cores/DllLoader/exports/util/exports_utils.a xbmc/cores/dvdplayer/DVDPlayer.a xbmc/cores/dvdplayer/DVDCodecs/DVDCodecs.a xbmc/cores/dvdplayer/DVDCodecs/Audio/Audio.a xbmc/cores/dvdplayer/DVDCodecs/Overlay/Overlay.a xbmc/cores/dvdplayer/DVDCodecs/Video/Video.a xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxers.a xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreams.a xbmc/cores/dvdplayer/DVDSubtitles/DVDSubtitles.a xbmc/cores/paplayer/paplayer.a xbmc/cores/AudioRenderers/audiorenderers.a xbmc/cores/VideoRenderers/VideoRenderer.a xbmc/cores/VideoRenderers/VideoShaders/VideoShaders.a xbmc/cores/ExternalPlayer/ExternalPlayer.a xbmc/FileSystem/filesystem.a xbmc/FileSystem/MusicDatabaseDirectory/musicdatabasedirectory.a xbmc/FileSystem/VideoDatabaseDirectory/videodatabasedirectory.a xbmc/karaoke/karaoke.a xbmc/lib/libcmyth/libcmyth.a xbmc/lib/libhts/libhts.a xbmc/lib/libPython/python.a xbmc/lib/libPython/xbmcmodule/xbmcmodule.a xbmc/lib/libRTMP/librtmp.a xbmc/lib/libscrobbler/scrobbler.a xbmc/lib/libRTV/librtv-i486-linux.a xbmc/lib/libshout/libshout-i486-linux.a xbmc/lib/libUPnP/libupnp-i486-linux.a xbmc/lib/libXBMS/libxbms-i486-linux.a xbmc/lib/libXDAAP/libxdaap-i486-linux.a xbmc/lib/libGoAhead/libGoAhead-i486-linux.a xbmc/lib/sqLite/sqllite.a xbmc/lib/UnrarXLib/UnrarXLib.a xbmc/linux/linux.a xbmc/screensavers/screensaver.a xbmc/settings/settings.a xbmc/utils/utils.a xbmc/visualizations/visualization.a xbmc/xbox/xbox.a -Wl,--no-whole-archive -lavahi-client -lavahi-common -lfaac -lpulse -lhal-storage -ldbus-1 -lcurl -lXinerama -lXmu -lXtst -lXt -lmms -ljasper -lenca -lresolv -ldl -lSDL_mixer -lSDL -lsmbclient -lz -lsamplerate -lcdio -llzo2 -lpthread -lpcre -ljpeg -lpng12 -lrt -lasound -lmysqlclient -lsqlite3 -lfribidi -lbz2 -lfontconfig -lfreetype -lvorbisfile -lvorbisenc -lvorbis -logg -lmad -lGLU -lGLEW -lGL -rdynamic
xbmc/lib/libGoAhead/libGoAhead-i486-linux.a(websda.o): In function `websMD5binary':
websda.c:(.text+0x43): undefined reference to `MD5Init'
websda.c:(.text+0x59): undefined reference to `MD5Update'
websda.c:(.text+0x68): undefined reference to `MD5Final'
collect2: ld returned 1 exit status
make: *** [xbmc.bin] Erreur 1

Does anyone have an idea of what's wrong ?

Thanks in advance
Apologies all. That README.armel file is rather outdated, so don't rely on it.

I will look into this as soon as i gain access to my linux machine...
from what i recall, i changed a few things, but looks like i havent yet committed it...

its worth having --enable-external-python in the config options, as im not too sure the internal python works well with arm.

will keep you updated when i get this resolved. thanks!
PMP ARCHOS | 605 WIFI 500948 R 1 129.99

now that the archos 605's are so cheap i'm going to give this a try

let me know if anyone else has got this working
Please do this:
(> means do in scratchbox, $ means do in normal linux terminal)

> make clean
> make distclean
$ svn up
$ ./bootstrap
> ./configure --enable-external-python --enable-gles
> make

please post your results. thanks!

(sorry i cant be more help at this time, currently not in the same country as my linuxbox, and thus have limited internet access to ssh and fix this)