FFmpeg
|
#include <stddef.h>
#include <stdint.h>
#include "avutil.h"
#include "buffer.h"
#include "channel_layout.h"
#include "dict.h"
#include "rational.h"
#include "samplefmt.h"
#include "pixfmt.h"
#include "version.h"
Go to the source code of this file.
Data Structures | |
struct | AVFrameSideData |
Structure to hold side data for an AVFrame. More... | |
struct | AVRegionOfInterest |
Structure describing a single Region Of Interest. More... | |
struct | AVFrame |
This structure describes decoded (raw) audio or video data. More... | |
Macros | |
#define | AV_NUM_DATA_POINTERS 8 |
#define | AV_FRAME_FLAG_CORRUPT (1 << 0) |
The frame data may be corrupted, e.g. More... | |
#define | AV_FRAME_FLAG_KEY (1 << 1) |
A flag to mark frames that are keyframes. More... | |
#define | AV_FRAME_FLAG_DISCARD (1 << 2) |
A flag to mark the frames which need to be decoded, but shouldn't be output. More... | |
#define | AV_FRAME_FLAG_INTERLACED (1 << 3) |
A flag to mark frames whose content is interlaced. More... | |
#define | AV_FRAME_FLAG_TOP_FIELD_FIRST (1 << 4) |
A flag to mark frames where the top field is displayed first if the content is interlaced. More... | |
#define | FF_DECODE_ERROR_INVALID_BITSTREAM 1 |
#define | FF_DECODE_ERROR_MISSING_REFERENCE 2 |
#define | FF_DECODE_ERROR_CONCEALMENT_ACTIVE 4 |
#define | FF_DECODE_ERROR_DECODE_SLICES 8 |
#define | AV_FRAME_SIDE_DATA_FLAG_UNIQUE (1 << 0) |
Functions | |
AVFrame * | av_frame_alloc (void) |
Allocate an AVFrame and set its fields to default values. More... | |
void | av_frame_free (AVFrame **frame) |
Free the frame and any dynamically allocated objects in it, e.g. More... | |
int | av_frame_ref (AVFrame *dst, const AVFrame *src) |
Set up a new reference to the data described by the source frame. More... | |
int | av_frame_replace (AVFrame *dst, const AVFrame *src) |
Ensure the destination frame refers to the same data described by the source frame, either by creating a new reference for each AVBufferRef from src if they differ from those in dst, by allocating new buffers and copying data if src is not reference counted, or by unrefencing it if src is empty. More... | |
AVFrame * | av_frame_clone (const AVFrame *src) |
Create a new frame that references the same data as src. More... | |
void | av_frame_unref (AVFrame *frame) |
Unreference all the buffers referenced by frame and reset the frame fields. More... | |
void | av_frame_move_ref (AVFrame *dst, AVFrame *src) |
Move everything contained in src to dst and reset src. More... | |
int | av_frame_get_buffer (AVFrame *frame, int align) |
Allocate new buffer(s) for audio or video data. More... | |
int | av_frame_is_writable (AVFrame *frame) |
Check if the frame data is writable. More... | |
int | av_frame_make_writable (AVFrame *frame) |
Ensure that the frame data is writable, avoiding data copy if possible. More... | |
int | av_frame_copy (AVFrame *dst, const AVFrame *src) |
Copy the frame data from src to dst. More... | |
int | av_frame_copy_props (AVFrame *dst, const AVFrame *src) |
Copy only "metadata" fields from src to dst. More... | |
AVBufferRef * | av_frame_get_plane_buffer (const AVFrame *frame, int plane) |
Get the buffer reference a given data plane is stored in. More... | |
AVFrameSideData * | av_frame_new_side_data (AVFrame *frame, enum AVFrameSideDataType type, size_t size) |
Add a new side data to a frame. More... | |
AVFrameSideData * | av_frame_new_side_data_from_buf (AVFrame *frame, enum AVFrameSideDataType type, AVBufferRef *buf) |
Add a new side data to a frame from an existing AVBufferRef. More... | |
AVFrameSideData * | av_frame_get_side_data (const AVFrame *frame, enum AVFrameSideDataType type) |
void | av_frame_remove_side_data (AVFrame *frame, enum AVFrameSideDataType type) |
Remove and free all side data instances of the given type. More... | |
int | av_frame_apply_cropping (AVFrame *frame, int flags) |
Crop the given video AVFrame according to its crop_left/crop_top/crop_right/ crop_bottom fields. More... | |
const char * | av_frame_side_data_name (enum AVFrameSideDataType type) |
void | av_frame_side_data_free (AVFrameSideData ***sd, int *nb_sd) |
Free all side data entries and their contents, then zeroes out the values which the pointers are pointing to. More... | |
AVFrameSideData * | av_frame_side_data_new (AVFrameSideData ***sd, int *nb_sd, enum AVFrameSideDataType type, size_t size, unsigned int flags) |
Add new side data entry to an array. More... | |
int | av_frame_side_data_clone (AVFrameSideData ***sd, int *nb_sd, const AVFrameSideData *src, unsigned int flags) |
Add a new side data entry to an array based on existing side data, taking a reference towards the contained AVBufferRef. More... | |
const AVFrameSideData * | av_frame_side_data_get_c (const AVFrameSideData *const *sd, const int nb_sd, enum AVFrameSideDataType type) |
Get a side data entry of a specific type from an array. More... | |
static const AVFrameSideData * | av_frame_side_data_get (AVFrameSideData *const *sd, const int nb_sd, enum AVFrameSideDataType type) |
Wrapper around av_frame_side_data_get_c() to workaround the limitation that for any type T the conversion from T * const * to const T * const * is not performed automatically in C. More... | |
reference-counted frame API
Definition in file frame.h.