#include <CoreFoundation/CFDictionary.h>
#include <CoreFoundation/CFNumber.h>
#include <CoreFoundation/CFData.h>
#include "vda.h"
#include "libavutil/avutil.h"
#include "h264.h"
#include "internal.h"
#include "vda_internal.h"
Go to the source code of this file.
|
static void | vda_decoder_callback (void *vda_hw_ctx, CFDictionaryRef user_info, OSStatus status, uint32_t infoFlags, CVImageBufferRef image_buffer) |
|
static int | vda_sync_decode (VDAContext *ctx, struct vda_context *vda_ctx) |
|
static int | vda_old_h264_start_frame (AVCodecContext *avctx, av_unused const uint8_t *buffer, av_unused uint32_t size) |
|
static int | vda_old_h264_decode_slice (AVCodecContext *avctx, const uint8_t *buffer, uint32_t size) |
|
static void | vda_h264_release_buffer (void *opaque, uint8_t *data) |
|
static int | vda_old_h264_end_frame (AVCodecContext *avctx) |
|
int | ff_vda_create_decoder (struct vda_context *vda_ctx, uint8_t *extradata, int extradata_size) |
| Create the video decoder. More...
|
|
int | ff_vda_destroy_decoder (struct vda_context *vda_ctx) |
| Destroy the video decoder. More...
|
|
static int | vda_h264_uninit (AVCodecContext *avctx) |
|
void | ff_vda_output_callback (void *opaque, CFDictionaryRef user_info, OSStatus status, uint32_t infoFlags, CVImageBufferRef image_buffer) |
|
static int | vda_h264_start_frame (AVCodecContext *avctx, const uint8_t *buffer, uint32_t size) |
|
static int | vda_h264_decode_slice (AVCodecContext *avctx, const uint8_t *buffer, uint32_t size) |
|
static void | release_buffer (void *opaque, uint8_t *data) |
|
static int | vda_h264_end_frame (AVCodecContext *avctx) |
|
int | ff_vda_default_init (AVCodecContext *avctx) |
|
static int | vda_h264_alloc_frame (AVCodecContext *avctx, AVFrame *frame) |
|
static void vda_decoder_callback |
( |
void * |
vda_hw_ctx, |
|
|
CFDictionaryRef |
user_info, |
|
|
OSStatus |
status, |
|
|
uint32_t |
infoFlags, |
|
|
CVImageBufferRef |
image_buffer |
|
) |
| |
|
static |
void ff_vda_output_callback |
( |
void * |
opaque, |
|
|
CFDictionaryRef |
user_info, |
|
|
OSStatus |
status, |
|
|
uint32_t |
infoFlags, |
|
|
CVImageBufferRef |
image_buffer |
|
) |
| |
< kVDADecoderFlush_emitFrames
Definition at line 373 of file vda_h264.c.
Initial value:= {
.name = "h264_vda",
}
static int vda_old_h264_end_frame(AVCodecContext *avctx)
static int vda_h264_uninit(AVCodecContext *avctx)
static int vda_old_h264_decode_slice(AVCodecContext *avctx, const uint8_t *buffer, uint32_t size)
hardware decoding through VDA
static int vda_old_h264_start_frame(AVCodecContext *avctx, av_unused const uint8_t *buffer, av_unused uint32_t size)
Definition at line 285 of file vda_h264.c.
Initial value:= {
.name = "h264_vda",
}
static int vda_h264_decode_slice(AVCodecContext *avctx, const uint8_t *buffer, uint32_t size)
static int vda_h264_uninit(AVCodecContext *avctx)
static int vda_h264_alloc_frame(AVCodecContext *avctx, AVFrame *frame)
HW acceleration through VDA, data[3] contains a CVPixelBufferRef.
static int vda_h264_end_frame(AVCodecContext *avctx)
static int vda_h264_start_frame(AVCodecContext *avctx, const uint8_t *buffer, uint32_t size)
Definition at line 536 of file vda_h264.c.