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


- Wosemo - 2010-05-20

Thank you for doing all of this work!!!
I also had been working to get OpenMAX work but you have been a step ahead. I got cought on the intersection between OpenMAX and ffmpeg.

Its funny to see, that we have edited mostly the same files and parts with a similar result.
I also hacked the configure exactly with
Code:
INCLUDES="$INCLUDES -I/usr/include/OpenMAX/il"

Maybe you have forgotten to add the debug output for OpenMAX within DVDCodecFactory.cpp. In the patch below I added it and the ability to use it for MPEG4 videos. Is there any bug or why havn`t you add it?

Code:
--- trunk/xbmc/cores/dvdplayer/DVDCodecs/DVDFactoryCodec.cpp    2010-05-18 09:29:17.000000000 +0200
+++ trunk/xbmc/cores/dvdplayer//DVDCodecs/DVDFactoryCodec.cpp    2010-05-20 12:39:41.000000000 +0200
@@ -147,6 +147,11 @@
#elif defined(_LINUX) && !defined(__APPLE__)
   hwSupport += "VDPAU:no ";
#endif
+#ifdef HAVE_LIBOPENMAX
+  hwSupport += "OpenMax:yes ";
+#else
+  hwSupport += "OpenMax:no ";
+#endif
#if defined(_WIN32) && defined(HAS_DX)
   hwSupport += "DXVA:yes ";
#elif defined(_WIN32)
@@ -197,7 +202,7 @@
#if defined(HAVE_LIBOPENMAX)
   if (g_guiSettings.GetBool("videoplayer.useomx") && !hint.software )
   {
-      if (hint.codec == CODEC_ID_H264 || hint.codec == CODEC_ID_MPEG2VIDEO || hint.codec == CODEC_ID_VC1)
+      if (hint.codec == CODEC_ID_H264 || hint.codec == CODEC_ID_MPEG2VIDEO || hint.codec == CODEC_ID_VC1 || hint.codec == CODEC_ID_MPEG4)
     {
       CLog::Log(LOGINFO, "Trying OpenMax Decoder...");
       if ( (pCodec = OpenCodec(new CDVDVideoCodecOpenMax(), hint, options)) ) return pCodec;

I have build xbmc natively on the tegra board with an older nvidia LDK.

Thanks a second time to make it so much faster in gui!!!

The nvidia omx samples are all full working but when trying to play a video supported by OpenMAX the Decoder seems not to work. There is only sound but with the old menu background. No Debug Info Overlay is available. When stoping the Video xbmc crashes...

http://pastebin.com/BbcAD5WY

I also always get this warning:
Code:
open /dev/sequencer or /dev/snd/seq: No such file or directory
what does this mean?


- sraue - 2010-05-20

Wosemo Wrote:I also always get this warning:
Code:
open /dev/sequencer or /dev/snd/seq: No such file or directory
what does this mean?

do you have /dev/sequencer or /dev/snd/seq?

this seems alsa related, maybe your kernel is not build with Alsa Sequencer support (CONFIG_SND_SEQUENCER) or the drivers (snd_seq and snd_seq_device) are not loaded...

from Kernel Help:

Code:
Say Y or M to enable MIDI sequencer and router support.  This
feature allows routing and enqueueing of MIDI events.  Events
can be processed at a given time.

Many programs require this feature, so you should enable it
unless you know what you're doing.



- Wosemo - 2010-05-20

I do not have /dev/sequencer nor /dev/snd/seq.
Alsa and all of its components are fully installed.
even after reinstalling all of them "modprobe snd_seq" exits with "FATAL: Module snd_seq not found."
I am working with the original nvidia kernel image. Then it seems to be their fault...

this is no problem because its not causing any error.


- sraue - 2010-05-20

Wosemo Wrote:even after reinstalling all of them "modprobe snd_seq" exits with "FATAL: Module snd_seq not found."
I am working with the original nvidia kernel image. Then it seems to be their fault...

this is no problem because its not causing any error.

i think so, but if the sound is working i would ignore this


- davilla - 2010-05-20

Wosemo Wrote:Thank you for doing all of this work!!!
I also had been working to get OpenMAX work but you have been a step ahead. I got cought on the intersection between OpenMAX and ffmpeg.

Maybe you have forgotten to add the debug output for OpenMAX within DVDCodecFactory.cpp. In the patch below I added it and the ability to use it for MPEG4 videos. Is there any bug or why havn`t you add it?

Code:
--- trunk/xbmc/cores/dvdplayer/DVDCodecs/DVDFactoryCodec.cpp    2010-05-18 09:29:17.000000000 +0200
+++ trunk/xbmc/cores/dvdplayer//DVDCodecs/DVDFactoryCodec.cpp    2010-05-20 12:39:41.000000000 +0200
@@ -147,6 +147,11 @@
#elif defined(_LINUX) && !defined(__APPLE__)
   hwSupport += "VDPAU:no ";
#endif
+#ifdef HAVE_LIBOPENMAX
+  hwSupport += "OpenMax:yes ";
+#else
+  hwSupport += "OpenMax:no ";
+#endif
#if defined(_WIN32) && defined(HAS_DX)
   hwSupport += "DXVA:yes ";
