Loading...
Searching...
No Matches
buffer.h File Reference
libavutil » Data Structures » AVBuffer

refcounted data buffer API More...

`#include <stddef.h>`
`#include <stdint.h>`

Go to the source code of this file.

## Data Structures

struct | AVBufferRef
| A reference to a data buffer. More...

## Macros

#define | AV_BUFFER_FLAG_READONLY (1 << 0)
| Always treat the buffer as read-only, even when it has only one reference.

## Typedefs

typedef struct AVBuffer | AVBuffer
| A reference counted buffer type.
typedef struct AVBufferPool | AVBufferPool
| The buffer pool.

## Functions

AVBufferRef * | av_buffer_alloc (size_t size)
| Allocate an AVBuffer of the given size using av_malloc().
AVBufferRef * | av_buffer_allocz (size_t size)
| Same as av_buffer_alloc(), except the returned buffer will be initialized to zero.
AVBufferRef * | av_buffer_create (uint8_t *data, size_t size, void(*free)(void *opaque, uint8_t *data), void *opaque, int flags)
| Create an AVBuffer from an existing array.
void | av_buffer_default_free (void *opaque, uint8_t *data)
| Default free callback, which calls av_free() on the buffer data.
AVBufferRef * | av_buffer_ref (const AVBufferRef *buf)
| Create a new reference to an AVBuffer.
void | av_buffer_unref (AVBufferRef **buf)
| Free a given reference and automatically free the buffer if there are no more references to it.
int | av_buffer_is_writable (const AVBufferRef *buf)
void * | av_buffer_get_opaque (const AVBufferRef *buf)
int | av_buffer_get_ref_count (const AVBufferRef *buf)
int | av_buffer_make_writable (AVBufferRef **buf)
| Create a writable reference from a given buffer reference, avoiding data copy if possible.
int | av_buffer_realloc (AVBufferRef **buf, size_t size)
| Reallocate a given buffer.
int | av_buffer_replace (AVBufferRef **dst, const AVBufferRef *src)
| Ensure dst refers to the same data as src.
AVBufferPool * | av_buffer_pool_init (size_t size, AVBufferRef *(*alloc)(size_t size))
| Allocate and initialize a buffer pool.
AVBufferPool * | av_buffer_pool_init2 (size_t size, void *opaque, AVBufferRef *(*alloc)(void *opaque, size_t size), void(*pool_free)(void *opaque))
| Allocate and initialize a buffer pool with a more complex allocator.
void | av_buffer_pool_uninit (AVBufferPool **pool)
| Mark the pool as being available for freeing.
AVBufferRef * | av_buffer_pool_get (AVBufferPool *pool)
| Allocate a new AVBuffer, reusing an old buffer from the pool when available.
void * | av_buffer_pool_buffer_get_opaque (const AVBufferRef *ref)
| Query the original opaque parameter of an allocated buffer in the pool.

## Detailed Description

refcounted data buffer API

Definition in file buffer.h.