[theora] Theora for webcam/conferencing use
Mihai Balea
mihai at hates.ms
Thu Oct 15 20:44:15 PDT 2009
On Oct 15, 2009, at 12:11 PM, Basil Mohamed Gohar wrote:
> My purpose in mentioning all of this is to ask others' experience in
> using Theora for low-bandwidth or video conferencing settings. Are
> there more advanced settings that are better optimized for a
> "talking-head" kind of video, where there's more motion in a fixed
> area
> of a frame than on the fringes?
A couple of years ago we used Theora to implement a video call /
conference solution.
Things worked reasonably well in the end, but we had to do a lot of
tweaking and duct taping to compensate for Theora's weak points.
For a relatively detailed description of the major issues we faced,
please take a look at this source file (part of iaxclient project).
The interesting stuff is at the top of the file:
http://iaxclient.svn.sourceforge.net/viewvc/iaxclient/branches/2.1/lib/codec_theora.c?revision=1349&view=markup
Not much to add to that... while Theora is great for storing, playing
and streaming static video, I believe it is lacking in features
related to live video streaming and conferencing. Granted, we used it
back in the pre-1.0 days and things might have changed in the
meanwhile. I really hope that is the case.
One little trick you might find useful is to increase the ratio of
bandwidth assigned to key frames. In a talking-head scenario, there's
very little difference from one frame to the other, so the codec uses
the available bandwidth to improve the image quality with each p-
frame. This has the effect of rendering a rough key frame and slowly
improving it only to switch back to another rough key frame making the
video look "jumpy". Assigning more bandwidth to the key frame evens it
out.
Hope this helps...
Cheers,
Mihai
More information about the theora
mailing list