Theora running on ARM device without floating point support
Hamilton Vera <[email protected]>
| Newsgroups | gmane.comp.multimedia.ogg.theora.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi masters, I am trying to deploy theora in Fressacle iMX27 (ARM-9) processor. This hardware does not support floating point operations, i've compiled the libtheora with --disable-float option . mx27# cat /proc/cpuinfo Processor : ARM926EJ-S rev 4 (v5l) BogoMIPS : 199.06 Features : swp half thumb fastmult edsp java CPU implementer : 0x41 CPU architecture: 5TEJ CPU variant : 0x0 CPU part : 0x926 CPU revision : 4 Cache type : write-back Cache clean : cp15 c7 ops Cache lockdown : format C Cache format : Harvard I size : 16384 I assoc : 4 I line length : 32 I sets : 128 D size : 16384 D assoc : 4 D line length : 32 D sets : 128 Hardware : Freescale i.MX27ADS Revision : 27021 Serial : 0000000000000000 In this example I will convert a yuv file with 150 frames (320x240 ~ 17280000 bytes ) to an ogg file mx27# time ./yuv2theora File size = 17280000 This video has 150 frames! real 1m1.641s user 1m0.800s sys 0m0.390s Unfortunately the performance is not that good. As a result I've converted a ~17MB yuv file to an 473KB ogg file in 61 seconds using 99% of CPU. Any way to improve this? The source code used in this test is available at : http://www.imxdev.org/wiki/images/c/cd/Yuv2theora.gz Thanks in advance -- Hamilton Vera int Administrator (char Network[],char ComputationalSystems[]) http://hvera.wordpress.com