On Tue, May 26, 2020 at 12:09 PM Hans Verkuil <hverkuil-cisco@xxxxxxxxx> wrote: > > This series adds the encoder spec and updates the VIDIOC_G/S_PARM > documentation. > > This is a follow-up of the original "Stateful Encoding: final bits" > series (1). > > The patches in that series that add support for V4L2_CID_MPEG_VIDEO_ENC_FRAME_RATE > and V4L2_BUF_FLAG_TOO_SMALL have been dropped (the first is not necessary > and the second can be skipped for now, see the irc discussion with > Nicolas [3]). > > The encoder spec has been updated since [2] with the following > changes: > > - Document the optional VIDIOC_ENUM_FRAMEINTERVALS ioctl. > > - Document how to use VIDIOC_S_PARM: > > 1) calling S_PARM for the OUTPUT queue sets both the raw frame interval > (this is a hint only) and the coded frame interval. > > 2) calling S_PARM for the CAPTURE queue sets the coded frame interval > only. This is optional and can be used for off-line encoding. In > that case the OUTPUT frame interval can be used by the driver to > schedule multiple encoders. > > Ideally S_PARM for the OUTPUT queue would just provide a hint, but > existing encoder drivers all use S_PARM for the OUTPUT queue to > define the coded frame interval, and that can't be changed. > > - Added a note that if a capture buffer is too small it will be > returned with V4L2_BUF_FLAG_ERROR and that more work has to be > done to properly support this corner case. > > - Clarify in the 'Encoding' section that there are more reasons > why 'a buffer queued to OUTPUT may result in more than one buffer > produced on CAPTURE'. > > Added in v3: > > - Fix some minor typos. > > - Make it more explicit that setting S_PARM(OUTPUT) also sets the > CAPTURE frame interval. > > - Added a new V4L2_FMT_FLAG_ENC_CAP_FRAME_INTERVAL flag to indicate > that S_PARM(CAPTURE) can be set separately. > > I think that with these changes this stateful encoder spec is ready > to be merged. Acked-by: Tomasz Figa <tfiga@xxxxxxxxxxxx> Thanks Hans and everyone for the help with moving this forward. Best regards, Tomasz