FFmpeg
Loading...
Searching...
No Matches
vf_amf_common.c File Reference
#include "vf_amf_common.h"
#include "libavutil/avassert.h"
#include "avfilter.h"
#include "avfilter_internal.h"
#include "filters.h"
#include "formats.h"
#include "libavutil/mem.h"
#include "libavutil/imgutils.h"
#include "libavutil/pixdesc.h"
#include "libavutil/time.h"
#include "AMF/components/VideoDecoderUVD.h"
#include "libavutil/hwcontext_amf.h"
#include "libavutil/hwcontext_amf_internal.h"
#include "scale_eval.h"

Go to the source code of this file.

Functions

int amf_filter_init (AVFilterContext *avctx)
 
void amf_filter_uninit (AVFilterContext *avctx)
 
static int amf_queue_props (AVFilterContext *avctx, const AVFrame *in)
 
static int amf_receive_surface (AVFilterContext *avctx, AMFComponent *component, AMFSurface **surface)
 
static int amf_deliver_output (AVFilterContext *avctx)
 
static int amf_submit_surface (AVFilterContext *avctx, AMFComponent *component, AMFSurface *surface, int(*deliver)(AVFilterContext *avctx))
 
static int amf_forward_converted (AVFilterContext *avctx)
 
static int amf_drain_component (AVFilterContext *avctx, AMFComponent *component, int(*deliver)(AVFilterContext *avctx))
 
int amf_filter_filter_frame (AVFilterLink *inlink, AVFrame *in)
 
static int amf_poll_output (AVFilterContext *avctx)
 
int amf_filter_activate (AVFilterContext *avctx)
 
int amf_setup_input_output_formats (AVFilterContext *avctx, const enum AVPixelFormat *input_pix_fmts)
 
int amf_copy_surface (AVFilterContext *avctx, const AVFrame *frame, AMFSurface *surface)
 
enum AVPixelFormat amf_inlink_sw_format (AVFilterLink *inlink)
 
int amf_init_filter_config (AVFilterLink *outlink, enum AVPixelFormat *in_format)
 
void amf_free_amfsurface (void *opaque, uint8_t *data)
 
AVFrame * amf_amfsurface_to_avframe (AVFilterContext *avctx, AMFSurface *pSurface)
 
int amf_avframe_to_amfsurface (AVFilterContext *avctx, const AVFrame *frame, AMFSurface **ppSurface)
 

Function Documentation

◆ amf_filter_init()

int amf_filter_init ( AVFilterContext * avctx)

Definition at line 45 of file vf_amf_common.c.

◆ amf_filter_uninit()

void amf_filter_uninit ( AVFilterContext * avctx)

Definition at line 64 of file vf_amf_common.c.

◆ amf_queue_props()

static int amf_queue_props ( AVFilterContext * avctx,
const AVFrame * in )
static

Definition at line 99 of file vf_amf_common.c.

Referenced by amf_filter_filter_frame().

◆ amf_receive_surface()

static int amf_receive_surface ( AVFilterContext * avctx,
AMFComponent * component,
AMFSurface ** surface )
static

Definition at line 117 of file vf_amf_common.c.

Referenced by amf_deliver_output(), and amf_forward_converted().

◆ amf_deliver_output()

static int amf_deliver_output ( AVFilterContext * avctx)
static

◆ amf_submit_surface()

static int amf_submit_surface ( AVFilterContext * avctx,
AMFComponent * component,
AMFSurface * surface,
int(* deliver )(AVFilterContext *avctx) )
static

Definition at line 229 of file vf_amf_common.c.

Referenced by amf_filter_filter_frame(), and amf_forward_converted().

◆ amf_forward_converted()

static int amf_forward_converted ( AVFilterContext * avctx)
static

Definition at line 249 of file vf_amf_common.c.

Referenced by amf_filter_activate(), amf_filter_filter_frame(), and amf_poll_output().

◆ amf_drain_component()

static int amf_drain_component ( AVFilterContext * avctx,
AMFComponent * component,
int(* deliver )(AVFilterContext *avctx) )
static

Definition at line 265 of file vf_amf_common.c.

Referenced by amf_filter_activate().

◆ amf_filter_filter_frame()

int amf_filter_filter_frame ( AVFilterLink * inlink,
AVFrame * in )

Definition at line 287 of file vf_amf_common.c.

Referenced by amf_filter_activate().

◆ amf_poll_output()

static int amf_poll_output ( AVFilterContext * avctx)
static

Definition at line 322 of file vf_amf_common.c.

Referenced by amf_filter_activate().

◆ amf_filter_activate()

int amf_filter_activate ( AVFilterContext * avctx)

Definition at line 336 of file vf_amf_common.c.

◆ amf_setup_input_output_formats()

int amf_setup_input_output_formats ( AVFilterContext * avctx,
const enum AVPixelFormat * input_pix_fmts )

◆ amf_copy_surface()

int amf_copy_surface ( AVFilterContext * avctx,
const AVFrame * frame,
AMFSurface * surface )

Definition at line 452 of file vf_amf_common.c.

Referenced by amf_avframe_to_amfsurface().

◆ amf_inlink_sw_format()

enum AVPixelFormat amf_inlink_sw_format ( AVFilterLink * inlink)

◆ amf_init_filter_config()

int amf_init_filter_config ( AVFilterLink * outlink,
enum AVPixelFormat * in_format )

◆ amf_free_amfsurface()

void amf_free_amfsurface ( void * opaque,
uint8_t * data )

Definition at line 606 of file vf_amf_common.c.

◆ amf_amfsurface_to_avframe()

AVFrame * amf_amfsurface_to_avframe ( AVFilterContext * avctx,
AMFSurface * pSurface )

Definition at line 612 of file vf_amf_common.c.

Referenced by amf_deliver_output().

◆ amf_avframe_to_amfsurface()

int amf_avframe_to_amfsurface ( AVFilterContext * avctx,
const AVFrame * frame,
AMFSurface ** ppSurface )

Definition at line 775 of file vf_amf_common.c.

Referenced by amf_filter_filter_frame().