FFmpeg
|
#include "libavutil/common.h"
#include "libavutil/mathematics.h"
#include "libavutil/hwcontext.h"
#include "libavutil/hwcontext_qsv.h"
#include "libavutil/time.h"
#include "libavutil/pixdesc.h"
#include "internal.h"
#include "qsvvpp.h"
#include "video.h"
Go to the source code of this file.
Data Structures | |
struct | QSVFrame |
struct | QSVVPPContext |
Macros | |
#define | IS_VIDEO_MEMORY(mode) |
#define | IS_OPAQUE_MEMORY(mode) (mode & MFX_MEMTYPE_OPAQUE_FRAME) |
#define | IS_SYSTEM_MEMORY(mode) (mode & MFX_MEMTYPE_SYSTEM_MEMORY) |
Functions | |
static mfxStatus | frame_alloc (mfxHDL pthis, mfxFrameAllocRequest *req, mfxFrameAllocResponse *resp) |
static mfxStatus | frame_free (mfxHDL pthis, mfxFrameAllocResponse *resp) |
static mfxStatus | frame_lock (mfxHDL pthis, mfxMemId mid, mfxFrameData *ptr) |
static mfxStatus | frame_unlock (mfxHDL pthis, mfxMemId mid, mfxFrameData *ptr) |
static mfxStatus | frame_get_hdl (mfxHDL pthis, mfxMemId mid, mfxHDL *hdl) |
static int | pix_fmt_to_mfx_fourcc (int format) |
static int | map_frame_to_surface (AVFrame *frame, mfxFrameSurface1 *surface) |
static int | fill_frameinfo_by_link (mfxFrameInfo *frameinfo, AVFilterLink *link) |
static void | clear_unused_frames (QSVFrame *list) |
static void | clear_frame_list (QSVFrame **list) |
static QSVFrame * | get_free_frame (QSVFrame **list) |
static QSVFrame * | submit_frame (QSVVPPContext *s, AVFilterLink *inlink, AVFrame *picref) |
static QSVFrame * | query_frame (QSVVPPContext *s, AVFilterLink *outlink) |
static int | init_vpp_session (AVFilterContext *avctx, QSVVPPContext *s) |
int | ff_qsvvpp_create (AVFilterContext *avctx, QSVVPPContext **vpp, QSVVPPParam *param) |
int | ff_qsvvpp_free (QSVVPPContext **vpp) |
int | ff_qsvvpp_filter_frame (QSVVPPContext *s, AVFilterLink *inlink, AVFrame *picref) |
Variables | |
static const mfxHandleType | handle_types [] |
static const AVRational | default_tb = { 1, 90000 } |
Intel Quick Sync Video VPP base function
Definition in file qsvvpp.c.
#define IS_VIDEO_MEMORY | ( | mode | ) |
|
static |
Definition at line 80 of file qsvvpp.c.
Referenced by init_vpp_session().
|
static |
Definition at line 114 of file qsvvpp.c.
Referenced by init_vpp_session().
|
static |
Definition at line 120 of file qsvvpp.c.
Referenced by init_vpp_session().
|
static |
Definition at line 125 of file qsvvpp.c.
Referenced by init_vpp_session().
|
static |
Definition at line 130 of file qsvvpp.c.
Referenced by init_vpp_session().
Definition at line 136 of file qsvvpp.c.
Referenced by fill_frameinfo_by_link().
Definition at line 152 of file qsvvpp.c.
Referenced by query_frame(), and submit_frame().
|
static |
Definition at line 185 of file qsvvpp.c.
Referenced by ff_qsvvpp_create().
|
static |
Definition at line 232 of file qsvvpp.c.
Referenced by query_frame(), and submit_frame().
|
static |
Definition at line 243 of file qsvvpp.c.
Referenced by ff_qsvvpp_free().
Definition at line 255 of file qsvvpp.c.
Referenced by query_frame(), and submit_frame().
|
static |
Definition at line 278 of file qsvvpp.c.
Referenced by ff_qsvvpp_filter_frame().
|
static |
Definition at line 350 of file qsvvpp.c.
Referenced by ff_qsvvpp_filter_frame().
|
static |
Definition at line 402 of file qsvvpp.c.
Referenced by ff_qsvvpp_create().
int ff_qsvvpp_create | ( | AVFilterContext * | avctx, |
QSVVPPContext ** | vpp, | ||
QSVVPPParam * | param | ||
) |
Definition at line 561 of file qsvvpp.c.
Referenced by config_output().
int ff_qsvvpp_free | ( | QSVVPPContext ** | vpp | ) |
Definition at line 664 of file qsvvpp.c.
Referenced by ff_qsvvpp_create(), overlay_qsv_uninit(), and vpp_uninit().
int ff_qsvvpp_filter_frame | ( | QSVVPPContext * | s, |
AVFilterLink * | inlink, | ||
AVFrame * | picref | ||
) |
Definition at line 688 of file qsvvpp.c.
Referenced by filter_frame(), and process_frame().
|
static |
Definition at line 71 of file qsvvpp.c.
Referenced by ff_qsv_init_session_device(), and init_vpp_session().
|
static |
Definition at line 77 of file qsvvpp.c.
Referenced by ff_qsvvpp_filter_frame(), and submit_frame().