|
FFmpeg
|
#include "libavcodec/avcodec.h"Go to the source code of this file.
Data Structures | |
| struct | AVMediaCodecContext |
| This structure holds a reference to a android/view/Surface object that will be used as output by the decoder. More... | |
Functions | |
| AVMediaCodecContext * | av_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... | |
| int | av_mediacodec_render_buffer_at_time (AVMediaCodecBuffer *buffer, int64_t time) |
| Release a MediaCodec buffer and render it at the given time to the surface that is associated with the decoder. More... | |
| 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.
Definition at line 124 of file mediacodec.c.
| int av_mediacodec_default_init | ( | AVCodecContext * | avctx, |
| AVMediaCodecContext * | ctx, | ||
| void * | surface | ||
| ) |
Convenience function that sets up the MediaCodec context.
| avctx | codec context |
| ctx | MediaCodec context to initialize |
| surface | reference to an android/view/Surface |
Definition at line 129 of file mediacodec.c.
| void av_mediacodec_default_free | ( | AVCodecContext * | avctx | ) |
This function must be called to free the MediaCodec context initialized with av_mediacodec_default_init().
| avctx | codec context |
Definition at line 134 of file mediacodec.c.
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.
| buffer | the buffer to render |
| render | 1 to release and render the buffer to the surface or 0 to discard the buffer |
Definition at line 138 of file mediacodec.c.
Referenced by mediacodec_send().
| int av_mediacodec_render_buffer_at_time | ( | AVMediaCodecBuffer * | buffer, |
| int64_t | time | ||
| ) |
Release a MediaCodec buffer and render it at the given time to the surface that is associated with the decoder.
The timestamp must be within one second of the current java/lang/System#nanoTime() (which is implemented using CLOCK_MONOTONIC on Android). See the Android MediaCodec documentation of android/media/MediaCodec#releaseOutputBuffer(int,long) for more details.
| buffer | the buffer to render |
| time | timestamp in nanoseconds of when to render the buffer |
Definition at line 143 of file mediacodec.c.
1.8.17