Go to the documentation of this file.
20 #ifndef GNASH_MEDIA_VIDEODECODERFFMPEGVAAPI_H
21 #define GNASH_MEDIA_VIDEODECODERFFMPEGVAAPI_H
28 #include <libavcodec/avcodec.h>
29 #include <libavcodec/vaapi.h>
32 #if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55,18,102)
33 #define CODECID AVCodecID
35 #define CODECID CodecID
44 unsigned int _pic_num;
48 std::shared_ptr<VaapiContext> context)
56 { _pic_num = pic_num; }
61 static inline VaapiSurfaceFfmpeg *vaapi_get_surface(
const AVFrame *pic)
63 return reinterpret_cast<VaapiSurfaceFfmpeg *
>(pic->data[0]);
68 std::shared_ptr<VaapiContext> _context;
VA context abstraction.
Definition: VaapiContext.h:51
@ height
Definition: klash_part.cpp:329
VA API global context.
Definition: VaapiGlobalContext.h:33
std::shared_ptr< VaapiSurface > get() const
Return VA surface.
Definition: VaapiSurfaceProxy.h:43
VADisplay display() const
Get the VA display.
Definition: VaapiGlobalContext.h:71
@ i
Definition: GnashKey.h:155
Anonymous namespace for callbacks, local functions, event handlers etc.
Definition: dbus_ext.cpp:41
VA surface proxy used to release surface to context.
Definition: VaapiSurfaceProxy.h:33
VA context implementation for FFmpeg.
Definition: VideoDecoderFfmpegVaapi.h:67
bool initDecoder(unsigned int width, unsigned int height)
Definition: VideoDecoderFfmpegVaapi.cpp:103
static VaapiGlobalContext * get()
Get the unique global VA context.
Definition: VaapiGlobalContext.cpp:130
#define CODECID
Definition: VideoDecoderFfmpegVaapi.h:33
VaapiContextFfmpeg(enum CODECID codec_id)
Definition: VideoDecoderFfmpegVaapi.cpp:97
static VaapiContextFfmpeg * create(enum CODECID codec_id)
Definition: VideoDecoderFfmpegVaapi.cpp:117
VaapiSurfaceFfmpeg * getSurface()
Definition: VideoDecoderFfmpegVaapi.h:75
bool vaapi_is_enabled()
Check whether video acceleration is enabled.
Definition: vaapi_utils.cpp:35
#define DSOEXPORT
Definition: dsodefs.h:55
@ width
Definition: klash_part.cpp:329