[theora] Additional encoding options for theora

Basil Mohamed Gohar abu_hurayrah at hidayahonline.org
Wed Nov 18 08:58:30 PST 2009


On 11/18/2009 11:48 AM, Benjamin M. Schwartz wrote:
> Basil Mohamed Gohar wrote:
>   
>> On 11/18/2009 11:16 AM, Benjamin M. Schwartz wrote:
>>     
>>> Basil Mohamed Gohar wrote:
>>>   
>>>       
>>>> Hey all,
>>>>
>>>> I've been using the example reference encoder that comes with Theora
>>>> reference implementation from SVN, but there are very few options to
>>>> tweak encoding parameters in contrast to other codecs utilities such as
>>>> x264, mpeg2enc, etc.
>>>>     
>>>>         
>>> This is deliberate.  libtheoraenc is designed with the philosophy that the
>>> user should specify constraints on the output bitrate and encode CPU time,
>>> and the encoder should produce the highest possible quality given the
>>> constraints.
>>>
>>> What other parameters do you wish for?
>>>
>>> --Ben
>>>   
>>>       
>> Well, without knowing exactly what's possible, I am not sure.  I am sure
>> some time-quality trade-off decisions can still be made, and some of
>> these can be exposed through the example encoder or another utility, if
>> it's more appropriate.
>>     
> As I said, libtheoraenc allows the user to specify their tradeoff between
> encode time and output quality, using the --speedlevel argument in
> ffmpeg2theora.
>   
I'm specifically referring to encoder_example that's distributed with
the reference Theora source code, and I think that setting maps to
--speed, which I just started playing around with.
>   
>> This would help people like me test various
>> parameters and help the developers further refine the code, for
>> example. 
>>     
> Tuning of libtheoraenc is definitely valuable, and there is much to be
> done.  So far, the "development tunables" have been kept far from the user
> interfaces, on the grounds that "actual users" shouldn't have to set any
> parameters.  Also, the parameters that could most use tuning, such as the
> quantization matrices, are not simple to specify.  Nonetheless, it's a
> good point: we don't have any easy way for tuners to experiment with the
> innards unless they're willing to write a bit of C.
>   
That's definitely what I was alluding to, i.e., something between code
and just a "quality/bitrate" setting.
>   
>> As an enthusiast, I love to be able to fiddle the knobs and
>> switches myself to see their impact, even if only minor.
>>     
> I've had this feeling too, but of course, libtheoraenc is not a toy.
>   
I don't know what that means, exactly.  I use Theora because it's free
software, but I also enjoy using it for fun as well.  If we can make
testing and tuning fun, why not?  Or, conversely, we shouldn't prevent
testing and tuning from being fun.
>   
>> Incidentally, why did you reply to me directly, and then CC the list? 
>> Wouldn't replying to this message and addressing the list be
>> sufficient?  I've noticed this behavior before when I've posted
>> sometimes, and it messes up my filtering...
>>     
> This list doesn't set a reply-to, so that's Thunderbird's default behavior
> on "reply-all".
>   
Thunderbird 3.0 (beta) has the Reply-to-list feature by default.  I
think it's available in the menu as well in older versions, or perhaps
through Ctrl-L.  I used to have the same problem, but 3.0 is a big
improvement in that way.  Still beta, though...


More information about the theora mailing list