#include "libavutil/buffer.h"
#include "libavutil/frame.h"
+#include "libavutil/hwcontext.h"
#include "avcodec.h"
int (*post_process)(void *logctx, AVFrame *frame);
void *post_process_opaque;
void (*post_process_opaque_free)(void *opaque);
+
+ /**
+ * Per-frame private data for hwaccels.
+ */
+ void *hwaccel_priv;
+ void (*hwaccel_priv_free)(void *priv);
} FrameDecodeData;
/**
*/
int ff_decode_get_packet(AVCodecContext *avctx, AVPacket *pkt);
+int ff_decode_bsfs_init(AVCodecContext *avctx);
+
void ff_decode_bsfs_uninit(AVCodecContext *avctx);
+/**
+ * Make sure avctx.hw_frames_ctx is set. If it's not set, the function will
+ * try to allocate it from hw_device_ctx. If that is not possible, an error
+ * message is printed, and an error code is returned.
+ */
+int ff_decode_get_hw_frames_ctx(AVCodecContext *avctx,
+ enum AVHWDeviceType dev_type);
+
#endif /* AVCODEC_DECODE_H */