vda.c File Reference
#include <pthread.h>
#include <CoreFoundation/CFDictionary.h>
#include <CoreFoundation/CFNumber.h>
#include <CoreFoundation/CFData.h>
#include <CoreFoundation/CFString.h>
#include "libavutil/avutil.h"
#include "vda_internal.h"

Go to the source code of this file.

Functions

static CFDictionaryRef vda_dictionary_with_pts (int64_t i_pts)
static int64_t vda_pts_from_dictionary (CFDictionaryRef user_info)
static void vda_clear_queue (struct vda_context *vda_ctx)
static void vda_decoder_callback (void *vda_hw_ctx, CFDictionaryRef user_info, OSStatus status, uint32_t infoFlags, CVImageBufferRef image_buffer)
int ff_vda_create_decoder (struct vda_context *vda_ctx, uint8_t *extradata, int extradata_size)
 Create the video decoder.
int ff_vda_destroy_decoder (struct vda_context *vda_ctx)
 Destroy the video decoder.
vda_frameff_vda_queue_pop (struct vda_context *vda_ctx)
 Return the top frame of the queue.
void ff_vda_release_vda_frame (vda_frame *frame)
 Release the given frame.
int ff_vda_decoder_decode (struct vda_context *vda_ctx, uint8_t *bitstream, int bitstream_size, int64_t frame_pts)
 Send frame data to the hardware decoder.

Function Documentation

int ff_vda_create_decoder ( struct vda_context vda_ctx,
uint8_t *  extradata,
int  extradata_size 
)

Create the video decoder.

Definition at line 129 of file vda.c.

int ff_vda_destroy_decoder ( struct vda_context vda_ctx)

Destroy the video decoder.

Definition at line 199 of file vda.c.

vda_frame* ff_vda_queue_pop ( struct vda_context vda_ctx)

Return the top frame of the queue.

Definition at line 216 of file vda.c.

void ff_vda_release_vda_frame ( vda_frame frame)

Release the given frame.

Definition at line 231 of file vda.c.

Referenced by vda_clear_queue().

static void vda_clear_queue ( struct vda_context vda_ctx)
static

Definition at line 66 of file vda.c.

Referenced by ff_vda_destroy_decoder().

static void vda_decoder_callback ( void vda_hw_ctx,
CFDictionaryRef  user_info,
OSStatus  status,
uint32_t  infoFlags,
CVImageBufferRef  image_buffer 
)
static

Definition at line 82 of file vda.c.

Referenced by ff_vda_create_decoder().

static CFDictionaryRef vda_dictionary_with_pts ( int64_t  i_pts)
static

Definition at line 33 of file vda.c.

Referenced by ff_vda_decoder_decode().

static int64_t vda_pts_from_dictionary ( CFDictionaryRef  user_info)
static

Definition at line 49 of file vda.c.

Referenced by vda_decoder_callback().