[ogg-dev] oggPCM for general data

Ralph Giles giles at xiph.org
Fri Dec 8 11:19:48 PST 2006


On Fri, Dec 08, 2006 at 01:37:15AM -0500, Bill Johnson wrote:

>   Has anyone built libogg and/or liboggz using a cross compiler such as the
> arm-elf GNU port?

Conrad didn't mention is explicitly, but libogg also works find on 
arm. For a small embedded app, I'd just compile the two source files 
into a static library manually. If you're not using a smart linker,
you may also want #ifdef out one or both of the bitpacker 
implementations (oggpack*) to save additional footprint.

> oggFLAC had a makefile.lite that looked geared toward embedded development
> but the FLAC library size was HUGE, plus other limits. I am hoping to fit
> executable on 128K of FLASH memory.

FLAC isn't quite as lightweight an implementation as the other codecs, 
but a reduced-capability codec could definitely fit in 128K flash. FLAC 
would probably also work for any smoothly varying time-series data. But  
if you have the bandwidth, sending uncompressed data is must less work 
(for you and your processor).

As a final note, there's an experimental zero-copy Ogg implementation in 
our svn repository. The API is necessarily different and liboggz hasn't 
been ported, but if you find memory bandwidth is a bottleneck at your 
data rates, it will help. libogg does at least one memcpy() on all 
data that goes through it.

  http://svn.xiph.org/trunk/ogg2/

Sounds like a fun application. Keep us posted. :)

 -r


More information about the ogg-dev mailing list