I thought I’d bring up some issues and inconsistencies I found in the NvMedia documentation while using it, so they can be fixed and no one has to waste as many hours as I had to.
- Unclear meaning of
Current descriptions are very roundabout and unclear when used with
It’s not obvious which parameters the user should provide and which the call itself writes to.
It would be helpful to expand on the descriptions and clarify which are in/out parameters.
NvMediaBitstreamBuffer::bitstreamis an user-provided pointer to an output buffer.
NvMediaBitstreamBuffer::bitstreamBytesis the number of bytes actually written by the call (out parameter).
NvMediaBitstreamBuffer::bitstreamSizeis the maximum number of bytes that can be written (aka the size of the user-provided buffer).
NvMediaIEPGetBitsEx()refers to a parameter named
buffer, which doesn’t exist.
NVMEDIA_STATUS_OKis returned, the
bufferis filled […]
NVMEDIA_STATUS_NONE_PENDINGreturn value explanations
NVMEDIA_ENCODER_INSTANCE_AUTOwas passed to
NVMEDIA_ENCODER_INSTANCE_AUTOis also passed to
This behaviour doesn’t seem to be documented. Took me 10h to figure out.
Per comment at
NvMediaROIhas been removed. I can’t find anything else related to ROI either.
Has ROI support for encoding been removed/deprecated? If so, the
enableROIEncodedocumentation should mention this.
NvMediaEncoderH265 support (separate thread)