[theora-dev] Parallel processing for Theora?
spam_receptacle_ at hotmail.com
Mon Mar 22 00:14:07 PDT 2010
> Date: Sun, 21 Mar 2010 18:21:03 -0400
> From: tterribe at email.unc.edu
> Id Kong wrote:
> > The problem with starting with a parallel decoder is that decoding is
> > much easier. Correct me if I'm wrong but decoding requires much less
> That depends on resolution and bitrate, of course. 400 Mbps 2160p files
> are quite difficult to decode in real time (with current hardware). But
> the point was that a good bit of the work needed to make a parallel
> decoder would also be required to make a parallel encoder anyway, so
> it's a good first step. Especially as the code is much simpler.
...but of course, decoding 400 Mbps 2160p video is cheaper than encoding that same quality of video! The point is that encoding is more processor intensive than decoding and thus a better test. It could be that decoding such high resolution video is memory bound rather than processor bound...
> > not an outrageous idea but I think it will be better to leave threading
> > to the client and support parallelism through the API much like Vorbis.
> This is non-trivial to export, and there is a cost to doing it that way.
> There are too many complex data dependencies to make exporting
> within-frame parallelism a good idea. However, once you go to
> multi-frame parallelism, you have to start changing the way rate control
> works (and worse, _exposing_ how rate control works to the client,
> because you may now have to dump frames that are in the process of being
> encoded and start over, e.g., when you decide to insert a keyframe).
> This could maybe be done for unconstrained two-pass with reasonably
> minimal pain, but as I've already said, that's not the interesting case.
I just wanted to check whether it were feasible to export blocks of work like Vorbis. I'll take your word for it that it is not possible since I don't currently understand the source code for the encoder...
Live connected with Messenger on your phone
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the theora-dev