#include <va/va.h>
#include <va/va_dec_hevc.h>
#include "avcodec.h"
#include "hwaccel_internal.h"
#include "vaapi_decode.h"
#include "vaapi_hevc.h"
#include "h265_profile_level.h"
#include "hevc/hevcdec.h"
Go to the source code of this file.
|
| static void | init_vaapi_pic (VAPictureHEVC *va_pic) |
| |
| static void | fill_vaapi_pic (VAPictureHEVC *va_pic, const HEVCFrame *pic, int rps_type) |
| |
| static int | find_frame_rps_type (const HEVCContext *h, const HEVCFrame *pic) |
| |
| static void | fill_vaapi_reference_frames (const HEVCContext *h, const HEVCLayerContext *l, VAPictureParameterBufferHEVC *pp) |
| |
| static int | vaapi_hevc_start_frame (AVCodecContext *avctx, av_unused const AVBufferRef *buffer_ref, av_unused const uint8_t *buffer, av_unused uint32_t size) |
| |
| static int | vaapi_hevc_end_frame (AVCodecContext *avctx) |
| |
| static void | fill_pred_weight_table (AVCodecContext *avctx, const HEVCContext *h, const SliceHeader *sh, VASliceParameterBufferHEVC *slice_param) |
| |
| static uint8_t | get_ref_pic_index (const HEVCContext *h, const HEVCFrame *frame) |
| |
| static int | vaapi_hevc_decode_slice (AVCodecContext *avctx, const uint8_t *buffer, uint32_t size) |
| |
| static int | ptl_convert (const PTLCommon *general_ptl, H265RawProfileTierLevel *h265_raw_ptl) |
| |
| VAProfile | ff_vaapi_parse_hevc_rext_scc_profile (AVCodecContext *avctx) |
| |
◆ copy_field
| #define copy_field |
( |
| name | ) |
|
◆ init_vaapi_pic()
| static void init_vaapi_pic |
( |
VAPictureHEVC * | va_pic | ) |
|
|
static |
◆ fill_vaapi_pic()
| static void fill_vaapi_pic |
( |
VAPictureHEVC * | va_pic, |
|
|
const HEVCFrame * | pic, |
|
|
int | rps_type ) |
|
static |
◆ find_frame_rps_type()
◆ fill_vaapi_reference_frames()
◆ vaapi_hevc_start_frame()
◆ vaapi_hevc_end_frame()
◆ fill_pred_weight_table()
◆ get_ref_pic_index()
◆ vaapi_hevc_decode_slice()
| static int vaapi_hevc_decode_slice |
( |
AVCodecContext * | avctx, |
|
|
const uint8_t * | buffer, |
|
|
uint32_t | size ) |
|
static |
◆ ptl_convert()
◆ ff_vaapi_parse_hevc_rext_scc_profile()
| VAProfile ff_vaapi_parse_hevc_rext_scc_profile |
( |
AVCodecContext * | avctx | ) |
|
◆ ff_hevc_vaapi_hwaccel
Initial value:= {
.p.name = "hevc_vaapi",
}
int(* init)(AVBSFContext *ctx)
#define HWACCEL_CAP_ASYNC_SAFE
Header providing the internals of AVHWAccel.
static av_cold void uninit(AVBitStreamFilterContext *ctx)
@ AV_PIX_FMT_VAAPI
Hardware acceleration through VA-API, data[3] contains a VASurfaceID.
int ff_vaapi_common_frame_params(AVCodecContext *avctx, AVBufferRef *hw_frames_ctx)
int ff_vaapi_decode_init(AVCodecContext *avctx)
int ff_vaapi_decode_uninit(AVCodecContext *avctx)
static int vaapi_hevc_end_frame(AVCodecContext *avctx)
static int vaapi_hevc_decode_slice(AVCodecContext *avctx, const uint8_t *buffer, uint32_t size)
static int vaapi_hevc_start_frame(AVCodecContext *avctx, av_unused const AVBufferRef *buffer_ref, av_unused const uint8_t *buffer, av_unused uint32_t size)
Definition at line 659 of file vaapi_hevc.c.