[theora-dev] MMX patch to speed up Theora decoding

Chih-Chung Chang jochang at gmail.com
Wed Mar 28 11:00:09 PDT 2007


On 3/29/07, j at v2v.cc <j at v2v.cc> wrote:
> On Mar 28, 2007, at 15:06:54, Chih-Chung Chang wrote:
> > I found access to a MacBook, so here is how I build the patched
> > Theora,
> > hope this works for you: (Using XCode 2.4.1)
> >
> > tar xzvf libtheora-1.0alpha7.tar.gz
> > gzip -cd theora.patch.20070327.gz | patch -p0
> > cd libtheora-1.0alpha7
> > ./configure --with-ogg=/Volumes/USB/build/
> > vi config.h
> > # add #define USE_MMX
> > vi lib/Makefile
> > # add "-Wl,-read_only_relocs,suppress" just before -o in the
> > following line:
> > # LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $
> > (CFLAGS) \
> > #     $(AM_LDFLAGS) $(LDFLAGS) -Wl,-read_only_relocs,suppress -o $@
>
> works great now, i would still prefere to only have one way of detecting
> and activating mmx code. i agree that for development its better to
> do it
> inline but in terms of maintainability it is better to just have one way
> of adding mmx/asm code, i put a patch that moves your code into x86_32
> and adds the functions for the respective dsp calles at:
>
>    http://people.xiph.org/~j/theora_idct_and_dctdecode_filter_mmx.patch
>
> if there are no bigger problems with the patch,
> i will commit it in the next days to svn.
>
> j

Hi,

Thanks a lot for cleaning up the patch! It looks good.
Attached is an incremental patch which removes some unnecessary code
in idct.c (now idct_mmx.c).

Thanks,
Chih-Chung Chang
-------------- next part --------------
A non-text attachment was scrubbed...
Name: idct.more
Type: application/octet-stream
Size: 15311 bytes
Desc: not available
Url : http://lists.xiph.org/pipermail/theora-dev/attachments/20070329/5293cf51/idct.obj


More information about the theora-dev mailing list