|
FFmpeg
|
#include <limits.h>#include "config_components.h"#include "libavutil/avassert.h"#include "libavutil/emms.h"#include "libavutil/imgutils.h"#include "libavutil/internal.h"#include "libavutil/video_enc_params.h"#include "avcodec.h"#include "decode.h"#include "h264chroma.h"#include "internal.h"#include "mpegutils.h"#include "mpegvideo.h"#include "mpegvideodec.h"#include "mpeg4videodec.h"#include "thread.h"#include "threadframe.h"#include "wmv2dec.h"#include "mpv_reconstruct_mb_template.c"Go to the source code of this file.
Macros | |
| #define | UPDATE_PICTURE(pic) |
| #define | REBASE_PICTURE(pic, new_ctx, old_ctx) |
| #define | IS_ENCODER 0 |
Functions | |
| void | ff_mpv_decode_init (MpegEncContext *s, AVCodecContext *avctx) |
| Initialize the given MpegEncContext for decoding. More... | |
| int | ff_mpeg_update_thread_context (AVCodecContext *dst, const AVCodecContext *src) |
| int | ff_mpv_common_frame_size_change (MpegEncContext *s) |
| static int | alloc_picture (MpegEncContext *s, Picture *pic) |
| static void | color_frame (AVFrame *frame, int luma) |
| int | ff_mpv_frame_start (MpegEncContext *s, AVCodecContext *avctx) |
| generic function called after decoding the header and before a frame is decoded. More... | |
| void | ff_mpv_frame_end (MpegEncContext *s) |
| void | ff_print_debug_info (const MpegEncContext *s, const Picture *p, AVFrame *pict) |
| int | ff_mpv_export_qp_table (const MpegEncContext *s, AVFrame *f, const Picture *p, int qp_type) |
| void | ff_mpeg_draw_horiz_band (MpegEncContext *s, int y, int h) |
| void | ff_mpeg_flush (AVCodecContext *avctx) |
| void | ff_mpv_report_decode_progress (MpegEncContext *s) |
| static int | hpel_motion_lowres (MpegEncContext *s, uint8_t *dest, const uint8_t *src, int field_based, int field_select, int src_x, int src_y, int width, int height, ptrdiff_t stride, int h_edge_pos, int v_edge_pos, int w, int h, const h264_chroma_mc_func *pix_op, int motion_x, int motion_y) |
| static av_always_inline void | mpeg_motion_lowres (MpegEncContext *s, uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr, int field_based, int bottom_field, int field_select, uint8_t *const *ref_picture, const h264_chroma_mc_func *pix_op, int motion_x, int motion_y, int h, int mb_y) |
| static void | chroma_4mv_motion_lowres (MpegEncContext *s, uint8_t *dest_cb, uint8_t *dest_cr, uint8_t *const *ref_picture, const h264_chroma_mc_func *pix_op, int mx, int my) |
| static void | MPV_motion_lowres (MpegEncContext *s, uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr, int dir, uint8_t *const *ref_picture, const h264_chroma_mc_func *pix_op) |
| motion compensation of a single macroblock More... | |
| static int | lowest_referenced_row (MpegEncContext *s, int dir) |
| find the lowest MB row referenced in the MVs More... | |
| static void | add_dct (MpegEncContext *s, int16_t *block, int i, uint8_t *dest, int line_size) |
| void | ff_mpv_reconstruct_mb (MpegEncContext *s, int16_t block[12][64]) |
| #define UPDATE_PICTURE | ( | pic | ) |
| #define REBASE_PICTURE | ( | pic, | |
| new_ctx, | |||
| old_ctx | |||
| ) |
| #define IS_ENCODER 0 |
Definition at line 1011 of file mpegvideo_dec.c.
| void ff_mpv_decode_init | ( | MpegEncContext * | s, |
| AVCodecContext * | avctx | ||
| ) |
Initialize the given MpegEncContext for decoding.
the changed fields will not depend upon the prior state of the MpegEncContext.
Definition at line 45 of file mpegvideo_dec.c.
Referenced by ff_h263_decode_init(), ff_rv34_decode_init(), ff_vc1_decode_init(), h261_decode_init(), ipu_decode_init(), mpeg_decode_init(), and rv10_decode_init().
| int ff_mpeg_update_thread_context | ( | AVCodecContext * | dst, |
| const AVCodecContext * | src | ||
| ) |
Definition at line 62 of file mpegvideo_dec.c.
Referenced by ff_rv34_decode_update_thread_context().
| int ff_mpv_common_frame_size_change | ( | MpegEncContext * | s | ) |
Definition at line 190 of file mpegvideo_dec.c.
Referenced by ff_h263_decode_frame(), ff_mpeg_update_thread_context(), ff_rv34_decode_frame(), and ff_rv34_decode_update_thread_context().
|
static |
Definition at line 238 of file mpegvideo_dec.c.
Referenced by ff_mpv_frame_start().
Definition at line 273 of file mpegvideo_dec.c.
Referenced by ff_mpv_frame_start().
| int ff_mpv_frame_start | ( | MpegEncContext * | s, |
| AVCodecContext * | avctx | ||
| ) |
generic function called after decoding the header and before a frame is decoded.
Definition at line 295 of file mpegvideo_dec.c.
Referenced by decode_wmv9(), ff_h263_decode_frame(), ff_rv34_decode_frame(), h261_decode_frame(), mpeg_field_start(), rv10_decode_packet(), and vc1_decode_frame().
| void ff_mpv_frame_end | ( | MpegEncContext * | s | ) |
Definition at line 496 of file mpegvideo_dec.c.
Referenced by decode_wmv9(), ff_h263_decode_frame(), ff_rv34_decode_frame(), finish_frame(), h261_decode_frame(), rv10_decode_frame(), rv10_decode_packet(), slice_end(), and vc1_decode_frame().
| void ff_print_debug_info | ( | const MpegEncContext * | s, |
| const Picture * | p, | ||
| AVFrame * | pict | ||
| ) |
Definition at line 504 of file mpegvideo_dec.c.
Referenced by ff_h263_decode_frame(), finish_frame(), h261_decode_frame(), rv10_decode_frame(), slice_end(), and vc1_decode_frame().
| int ff_mpv_export_qp_table | ( | const MpegEncContext * | s, |
| AVFrame * | f, | ||
| const Picture * | p, | ||
| int | qp_type | ||
| ) |
Definition at line 511 of file mpegvideo_dec.c.
Referenced by ff_h263_decode_frame(), finish_frame(), rv10_decode_frame(), and slice_end().
| void ff_mpeg_draw_horiz_band | ( | MpegEncContext * | s, |
| int | y, | ||
| int | h | ||
| ) |
Definition at line 541 of file mpegvideo_dec.c.
Referenced by decode_slice(), dxva2_mpeg2_end_frame(), mpeg_decode_slice(), vaapi_mpeg2_end_frame(), and vaapi_mpeg4_end_frame().
| void ff_mpeg_flush | ( | AVCodecContext * | avctx | ) |
Definition at line 549 of file mpegvideo_dec.c.
Referenced by decode_wmv9(), and flush().
| void ff_mpv_report_decode_progress | ( | MpegEncContext * | s | ) |
Definition at line 570 of file mpegvideo_dec.c.
Referenced by decode_slice(), and mpeg_decode_slice().
|
inlinestatic |
Definition at line 577 of file mpegvideo_dec.c.
Referenced by MPV_motion_lowres().
|
static |
Definition at line 624 of file mpegvideo_dec.c.
Referenced by MPV_motion_lowres().
|
inlinestatic |
Definition at line 763 of file mpegvideo_dec.c.
Referenced by MPV_motion_lowres().
|
inlinestatic |
motion compensation of a single macroblock
| s | context |
| dest_y | luma destination pointer |
| dest_cb | chroma cb/u destination pointer |
| dest_cr | chroma cr/v destination pointer |
| dir | direction (0->forward, 1->backward) |
| ref_picture | array[3] of pointers to the 3 planes of the reference picture |
| pix_op | halfpel motion compensation function (average or put normally) the motion vectors are taken from s->mv and the MV type from s->mv_type |
Definition at line 831 of file mpegvideo_dec.c.
Referenced by mpv_reconstruct_mb_internal().
|
static |
find the lowest MB row referenced in the MVs
Definition at line 967 of file mpegvideo_dec.c.
Referenced by mpv_reconstruct_mb_internal().
|
inlinestatic |
Definition at line 1003 of file mpegvideo_dec.c.
Referenced by mpv_reconstruct_mb_internal().
| void ff_mpv_reconstruct_mb | ( | MpegEncContext * | s, |
| int16_t | block[12][64] | ||
| ) |
Definition at line 1014 of file mpegvideo_dec.c.
Referenced by decode_slice(), h261_decode_mb(), h261_decode_mb_skipped(), mpeg_decode_slice(), mpeg_er_decode_mb(), and rv10_decode_packet().
1.8.17