#elif defined(_WIN32)
@@ -197,7 +202,7 @@
#if defined(HAVE_LIBOPENMAX)
   if (g_guiSettings.GetBool("videoplayer.useomx") && !hint.software )
   {
-      if (hint.codec == CODEC_ID_H264 || hint.codec == CODEC_ID_MPEG2VIDEO || hint.codec == CODEC_ID_VC1)
+      if (hint.codec == CODEC_ID_H264 || hint.codec == CODEC_ID_MPEG2VIDEO || hint.codec == CODEC_ID_VC1 || hint.codec == CODEC_ID_MPEG4)
     {
       CLog::Log(LOGINFO, "Trying OpenMax Decoder...");
       if ( (pCodec = OpenCodec(new CDVDVideoCodecOpenMax(), hint, options)) ) return pCodec;

Not a bug, on purpose. MPEG4 needs a bit-stream filter for openmax, some forms of VC1 too. But I'm not exactly sure of what nvidia's flavor expects for demuxer packets. Join us on IRC, #xbmc-arm and I'll tell you where to find my test-harness app for OpenMax testing.


- davilla - 2010-05-20

openelec.tv Wrote:2)
can you use $use_arch and $use_cpu except
Code:
`expr "X$host_cpu" : 'Xarm.*' > /dev/null && echo --arch=arm --cpu=cortex-a8` \
(so its possible to setup these variables *also* at configure time) you can define $use_cpu and use_arch in the
Code:
case $host in
section at beginning. maybe we must change the section for getting configure options to not overwrite these variables if they are already set. (or maybe better to move the
Code:
case $host in
section after the "AC_ARG_ENABLE" section

I've set use_arch/use_cpu in the $host check for arm. Configure.in needs more work to actually support arm cross-compiling. It gets complicated.


- davilla - 2010-05-24

openelec.tv Wrote:Hi davilla,
1)
you do in configure.in:
Code:
INCLUDES="$INCLUDES -I/usr/include/OpenMAX/il"
can you please remove this line and include the needed headers with
Code:
# include OpenMAX/il/header.h
in the sourcefiles

There's a problem with doing this, OpenMax headers have includes like "#include <OMX_Core.h>" and so they need a -I path setup or the include will not be found.

So while "#include OpenMAX/il/OMX_Core.h" works in our code, it fails because the OpenMax include cannot find what it includes.


- jussi01 - 2010-05-31

jefrey99,

Did you eventually get this working on the iMX51? if so, would you care to share exactly how you did it?

Jussi


- Neiljay - 2010-06-06

New beagleboard coming soon:

DM3730 1GHz CortexA8 512MB ram onboard LAN only $30 more than the current one.

http://www.linuxfordevices.com/c/a/News/BeagleBoardxM/

I want want!!


- Soju - 2010-06-07

I really see no advantage at running Arm at that price point.


- McGeagh - 2010-06-07

Although I see the Cortex A8 as outdated compared to the Cortex A9, its still cheaper than the tegra2, and probably easier to get hold on (not to mention better support for drivers etc)
I suppose for $30 more, its worth it (note, not talking consumer devices here)


- CrashX - 2010-06-07

McGeagh Wrote:Although I see the Cortex A8 as outdated compared to the Cortex A9, its still cheaper than the tegra2, and probably easier to get hold on (not to mention better support for drivers etc)
I suppose for $30 more, its worth it (note, not talking consumer devices here)

Hmm ... Boxee box ( tegra 2 ) is rumored to be less than $200 and it should support xbmc. Hopefully it will come out end of this month.

Any reason why beagle board don't ship with hdmi out ?


i.mx515 XBMC - southhh - 2010-06-07

hi,JEFERY99, have you done with the IMX515 ?

I start this job yesteday, using the arm-camelot branch.

I meet the configure error :

checking for main in -lEGL... no

but there is libegl in the use/lib.

and can you give some advise how to get the XMBC run on the IMX515 and get some configure changes

thanks


- wigout - 2010-06-17

Hello world,

Earlier today I posted this in maybe the wrong place: HDX Bone / TCC8900 / Mali 200 GPU .

(I posted it at: XBMC Community Forum > Help and Support > XBMC General Help and Support > XBMC for Linux and XBMC Live Specific Support)

The short of it is that the HDX Bone is a Telechips TCC8900 SoC / ARM1176JZF-S with the Mali 200 GPU.

The Mali-200 supports both the OpenGL ES 1.1 and OpenGL ES 2.0 graphics standards.

Anyway, found this thread later and seemed like maybe this thread or this section (XBMC Feature Suggestions) is maybe where my original post ought to have landed.

Anyway not trying to be a cross-post-hole, just attempting to find the right place for the question of the suitability of the HDX Bone as port target for XMBC.

-wigout


- davilla - 2010-06-17

wigout Wrote:Hello world,

Earlier today I posted this in maybe the wrong place: HDX Bone / TCC8900 / Mali 200 GPU .

(I posted it at: XBMC Community Forum > Help and Support > XBMC General Help and Support > XBMC for Linux and XBMC Live Specific Support)

The short of it is that the HDX Bone is a Telechips TCC8900 SoC / ARM1176JZF-S with the Mali 200 GPU.

The Mali-200 supports both the OpenGL ES 1.1 and OpenGL ES 2.0 graphics standards.

Anyway, found this thread later and seemed like maybe this thread or this section (XBMC Feature Suggestions) is maybe where my original post ought to have landed.

Anyway not trying to be a cross-post-hole, just attempting to find the right place for the question of the suitability of the HDX Bone as port target for XBMC.

-wigout

what hardware video decoding does it support ?