[theora-dev] Multi-Thread Theora Encoder

Unga unga888 at yahoo.com
Sun Oct 7 05:04:10 PDT 2007


Hi Felipe

I gave it a try your Multi-Thread Theora Encoder.

It has following errors:
1. -t is an invalid option
2. File path cannot contain space (ie. A directory
name has spaces)

It has following issues:
1. Theora file size is larger without specifying
--number-of-threads
2. Resize option?
	Hey, where is the resize option? My input is
1920x1080p YUV4MPEG2 file. I should have only one
master copy and create different size Theora files out
of it, isn't it? If not I may soon run out of disk
space. 

3. Video stream cannot taken from stdin
	After all the audio file is the same irrespective of
the size of the output Theora file. My intermediate
1920x1080p YUV4MPEG2 file is nearly 10 times bigger
than its original raw mjpegb yuvj422p 1920x1080p file.
Although its not the most efficient, but sometimes
when the disk space is most critical, I could pipe the
intermediate YUV4MPEG2 stream to Theora encoder if its
accepts video stream from stdin as follows:

mplayer -vo yuv4mpeg  mjpegb-yuvj422p-1080p.mov | 
./encoder_example -o out-720p.ogg ... -

Is it possible in first place to create Theora files
as above by piping? Does it still require an
intermediate  YUV4MPEG2 defeating my objective to save
space? How to specify write to stdout in mplayer -vo
yuv4mpeg?

Best Regards
Unga
 

--- Felipe Portavales Goldstein <portavales at gmail.com>
wrote:

> I uploaded the changes to the branch:
> http://svn.xiph.org/branches/theora-multithread/
> 
> This version is a branch from the current SVN trunk.
> I used the theora_control to set the number of
> threads as Giles sugested.
> 
> to run the example you can specify the number of
> threads with the flag
> --number-of-threads
> 
> For example:
> 
> ./encoder_example --number-of-threads 1
> ~/video-tests/pf01.yuv -o
> /tmp/thread.ogg
> 
> 
> Please,
> Test in different machines and with different
> videos.
> 
> 
> Cheers,
> Felipe
> 
> 
> On 10/3/07, Ralph Giles <giles at xiph.org> wrote:
> > On Wed, Oct 03, 2007 at 12:57:59AM -0300, Felipe
> Portavales Goldstein wrote:
> >
> > > As far as I tested the slowdown is less than 1
> percent or irrelevant.
> >
> > Good, we should be able to include this in the
> mainline then.
> >
> > > The only big difference in terms of performance
> is the extra-overhead
> > > in the PickModes function call and a extra final
> loop to re-order the
> > > Motion Vectors produced by each thread.
> >
> > So this overhead can be skipped when there's only
> one thread.
> >
> > > The only thing that I should do before submit is
> a way to control the
> > > number of threads at run time (discover the
> number of CPUs at run
> > > time). By now I have to recompile the code to
> have a different number
> > > of threads running.
> >
> > The best way to do this is through the
> theora_control() interface, since
> > applications will want control, and determining
> the number of available
> > CPUs is very platform dependent.
> >
> >  -r
> >
> 
> 
> -- 
> ________________________________________
> Felipe Portavales Goldstein <portavales at gmail>
> Undergraduate Student - IC-UNICAMP
> Computer Systems Laboratory
> http://www.students.ic.unicamp.br/~ra023772/
> _______________________________________________
> theora-dev mailing list
> theora-dev at xiph.org
> http://lists.xiph.org/mailman/listinfo/theora-dev
> 



       
____________________________________________________________________________________
Building a website is a piece of cake. Yahoo! Small Business gives you all the tools to get online.
http://smallbusiness.yahoo.com/webhosting 


More information about the theora-dev mailing list