Hi Zhaoxuan, On Fri, Feb 14, 2025 at 12:19:23PM +0800, Zhaoxuan Zhai wrote: > Hi all, > > Sorry I made a mistake. It should be VIDIOC_ENUM_FRAMESIZES instead of > VIDIOC_ENUM_FMT. I'm sorry for the mistake. > > 在 2025/2/14 12:08, Zhaoxuan Zhai 写道: > > Hi all, > > > > We are working on a camera driver. We plan to use v4l2 interface to send > > image data to users. We have a question we'd like to ask. > > > > The situation we are facing is as follows. > > > > We have an image processing unit that can process raw data collected by > > the sensor into the V4L2_PIX_FMT_NV12M format and send it to the user. > > > > However, due to the requirements of the V4L2_PIX_FMT_NV12M format, the > > width and height of the image must be divisible by 16. > > > > For example, when the sensor provides an image size of 2104x1560, after > > NV12M encoding, it should be pading to 2112x1566. But the additional 8 > > rows and 8 columns are padded with 0s and contain no actual content. > > > > So, we would like to ask, in this case, what size should we list in > > VIDIOC_ENUM_FMT? Should it be the actual image size with content, > > 2104x1560, or the padded size, 2112x1566?" I'd say the actual image size (i.e. where you have pixel data). The sizeimage field needs to reflect the padding and the user needs to be aware how the data is laid out in memory. Also cc Hans. -- Regards, Sakari Ailus