FFmpeg
|
#include <stdint.h>
#include <string.h>
#include <mfx/mfxvideo.h>
#include "config.h"
#include "buffer.h"
#include "common.h"
#include "hwcontext.h"
#include "hwcontext_internal.h"
#include "hwcontext_qsv.h"
#include "mem.h"
#include "pixfmt.h"
#include "pixdesc.h"
#include "time.h"
Go to the source code of this file.
Data Structures | |
struct | QSVDevicePriv |
struct | QSVDeviceContext |
struct | QSVFramesContext |
Functions | |
static int | qsv_device_init (AVHWDeviceContext *ctx) |
static void | qsv_frames_uninit (AVHWFramesContext *ctx) |
static void | qsv_pool_release_dummy (void *opaque, uint8_t *data) |
static AVBufferRef * | qsv_pool_alloc (void *opaque, int size) |
static int | qsv_init_child_ctx (AVHWFramesContext *ctx) |
static int | qsv_init_pool (AVHWFramesContext *ctx, uint32_t fourcc) |
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 | qsv_init_internal_session (AVHWFramesContext *ctx, mfxSession *session, int upload) |
static int | qsv_frames_init (AVHWFramesContext *ctx) |
static int | qsv_get_buffer (AVHWFramesContext *ctx, AVFrame *frame) |
static int | qsv_transfer_get_formats (AVHWFramesContext *ctx, enum AVHWFrameTransferDirection dir, enum AVPixelFormat **formats) |
static int | qsv_transfer_data_from (AVHWFramesContext *ctx, AVFrame *dst, const AVFrame *src) |
static int | qsv_transfer_data_to (AVHWFramesContext *ctx, AVFrame *dst, const AVFrame *src) |
static int | qsv_frames_get_constraints (AVHWDeviceContext *ctx, const void *hwconfig, AVHWFramesConstraints *constraints) |
static void | qsv_device_free (AVHWDeviceContext *ctx) |
static mfxIMPL | choose_implementation (const char *device) |
static int | qsv_device_create (AVHWDeviceContext *ctx, const char *device, AVDictionary *opts, int flags) |
Variables | |
struct { | |
mfxHandleType handle_type | |
enum AVHWDeviceType device_type | |
enum AVPixelFormat pix_fmt | |
} | supported_handle_types [] |
struct { | |
enum AVPixelFormat pix_fmt | |
uint32_t fourcc | |
} | supported_pixel_formats [] |
const HWContextType | ff_hwcontext_type_qsv |
|
static |
Definition at line 95 of file hwcontext_qsv.c.
|
static |
Definition at line 129 of file hwcontext_qsv.c.
Definition at line 151 of file hwcontext_qsv.c.
Referenced by qsv_pool_alloc().
|
static |
Definition at line 155 of file hwcontext_qsv.c.
Referenced by qsv_init_pool().
|
static |
Definition at line 170 of file hwcontext_qsv.c.
Referenced by qsv_init_pool().
|
static |
Definition at line 273 of file hwcontext_qsv.c.
Referenced by qsv_frames_init().
|
static |
Definition at line 335 of file hwcontext_qsv.c.
Referenced by qsv_init_internal_session().
|
static |
Definition at line 363 of file hwcontext_qsv.c.
Referenced by qsv_init_internal_session().
|
static |
Definition at line 368 of file hwcontext_qsv.c.
Referenced by qsv_init_internal_session().
|
static |
Definition at line 373 of file hwcontext_qsv.c.
Referenced by qsv_init_internal_session().
|
static |
Definition at line 378 of file hwcontext_qsv.c.
Referenced by qsv_init_internal_session().
|
static |
Definition at line 384 of file hwcontext_qsv.c.
Referenced by qsv_frames_init().
|
static |
Definition at line 458 of file hwcontext_qsv.c.
|
static |
Definition at line 526 of file hwcontext_qsv.c.
|
static |
Definition at line 540 of file hwcontext_qsv.c.
|
static |
Definition at line 558 of file hwcontext_qsv.c.
|
static |
Definition at line 597 of file hwcontext_qsv.c.
|
static |
Definition at line 636 of file hwcontext_qsv.c.
|
static |
Definition at line 661 of file hwcontext_qsv.c.
Referenced by qsv_device_create().
|
static |
Definition at line 673 of file hwcontext_qsv.c.
Referenced by qsv_device_create().
|
static |
Definition at line 705 of file hwcontext_qsv.c.
mfxHandleType handle_type |
Definition at line 75 of file hwcontext_qsv.c.
Referenced by qsv_device_create().
enum AVHWDeviceType device_type |
Definition at line 76 of file hwcontext_qsv.c.
enum AVPixelFormat pix_fmt |
Definition at line 77 of file hwcontext_qsv.c.
Referenced by qsv_frames_init().
const { ... } supported_handle_types[] |
Referenced by qsv_device_init().
uint32_t fourcc |
Definition at line 90 of file hwcontext_qsv.c.
Referenced by main(), matroska_parse_tracks(), msnwc_tcp_probe(), parse_pixel_format(), print_pix_fmt_fourccs(), qsv_frames_init(), and qsv_init_pool().
const { ... } supported_pixel_formats[] |
Referenced by qsv_frames_get_constraints(), and qsv_frames_init().
const HWContextType ff_hwcontext_type_qsv |
Definition at line 771 of file hwcontext_qsv.c.