FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions | Variables
ffmpeg_vdpau.c File Reference
#include <stdint.h>
#include <vdpau/vdpau.h>
#include <vdpau/vdpau_x11.h>
#include <X11/Xlib.h>
#include "ffmpeg.h"
#include "libavcodec/vdpau.h"
#include "libavutil/avassert.h"
#include "libavutil/buffer.h"
#include "libavutil/frame.h"
#include "libavutil/pixfmt.h"

Go to the source code of this file.

Data Structures

struct  VDPAUContext
 

Macros

#define GET_CALLBACK(id, result)
 

Functions

static void vdpau_uninit (AVCodecContext *s)
 
static void vdpau_release_buffer (void *opaque, uint8_t *data)
 
static int vdpau_get_buffer (AVCodecContext *s, AVFrame *frame, int flags)
 
static int vdpau_retrieve_data (AVCodecContext *s, AVFrame *frame)
 
static int vdpau_alloc (AVCodecContext *s)
 
static int vdpau_old_init (AVCodecContext *s)
 
int vdpau_init (AVCodecContext *s)
 

Variables

int vdpau_api_ver = 2
 
static const int vdpau_formats [][2]
 

Macro Definition Documentation

#define GET_CALLBACK (   id,
  result 
)
Value:
do { \
void *tmp; \
err = ctx->get_proc_address(ctx->device, id, &tmp); \
if (err != VDP_STATUS_OK) { \
av_log(NULL, loglevel, "Error getting the " #id " callback.\n"); \
goto fail; \
} \
ctx->result = tmp; \
} while (0)

Referenced by vdpau_alloc().

Function Documentation

static void vdpau_uninit ( AVCodecContext s)
static

Definition at line 64 of file ffmpeg_vdpau.c.

Referenced by vdpau_alloc().

static void vdpau_release_buffer ( void opaque,
uint8_t data 
)
static

Definition at line 88 of file ffmpeg_vdpau.c.

Referenced by vdpau_get_buffer().

static int vdpau_get_buffer ( AVCodecContext s,
AVFrame frame,
int  flags 
)
static

Definition at line 97 of file ffmpeg_vdpau.c.

Referenced by vdpau_alloc(), vdpau_init(), and vdpau_old_init().

static int vdpau_retrieve_data ( AVCodecContext s,
AVFrame frame 
)
static

Definition at line 140 of file ffmpeg_vdpau.c.

Referenced by vdpau_alloc(), vdpau_init(), and vdpau_old_init().

static int vdpau_alloc ( AVCodecContext s)
static

Definition at line 198 of file ffmpeg_vdpau.c.

Referenced by vdpau_init(), and vdpau_old_init().

static int vdpau_old_init ( AVCodecContext s)
static

Definition at line 309 of file ffmpeg_vdpau.c.

Referenced by vdpau_init().

int vdpau_init ( AVCodecContext s)

Definition at line 352 of file ffmpeg_vdpau.c.

Variable Documentation

int vdpau_api_ver = 2

Definition at line 62 of file ffmpeg_vdpau.c.

Referenced by vdpau_alloc(), and vdpau_init().

const int vdpau_formats[][2]
static
Initial value:
= {
{ VDP_YCBCR_FORMAT_YV12, AV_PIX_FMT_YUV420P },
{ VDP_YCBCR_FORMAT_NV12, AV_PIX_FMT_NV12 },
{ VDP_YCBCR_FORMAT_YUYV, AV_PIX_FMT_YUYV422 },
{ VDP_YCBCR_FORMAT_UYVY, AV_PIX_FMT_UYVY422 },
}

Definition at line 191 of file ffmpeg_vdpau.c.

Referenced by vdpau_alloc().