Posts: 7
Joined: Mar 2010
Reputation:
0
as suspected .. more errors ..what is Camelot-arm?
Posts: 7
Joined: Mar 2010
Reputation:
0
Hello McGeagh,
I'm glad to hear that you have paved the way!
I am using a Freescale SoC called i.MX51, it is Cortex A8 based and runs at 800Mhz (but you can over clock to 1GHz with a higher core voltage) it has a VPU (chips and media) and GPU (AMD) which can decode 720p@30fps and supports OpenGL/ES 2.0 (27M tri/s , 166M pix/s).
I am getting codec compile errors that looks like they stem from not being able to find files in an x86 directory. I'm not sure the CortexA8 can decode video with a SW codec and it shouldn't need to with the VPU.
Did you have this issue with the OMAP?
cd ./libswscale/ && ln -sf libswscale.so.0 libswscale.so
make[2]: Leaving directory `/home/ubuntu/drive/xbmc_on_arm/xbmc/cores/dvdplayer/Codecs/ffmpeg'
gcc -o ../../../../system/players/dvdplayer/avutil-50-arm-linux.so -shared -fPIC -rdynamic --soname,../../../../system/players/dvdplayer/avutil-50-arm-linux.so ffmpeg/libavutil/*.o \
`cat ../../DllLoader/exports/wrapper.def` ../../DllLoader/exports/wrapper.o
gcc -o ../../../../system/players/dvdplayer/avcodec-52-arm-linux.so -shared -fPIC -rdynamic --soname,../../../../system/players/dvdplayer/avcodec-52-arm-linux.so ffmpeg/libavcodec/*.o \
ffmpeg/libavcodec/x86/*.o `cat ../../DllLoader/exports/wrapper.def` ../../DllLoader/exports/wrapper.o
gcc: ffmpeg/libavcodec/x86/*.o: No such file or directory
make[1]: *** [../../../../system/players/dvdplayer/avcodec-52-arm-linux.so] Error 1
make[1]: Leaving directory `/home/ubuntu/drive/xbmc_on_arm/xbmc/cores/dvdplayer/Codecs'
make: *** [dvdpcodecs] Error 2
ubuntu@ubuntu-desktop:~/drive/xbmc_on_arm$
it does take much longer to compile on the ARM but overall I see less headache then with scratchbox or some other tools.
Posts: 7
Joined: Mar 2010
Reputation:
0
Oh and yes all of the VPU / GPU drivers are released
Posts: 178
Joined: Oct 2008
Reputation:
0
McGeagh
Team-XBMC ARM Developer
Posts: 178
I am familiar with the SoC but didnt realise the GPU SDK was released. Interesting...
Anyways, yes I have come across that error before.
In the makefile, it sets the dir to look in the x86 dir, change that to look at the equivalent arm dir that exists in ffmpeg already. Note that libswscale does not have this equivalent dir for arm. For that lib, just omit those files as it can do without them.
Hope that helps.
Please check the arm-camelot branch for how I do it if you are stuck.
Thanks.
Posts: 178
Joined: Oct 2008
Reputation:
0
McGeagh
Team-XBMC ARM Developer
Posts: 178
Hmm, and you say the sgx demos run fine?
That log is telling me that it cant pick up the sgx drivers. GL vendor/renderer/version/extensions should not be blank. they arent blank for me and mines a beagleboard too.
What version of the SGX SDK are you testing with? What revision beagleboard are you working with?
Ive only tested with version 3.00.00.05, 6, 8 and 9... with 9 being the one im currently working on.
I briefly tested the later 3.01.00.02 but failed to get it working (hung on SDL Poll Event), but i didnt get those issues in my xbmc.log.
Posts: 14
Joined: Feb 2010
Reputation:
0
2010-03-24, 13:55
(This post was last modified: 2010-03-24, 14:29 by djhalmy.)
Hi Mcgeagh,
I'm using the version 3.01.00.02 of the SGX SDK and the test and demos run perfectly. My beagleboard is the revision C4.
The reason to install the version 3.01.00.02 of the SGX SDK was that I 'm using the distro Angstrom whit an uImage for kernel 2.6.32. By the other hand from the angstrom distibution packages you only can download the later version of the libomap3 and for that I', using the version 3.01.00.02.
I don't use OpenEmbedded and for that I don't create packages ipk of SDK_3.00.00.09.bin. Do you Know any way to generate packages ipk without using OpenEmbedded? I had several problems trying to use it.
But I'm very interested in use the later 3.01.00.02 because this version is appropriate for my kernel 2.6.32.
Other thing, When you tested the version 3.01.00.02, what was your xbmc.log? what GL vendor/renderer/version/extensions did you obtain? In theory, GL vendor/renderer/version/extensions are asigned by glew.h.
Thanks for your free time
Posts: 14
Joined: Feb 2010
Reputation:
0
2010-03-25, 14:13
(This post was last modified: 2010-03-25, 14:44 by djhalmy.)
Hi, what do you mean when you tell: there is no glew in OpenGL ES ? Do you refer to that instead of it uses glew.h uses gl2.h?
When I print GL vendor/renderer/version/extensions in RenderSystemGLES.cpp they are the same that gl2.h file ascribes but when it runs the function of gl2.h glGetString( GL vendor/renderer/version/extensions) it fails. I will try to investigate why.
Thanks
Posts: 178
Joined: Oct 2008
Reputation:
0
McGeagh
Team-XBMC ARM Developer
Posts: 178
glew is the GL extension wrangler... for OpenGL
There is no glew equivalent for OpenGL ES.
You shouldnt be using glew.h anywhere.
Regardless of this, glGetString is a standard GL ES call, not glew, so talking about getting the vendor/version/etc has nothing to do with glew.
I am unsure why your glGetString calls fails, as mine hasnt ever failed. (By fail, i assume you mean it returns a blank string)
I refer to gl2extimg.h because it includes gl2ext.h, gl2platform.h and gl2.h (I may change this as gl2extimg.h is specific to the GPU)
It still seems to be pointing to an issue with the driver, and not xbmc's code.
Let me know how it goes.
Posts: 70
Joined: Feb 2010
Reputation:
0
Hi,
Could you let me know how you install the SGX drivers on Ubuntu for BeagleBoard. I'm looking for the compiled ones, I don't want to compile them with OpenEmbedded. I suppose you need more than simply copy some archives from the SDK.
Also, I'm developing with Angstrom. In this case, I've installed the drivers with opkg. There are some pre-built ipk packages.
Thanks,
Vane.