FFmpeg
|
#include <stdint.h>
#include "libavutil/avassert.h"
#include "libavutil/common.h"
#include "libavutil/pixdesc.h"
#include "libavutil/imgutils.h"
#include "avcodec.h"
#include "encode.h"
#include "motion_est.h"
#include "mpegpicture.h"
#include "mpegutils.h"
#include "threadframe.h"
Go to the source code of this file.
Macros | |
#define | MAKE_WRITABLE(table) |
#define | EMU_EDGE_HEIGHT (4 * 70) |
Functions | |
static void av_noinline | free_picture_tables (Picture *pic) |
static int | make_table_writable (AVBufferRef **ref) |
static int | make_tables_writable (Picture *pic) |
int | ff_mpeg_framesize_alloc (AVCodecContext *avctx, MotionEstContext *me, ScratchpadContext *sc, int linesize) |
static int | alloc_frame_buffer (AVCodecContext *avctx, Picture *pic, MotionEstContext *me, ScratchpadContext *sc, int chroma_x_shift, int chroma_y_shift, int linesize, int uvlinesize) |
Allocate a frame buffer. More... | |
static int | alloc_picture_tables (AVCodecContext *avctx, Picture *pic, int encoding, int out_format, int mb_stride, int mb_width, int mb_height, int b8_stride) |
int | ff_alloc_picture (AVCodecContext *avctx, Picture *pic, MotionEstContext *me, ScratchpadContext *sc, int shared, int encoding, int chroma_x_shift, int chroma_y_shift, int out_format, int mb_stride, int mb_width, int mb_height, int b8_stride, ptrdiff_t *linesize, ptrdiff_t *uvlinesize) |
Allocate a Picture. More... | |
void | ff_mpeg_unref_picture (AVCodecContext *avctx, Picture *pic) |
Deallocate a picture; frees the picture tables in case they need to be reallocated anyway. More... | |
int | ff_update_picture_tables (Picture *dst, const Picture *src) |
int | ff_mpeg_ref_picture (AVCodecContext *avctx, Picture *dst, Picture *src) |
static int | pic_is_unused (Picture *pic) |
static int | find_unused_picture (AVCodecContext *avctx, Picture *picture, int shared) |
int | ff_find_unused_picture (AVCodecContext *avctx, Picture *picture, int shared) |
void av_cold | ff_mpv_picture_free (AVCodecContext *avctx, Picture *pic) |
#define MAKE_WRITABLE | ( | table | ) |
#define EMU_EDGE_HEIGHT (4 * 70) |
|
static |
Definition at line 35 of file mpegpicture.c.
Referenced by ff_alloc_picture(), ff_mpeg_unref_picture(), ff_mpv_picture_free(), and ff_update_picture_tables().
|
static |
Definition at line 50 of file mpegpicture.c.
Definition at line 64 of file mpegpicture.c.
Referenced by ff_alloc_picture().
int ff_mpeg_framesize_alloc | ( | AVCodecContext * | avctx, |
MotionEstContext * | me, | ||
ScratchpadContext * | sc, | ||
int | linesize | ||
) |
Definition at line 87 of file mpegpicture.c.
Referenced by alloc_frame_buffer(), ff_mpeg_update_thread_context(), and ff_update_duplicate_context().
|
static |
Allocate a frame buffer.
Definition at line 127 of file mpegpicture.c.
Referenced by ff_alloc_picture().
|
static |
Definition at line 214 of file mpegpicture.c.
Referenced by ff_alloc_picture().
int ff_alloc_picture | ( | AVCodecContext * | avctx, |
Picture * | pic, | ||
MotionEstContext * | me, | ||
ScratchpadContext * | sc, | ||
int | shared, | ||
int | encoding, | ||
int | chroma_x_shift, | ||
int | chroma_y_shift, | ||
int | out_format, | ||
int | mb_stride, | ||
int | mb_width, | ||
int | mb_height, | ||
int | b8_stride, | ||
ptrdiff_t * | linesize, | ||
ptrdiff_t * | uvlinesize | ||
) |
Allocate a Picture.
The pixels are allocated/set by calling get_buffer() if shared = 0
Definition at line 254 of file mpegpicture.c.
Referenced by alloc_picture().
void ff_mpeg_unref_picture | ( | AVCodecContext * | avctx, |
Picture * | pic | ||
) |
Deallocate a picture; frees the picture tables in case they need to be reallocated anyway.
Definition at line 312 of file mpegpicture.c.
Referenced by alloc_frame_buffer(), ff_alloc_picture(), ff_find_unused_picture(), ff_mpeg_flush(), ff_mpeg_ref_picture(), ff_mpeg_update_thread_context(), ff_mpv_encode_picture(), ff_mpv_frame_start(), ff_mpv_picture_free(), and frame_start().
Definition at line 339 of file mpegpicture.c.
Referenced by ff_mpeg_ref_picture().
int ff_mpeg_ref_picture | ( | AVCodecContext * | avctx, |
Picture * | dst, | ||
Picture * | src | ||
) |
Definition at line 371 of file mpegpicture.c.
Referenced by ff_mpeg_update_thread_context(), ff_mpv_frame_start(), and frame_start().
Definition at line 411 of file mpegpicture.c.
Referenced by find_unused_picture().
|
static |
Definition at line 420 of file mpegpicture.c.
Referenced by ff_find_unused_picture().
int ff_find_unused_picture | ( | AVCodecContext * | avctx, |
Picture * | picture, | ||
int | shared | ||
) |
Definition at line 453 of file mpegpicture.c.
Referenced by ff_mpv_frame_start(), load_input_picture(), and select_input_picture().
void av_cold ff_mpv_picture_free | ( | AVCodecContext * | avctx, |
Picture * | pic | ||
) |
Definition at line 465 of file mpegpicture.c.
Referenced by ff_mpv_common_end().