[maemo-developers] [maemo-developers] Ogg Vorbis and the N800
From: Simon Pickering S.G.Pickering at bath.ac.ukDate: Wed Jan 31 01:56:19 EET 2007
- Previous message: [maemo-developers] Ogg Vorbis and the N800
- Next message: [maemo-developers] Can't create application on test.maemo.org
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
> > Hi > > > > as far as I can tell the n800 with the OMAP2420 processor has a vfp > > (vector floating point unit; see [1] ) Based on this I wanted to find > > out if vorbis could take advantage of this unit by default. > > > > To make it short: Yes it works - BUT it is just painful! > [...] > > Conclusion: > > It works but the cpu load is high. Vorbis decoding takes almost 80% > > cpu. I also tried MPlayer 1.0rc1-maemo.8 which has the integer based > > Tremor decoder codec [4] nicely integrated. Tremor needs around 12% > > cpu for the same ogg file. (That is an expected scale up from the 770 > > experience - tremor takes around 20% cpu on the 770 - due to the > > faster cpu of the n800) > > > > It exceeds my skills to analyze this much further. However it seems > > that the vorbis decoder is not vfp optimized ;-) [yet?]. > > Did you specify any compiler flags or just compile as-is? > > I'm not 100% sure but I've let myself belive (based on > comments on the IRC channel) that it won't compile with vfp > unless you specify "-mfpu=vfp -mfloat-abi=softfp" for the > compiler. Also based on the chatting on #maemo, > "-mcpu=arm1136j-s" might be worth it. Just using the "-mfpu=vfp -mfloat-abi=softfp" flags (I couldn't remember the exact -mcpu setting), produces a gstreamer vorbis plugin with a CPU load of ~30% playing the same file. So better, but still not too good. I wonder why this is so slow compared with the integer version (does the integer version produce worse sound?). Files are here (including the ~12% load tremor gst plugin): http://people.bath.ac.uk/enpsgp/temp/vorbis-stuff.tar.gz Put the libgst*.so files in /usr/lib/gstreamer-0.10/ and the others in /usr/lib/, note that you may not need all of the files in the tarball as some already exist, namely libao* and libgstvideo4linux.so. Make sure you symlink the files from *.so.X.x -> *.so.X and again from *.so.X -> *.so Cheers, Si
- Previous message: [maemo-developers] Ogg Vorbis and the N800
- Next message: [maemo-developers] Can't create application on test.maemo.org
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]