#include "avcodec.h"
+#if defined(NVDECAPI_MAJOR_VERSION) && defined(NVDECAPI_MINOR_VERSION)
+# define NVDECAPI_CHECK_VERSION(major, minor) \
+ ((major) < NVDECAPI_MAJOR_VERSION || ((major) == NVDECAPI_MAJOR_VERSION && (minor) <= NVDECAPI_MINOR_VERSION))
+#else
+/* version macros were added in SDK 8.1 ffnvcodec */
+# define NVDECAPI_CHECK_VERSION(major, minor) \
+ ((major) < 8 || ((major) == 8 && (minor) <= 0))
+#endif
+
typedef struct NVDECFrame {
unsigned int idx;
AVBufferRef *idx_ref;
unsigned *slice_offsets;
int nb_slices;
unsigned int slice_offsets_allocated;
+
+ int supports_444;
} NVDECContext;
int ff_nvdec_decode_init(AVCodecContext *avctx);
uint32_t size);
int ff_nvdec_frame_params(AVCodecContext *avctx,
AVBufferRef *hw_frames_ctx,
- int dpb_size);
+ int dpb_size,
+ int supports_444);
int ff_nvdec_get_ref_idx(AVFrame *frame);
#endif /* AVCODEC_NVDEC_H */