FFmpeg  4.0
Functions
mediacodec.c File Reference
#include "config.h"
#include "libavutil/error.h"
#include "mediacodec.h"
#include <stdlib.h>

Go to the source code of this file.

Functions

AVMediaCodecContextav_mediacodec_alloc_context (void)
 Allocate and initialize a MediaCodec context. More...
 
int av_mediacodec_default_init (AVCodecContext *avctx, AVMediaCodecContext *ctx, void *surface)
 Convenience function that sets up the MediaCodec context. More...
 
void av_mediacodec_default_free (AVCodecContext *avctx)
 This function must be called to free the MediaCodec context initialized with av_mediacodec_default_init(). More...
 
int av_mediacodec_release_buffer (AVMediaCodecBuffer *buffer, int render)
 Release a MediaCodec buffer and render it to the surface that is associated with the decoder. More...
 

Function Documentation

◆ av_mediacodec_alloc_context()

AVMediaCodecContext* av_mediacodec_alloc_context ( void  )

Allocate and initialize a MediaCodec context.

When decoding with MediaCodec is finished, the caller must free the MediaCodec context with av_mediacodec_default_free.

Returns
a pointer to a newly allocated AVMediaCodecContext on success, NULL otherwise

Definition at line 109 of file mediacodec.c.

◆ av_mediacodec_default_init()

int av_mediacodec_default_init ( AVCodecContext avctx,
AVMediaCodecContext ctx,
void surface 
)

Convenience function that sets up the MediaCodec context.

Parameters
avctxcodec context
ctxMediaCodec context to initialize
surfacereference to an android/view/Surface
Returns
0 on success, < 0 otherwise

Definition at line 114 of file mediacodec.c.

◆ av_mediacodec_default_free()

void av_mediacodec_default_free ( AVCodecContext avctx)

This function must be called to free the MediaCodec context initialized with av_mediacodec_default_init().

Parameters
avctxcodec context

Definition at line 119 of file mediacodec.c.

◆ av_mediacodec_release_buffer()

int av_mediacodec_release_buffer ( AVMediaCodecBuffer *  buffer,
int  render 
)

Release a MediaCodec buffer and render it to the surface that is associated with the decoder.

This function should only be called once on a given buffer, once released the underlying buffer returns to the codec, thus subsequent calls to this function will have no effect.

Parameters
bufferthe buffer to render
render1 to release and render the buffer to the surface or 0 to discard the buffer
Returns
0 on success, < 0 otherwise

Definition at line 123 of file mediacodec.c.