Go to the documentation of this file.
21 #ifndef AVCODEC_MPEGPICTURE_H
22 #define AVCODEC_MPEGPICTURE_H
31 #define MPV_MAX_PLANES 3
134 ptrdiff_t *linesizep, ptrdiff_t *uvlinesizep);
ptrdiff_t linesize[MPV_MAX_PLANES]
uint8_t * obmc_scratchpad
ThreadProgress is an API to easily notify other threads about progress of any kind as long as it can ...
uint8_t * rd_scratchpad
scratchpad for rate distortion mb decision
This structure describes decoded (raw) audio or video data.
static void ff_mpv_framesize_disable(ScratchpadContext *sc)
Disable allocating the ScratchpadContext's buffers in future calls to ff_mpv_framesize_alloc().
int ff_mpv_alloc_pic_accessories(AVCodecContext *avctx, MPVWorkPicture *pic, ScratchpadContext *sc, BufferPoolContext *pools, int mb_height)
Allocate an MPVPicture's accessories (but not the AVFrame's buffer itself) and set the MPVWorkPicture...
uint32_t * mb_type
types and macros are defined in mpegutils.h
int16_t(*[2] motion_val)[2]
int16_t(*[2] motion_val_base)[2]
uint32_t * mb_type
types and macros are defined in mpegutils.h
int16_t(*[2] motion_val)[2]
struct FFRefStructPool * mb_type_pool
int alloc_mb_stride
mb_stride used to allocate tables
int dummy
Picture is a dummy and should not be output.
MPVPicture * ptr
RefStruct reference.
struct FFRefStructPool * motion_val_pool
struct FFRefStructPool * ref_index_pool
FFRefStructPool is an API for a thread-safe pool of objects managed via the RefStruct API.
struct FFRefStructPool * mbskip_table_pool
int alloc_mb_height
mb_height used to allocate tables
int8_t * qscale_table_base
uint8_t * data[MPV_MAX_PLANES]
int field_picture
whether or not the picture was encoded in separate fields
int linesize
linesize that the buffers in this context have been allocated for
int display_picture_number
int mb_stride
mb_stride of the tables
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t * dst
int ff_mpv_framesize_alloc(AVCodecContext *avctx, ScratchpadContext *sc, int linesize)
uint8_t * scratchpad_buf
the other *_scratchpad point into this buffer
int mb_width
mb_width of the tables
void ff_mpv_unref_picture(MPVWorkPicture *pic)
void * hwaccel_picture_private
RefStruct reference for hardware accelerator private data.
struct FFRefStructPool * qscale_table_pool
int ff_mpv_pic_check_linesize(void *logctx, const struct AVFrame *f, ptrdiff_t *linesizep, ptrdiff_t *uvlinesizep)
Check that the linesizes of an AVFrame are consistent with the requirements of mpegvideo.
void ff_mpv_replace_picture(MPVWorkPicture *dst, const MPVWorkPicture *src)
int mb_height
mb_height of the tables
struct FFRefStructPool * ff_mpv_alloc_pic_pool(int init_progress)
Allocate a pool of MPVPictures.
main external API structure.
uint8_t * edge_emu_buffer
temporary buffer for if MVs point to out-of-frame data
int alloc_mb_width
mb_width used to allocate tables
void ff_mpv_workpic_from_pic(MPVWorkPicture *wpic, MPVPicture *pic)