Re: [PATCH] v4l: add V4L2_CID_MPEG_VIDEO_FORCE_FRAME_TYPE

Nicolas Dufresne
2016-01-13T15:02:50Z

[-- Attachment #1: Type: text/plain, Size: 1426 bytes --]

Le mercredi 13 janvier 2016 à 20:03 +0800, Wu-Cheng Li a écrit :
> Some drivers also need a control like
> V4L2_CID_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE to force an encoder frame
> type. This patch adds a general V4L2_CID_MPEG_VIDEO_FORCE_FRAME_TYPE.
>
> This control only affects the next queued buffer. There's no need to
> clear the value after requesting an I frame. But all controls are set
> in v4l2_ctrl_handler_setup. So a default DISABLED value is required.
> Basically this control is like V4L2_CTRL_TYPE_BUTTON with parameters.
> How to prevent a control from being set in v4l2_ctrl_handler_setup so
> DISABLED value is not needed? Does it make sense not to set a control
> if it is EXECUTE_ON_WRITE?

I don't like the way it's implemented. I don't know any decoder that
have a frame type forcing feature other they I-Frame. It would be much
more natural to use a toggle button control (and add more controls for
other types when needed) then trying to merge hypothetical toggles into
something that manually need to be set and disabled.

>
> Wu-Cheng Li (1):
>   v4l: add V4L2_CID_MPEG_VIDEO_FORCE_FRAME_TYPE.
>
>  Documentation/DocBook/media/v4l/controls.xml | 23
> +++++++++++++++++++++++
>  drivers/media/v4l2-core/v4l2-ctrls.c         | 13 +++++++++++++
>  include/uapi/linux/v4l2-controls.h           |  5 +++++
>  3 files changed, 41 insertions(+)
>

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 181 bytes --]