I wanna use the theora codec for a point to point video chat in an optimum way.<br>So my
plan is to develop theora as it&#39;s compression is sensitive with the
available network bandwidth (Change the compression ratios
dynamically). <br>I am trying to implement this functionality in to theora.<br>
<br><br><div class="gmail_quote">On Feb 1, 2008 4:44 PM,  &lt;<a href="mailto:xiphmont@xiph.org">xiphmont@xiph.org</a>&gt; wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d">On Feb 1, 2008 5:29 AM, Asanka Dilruk &lt;<a href="mailto:adilruk@gmail.com">adilruk@gmail.com</a>&gt; wrote:<br>&gt; I am going to improve theora codec with dynamically changing way. In this<br>&gt; case we want to change compression parameters like video_q<br>
<br></div>Although the mainline encoder does not currently treat it this way,<br>the video_q is intended to work like a Lagrange multiplier, and the<br>internal qi is adjusted to optimize the actual encoding mode to match<br>
the desired R/D tradeoff.<br><br>There are two ways to govern encoding with theora; one is to set up a<br>bitrate range to which it must stick (the lagrange multiplier and qi<br>both are manipulated internally to match a bitrate traget) and a<br>
constant-quality mode where the lagrange multiplier is fixed and the<br>qi (actually, three qis for a given frame) are chosen to acheive the<br>best possible rate/distortion ratio.<br><br>In neither case should the application be manipulating the qi directly<br>
on the fly.<br><br>&gt; sharpness<br><br>The &#39;sharpness&#39; parameter, as provided by VP3 and passed through to<br>the Theora api in the mainline, is essentially nonfunctional. &nbsp;I&#39;m not<br>sure why On2 called it &#39;sharpness&#39; but that&#39;s not what it did. &nbsp;In the<br>
&#39;Thusnelda&#39; encoder, which will become the new mainline encoder<br>shortly, there is no such setting.<br><br>Actual sharpness control is acheived by manipulating the quantization<br>matricies and process, something that has deep-reaching effects on<br>
every aspect of the codec&#39;s tuning. &nbsp;These numbers are not altered<br>lightly (although they can be altered, and in fact should/probably<br>will be altered considerably from what they currently are).<br><br>&gt; keyframe is generated.<br>
<br>Again, a toplevel application has very little business making ths<br>decision. &nbsp;Keyframes are generated for only two reasons: The max<br>interval between keyframes has passed, or a keyframe would require<br>fewer bits than a P frame. &nbsp;Only the theora internals have any way of<br>
knowing this information. &nbsp;A Keyframe (I frame) and a P frame will<br>have the same distortion characteristics. &nbsp;A keyframe is not higher<br>quality than P frame, just (usually) bigger and allows seeking.<br><div class="Ih2E3d">
<br>&gt; When i set video quality parameter using<br>&gt; cpi-&gt;pb.info.quality in CommpressKeyFrame in encoder_toplevel it will not<br>&gt; change dynamically. Can you please help me to do this. Wich function should<br>
&gt; i cange to achieve my objective....<br><br></div>You have not actually stated your objective, just what you&#39;re<br>attemting to do with theora (which is not going to work, at least not<br>as you describe).<br>Could you explain the end funtionality you&#39;re attempting to acheive<br>
(ie, what you&#39;re really trying to do, not how you&#39;re trying to do it)?<br><br>Monty<br></blockquote></div><br><br clear="all"><br>-- <br>___