Kodi Community Forum
[LINUX] XBMC for Linux port to ARM architecture CPU and SoC chips? - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Discussions (https://forum.kodi.tv/forumdisplay.php?fid=222)
+--- Forum: Feature Requests (https://forum.kodi.tv/forumdisplay.php?fid=9)
+--- Thread: [LINUX] XBMC for Linux port to ARM architecture CPU and SoC chips? (/showthread.php?tid=35139)

Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48


- davilla - 2011-04-07

loop over /dev/input/event%d, open, then check for a keyboard. When found, grab it. Then start a thread that reads from it, when you get a key event, translate it into an xbmc event and into g_application.OnEvent(event) using a MessagePump. See WinEventsXXX.cpp and friends.


- cpetku - 2011-04-08

dw21 Wrote:I have manged to get XBMC compiling on my Pandaboard (not cross compiling). This involved the following steps:

...

1. Get virtually all the packages listed in the README.linux.

...


Trying to do the same on a Pandaboard I just got. Are there any detailed instructions specific to this board? Even though I enabled uni and mutiverse I'm stuck at:

The following packages have unmet dependencies:
xbmc : Depends: xbmc-data (= 2:10.1~ppa1~maverick) but it is not going to be installed
Depends: xbmc-skin-confluence (= 2:10.1~ppa1~maverick) but it is not going to be installed
E: Broken packages


- topfs2 - 2011-04-08

cpetku Wrote:Trying to do the same on a Pandaboard I just got. Are there any detailed instructions specific to this board? Even though I enabled uni and mutiverse I'm stuck at:

The following packages have unmet dependencies:
xbmc : Depends: xbmc-data (= 2:10.1~ppa1~maverick) but it is not going to be installed
Depends: xbmc-skin-confluence (= 2:10.1~ppa1~maverick) but it is not going to be installed
E: Broken packages

We don't package for arm yet AFAIK


- dw21 - 2011-04-09

Don't get any of the XBMC packages. Everything you need will either be in the source or will be generated from the source. Unfortunately since there is no XBMC arm package in the ubuntu PPA you cannot do an apt-get build-deps, so it does become a bit of a trial-and-error exercise.


- dw21 - 2011-04-09

Any idea on how to improve the periodic packet loss and remove the jerkiness from the picture?

I am more than happy to tinker and try things out if people will point me to the right place to look. I do know how to find my way round C/C++ code.


- davilla - 2011-04-09

dw21 Wrote:Any idea on how to improve the periodic packet loss and remove the jerkiness from the picture?

I am more than happy to tinker and try things out if people will point me to the right place to look. I do know how to find my way round C/C++ code.

What's top show when you see these things ? I suspect you have run out of CPU.


- dw21 - 2011-04-10

top is reporting that both CPUs are running at round 43%,neither even going above 60%. I will be surprised if the issue is a shortage of cycles. I am guessing that the issue is the rate that either the graphics stack of multi-media stack consume the data. This leads to jerky motion of the picture which makes viewing unpleasant.

Although the Pandaboard should be able to do 1080p HDMI, my main issue is not packet loss, it is the periodic spurt of the loss of round 10 frames around every 10 seconds.

Since data is being consumed at a smaller number of frames per second than required, the buffer gets filled up. This seems to trigger a sudden flush of the buffer resulting in a large number of frames being lost in a very short period of time.

I am happy to help debug this issue but I am totally unfamiliar with the code. So any hints on where to look will be useful. I am also happy to provide logs if this will be useful (just need to know how to do this).

Thanks guys for the effort,much appreciated.


- topfs2 - 2011-04-10

if you compile xbmc/master you will use gles shaders, while the pandaboard is real fast with the gpu it seems like they have some problems with the X integration, this is most likely whats hindering the performance.

The panda plays 1080p bunny without any troubles for me (not in xbmc) but thats when it uses the hw decoder (which isn't implemented in xbmc for the panda just yet).

Whats needed for presentation is most likely merge in the omap overlay stuff I did in my gsoc, that made it possible to present in 720p (SD clip upscaled) very smoothly on the beagle even.


- dw21 - 2011-04-11

Is there any way to run XBMC outside X (since it does effectively take over the desktop)? Also what application were you using to play the 1080p video? I will also be interested in your GSOC patch and having a go at getting it to compile.


- topfs2 - 2011-04-11

xbmc uses X to create the egl surfaces and setup the gles context, it also uses it for input. So you'd need to patch that in order to get it to run outside X, it is for sure possible, just noone have done it yet.

Getting it to start without X should be the first part, then get it to pull input events is the next.


- McGeagh - 2011-04-12

davilla Wrote:If you have patches, we would love to get them into trunk. Remember that we need to watch out for tegra2 as it's armv7 is non-standards, ie. no neon and vfp is vfpv3-d16.

Its rather annoying, because only the Cortex A9 has NEON as an option... and more annoyingly, only nvidia (to my knowledge) have gone with the A9 without NEON...

damn you nvidia!
ideally, we will need to do a NEON, VFP (for those without NEON) and VFPv3-d16 (to keep tg2 happy) version of all of those functions.


- phusho - 2011-04-13

topfs2 Wrote:xbmc uses X to create the egl surfaces and setup the gles context, it also uses it for input. So you'd need to patch that in order to get it to run outside X, it is for sure possible, just noone have done it yet.

Getting it to start without X should be the first part, then get it to pull input events is the next.
http://www.youtube.com/watch?v=8dyJrzq2kxY

no comment


- McGeagh - 2011-04-13

phusho Wrote:http://www.youtube.com/watch?v=8dyJrzq2kxY

no comment

correction, no one who seems willing to push patches back, has done it...

btw, why are you using load multiples for your asm floor function? fldd and fsts will do fine

you are doing a lot of work that we are very interested in, please, provide patches so theres no duplication of work being done.

thank you


- phusho - 2011-04-13

McGeagh Wrote:correction, no one who seems willing to push patches back, has done it...

btw, why are you using load multiples for your asm floor function? fldd and fsts will do fine

you are doing a lot of work that we are very interested in, please, provide patches so theres no duplication of work being done.

thank you
I am almost done with system work and will post some of the patches. I am afraid I am working on some older clone already ...

For multiple store and load I have problems with compiler and it will keep mumble about fldd and fsts that something is not right with them ... also gcc optimize parts of code I don't want and such

Edit: before time I had posted one patch about DrawQuad and it was never commited as I know ... You can write me PM for more info about patches I wand to commit


- McGeagh - 2011-04-18

EDIT: I looked into the DrawQuad patch, and it was commited, just the trac didnt reflect this. it does now.
We do appreciate any and all patches you can provide us. Thanks


also, i have written some VFPv3 code for the mathutil functions, but havent had a chance to test it to make sure it works (mainly because i dont have a board with vfpv3 setup). If anyone does and would like to be the guinea pig, that would be very helpful.

phusho, your version looks like VFPv2 to me, so please keep them. having the different versions will ensure backward compatibility.
I have not looked into nvidias own VFPv3-D16 crap, nor NEON yet, but both would be very good to have eventually.