The rocDecode core APIs

The rocDecode core APIs#

The rocDecode core APIs are intended for users who want to have full control of the decoding pipeline and interact with the core components instead of the utility classes. The Using the rocDecode videodecode sample provides an introduction to using the utility classes.

The rocDecode core APIs are exposed in header files in the api/rocdecode folder of the rocDecode GitHub repository.

The rocDecode parser API is exposed in api/rocdecode/rocparser.h. It contains functions that create and destroy the parser, as well as functions that parse the bitstream.

The hardware decoder API is exposed in api/rocDecode/rocdecode.h. It contains functions that create, control, and destroy the decoder, as well as functions that decode the parsed frames on the GPU.

The software decoder API is exposed in api/rocDecode/rocdecode_host.h. It contains the same functionality as rocdecode.h, but all the operations are run on the host rather than the GPU.

The bitstream reader API is exposed in api/rocDecode/roc_bitstream_reader.h. It provides an alternative to the FFMpeg demuxer and contains a simple stream file parser that can read elementary files and IVF container files.