Re: [PATCH v1 16/19] v4l: Add encoding camera controls.

Sylwester Nawrocki
2013-09-09T09:10:02Z

On 09/09/2013 11:00 AM, Kamil Debski wrote:
[...]
>>>> We have QP controls separately for H264, H263 and MPEG4. Why is that?
>>>> Which one should I use for VP8? Shouldn't we unify them instead?
>>>
>>> I can't quite remember the details, so I've CCed Kamil since he added
>> those controls.
>>> At least the H264 QP controls are different from the others as they
>>> have a different range. What's the range for VP8?
>>
>> Yes, it differs, 0-127.
>> But I feel this is pretty unfortunate, is it a good idea to multiply
>> controls to have one per format when they have different ranges
>> depending on the selected format in general? Perhaps a custom handler
>> would be better?
>>
>>> I'm not sure why the H263/MPEG4 controls weren't unified: it might be
>>> that since the
>>> H264 range was different we decided to split it up per codec. But I
>>> seem to remember that there was another reason as well.
>
> We had a discussion about this on linux-media mailing list. It can be found
> here:
> http://comments.gmane.org/gmane.linux.drivers.video-input-infrastructure/32606
> In short, it is a mix of two reasons: one - the valid range is different for
> different formats and second - implementing controls which have different
> min/max values depending on format was not easy.

Hmm, these seem pretty vague reasons. And since some time we have support
for dynamic control range update [1].

> On the one hand I am thinking that now, when we have more codecs, it would
> be better
> to have a single control, on the other hand what about backward
> compatibility?
> Is there a graceful way to merge H263 and H264 QP controls?

[1] https://patchwork.linuxtv.org/patch/16436/

--
Regards,
Sylwester