[Theora-codecs] ls there a full decoder source?

Ralph Giles giles at xiph.org
Sat Jan 7 12:24:20 PST 2006


On Sat, Jan 07, 2006 at 07:44:45PM +0000, Don Pedro wrote:

> Hello all and happy new year! This is my first post.

Happy New Year to you too!

> 1. Is there a full source for a Theora decoder working
> on windows which I can easily compile and run?

We don't have a nice SDK package for windows at the moment.
However, the normal source should build. The svn trunk also
has .sln files for building with VS2003 (or later). You can
check it out from http://svn.xiph.org/trunk/theora. Look in
the win32/VS2003 subdir. You'll also need the latest libogg
source release.

If you're not familiar with svn, you can get a copy from
subversion.tigris.org or search for the TortioseSVN and/or
AnkhSVN plugins.

> 3. Can you suggest me what steps and actions are
> required for me to end with such a full decoder source
> working on windows? 

Note that the simplest way to get video playback working
probably is to install the directshow filters and use the
dshow api to display the video. But, that said...

It's only sound that isn't working well on windows at the
moment. If you don't need sound, you can use the included
player_example source. Just modify it to discard Ogg pages
that don't come from the theora substream.

It uses SDL for YUV to RGB conversion and video display.
If this doesn't meet your needs, you can easily replace
the *_video() calls with your own interface.

You can get SDL from http://libsdl.org/

> 4. Does the Theora license include the decoder?

If you use the reference implementation, you must acknowledge
Xiph.org in documentation accompanying versions you distribute
(for free or through sale). Use of the Theora trademark is
contingent on compliance with the specification from Xiph.org
(using the reference implemenation counts here). Aside from
that there are no restrictions.

> 4. Do you believe that can be optimized 4x faster than
> the playback of Video Lan for Theora video on MMX/SSE?

Yes, and this will be necessary for HD playback. For decode only
you might look at http://svn.xiph.org/experimental/derf/theora-exp/ 
which already contains a number of such optimizations. Unfortunately
the assembly is in AT&T syntax suitable for use with gcc. To compile
it with MSVC you will either have to translate the files to Intel
syntax, or compile them separately with gcc or gas and link in the 
object files in your normal build.

Hope that is of some help,
 -r


More information about the Theora-codecs mailing list