Hi,
I found inconsistency about virtual buffer size definition between NvVideoEncoder
and v4l2_nv_extension.h
I use Jetson AGX Xavier with JetPack 4.6.2 ( L4T 32.7.2).
In NvVideoEncoder::setVirtualBufferSize
. Unit of Virtual Buffer Size has defined as bytes
/**
* Sets the virtual buffer size of the encoder.
*
* Calls the VIDIOC_S_EXT_CTRLS IOCTL internally with Control ID
* #V4L2_CID_MPEG_VIDEOENC_VIRTUALBUFFER_SIZE. Must be called after
* setFormat on both the planes.
*
* @param[in] size Virtual buffer size, in bytes.
* @return 0 for success, -1 otherwise.
*/
int setVirtualBufferSize(uint32_t size);
But virtual buffer size defined in v4l2_nv_extension.h
is bits
/**
* Holds encoder virtual buffer size parameters, to be used with
* \c V4L2_CID_MPEG_VIDEOENC_VIRTUALBUFFER_SIZE IOCTL.
*/
typedef struct v4l2_enc_virtual_buffer_size_
{
/** Size of the virtual buffer, in bits. */
__u32 size;
}v4l2_enc_virtual_buffer_size;
Which is correct unit? bytes or bits?