|
FFmpeg
|
#include "config_components.h"#include "libavutil/internal.h"#include "libavutil/opt.h"#include "libavutil/thread.h"#include "codec_internal.h"#include "error_resilience.h"#include "hwconfig.h"#include "idctdsp.h"#include "mpegutils.h"#include "mpegvideo.h"#include "mpegvideodata.h"#include "mpegvideodec.h"#include "mpeg4video.h"#include "mpeg4videodata.h"#include "mpeg4videodec.h"#include "h263.h"#include "h263data.h"#include "h263dec.h"#include "profiles.h"#include "threadframe.h"#include "xvididct.h"#include "unary.h"Go to the source code of this file.
Macros | |
| #define | UNCHECKED_BITSTREAM_READER 1 |
| #define | SPRITE_TRAJ_VLC_BITS 6 |
| #define | DC_VLC_BITS 9 |
| #define | MB_TYPE_B_VLC_BITS 4 |
| #define | STUDIO_INTRA_BITS 9 |
| #define | SET_QPEL_FUNC(postfix1, postfix2) |
| #define | OFFSET(x) offsetof(MpegEncContext, x) |
| #define | FLAGS AV_OPT_FLAG_EXPORT | AV_OPT_FLAG_READONLY |
Variables | |
| static VLC | dc_lum |
| static VLC | dc_chrom |
| static VLC | sprite_trajectory |
| static VLC | mb_type_b_vlc |
| static VLC | studio_intra_tab [12] |
| static VLC | studio_luma_dc |
| static VLC | studio_chroma_dc |
| static const uint8_t | mpeg4_block_count [4] = { 0, 6, 8, 12 } |
| static const int | mb_type_b_map [4] |
| static const uint8_t | ac_state_tab [22][2] |
| static const AVOption | mpeg4_options [] |
| static const AVClass | mpeg4_class |
| const FFCodec | ff_mpeg4_decoder |
| #define UNCHECKED_BITSTREAM_READER 1 |
Definition at line 23 of file mpeg4videodec.c.
| #define SPRITE_TRAJ_VLC_BITS 6 |
Definition at line 53 of file mpeg4videodec.c.
| #define DC_VLC_BITS 9 |
Definition at line 54 of file mpeg4videodec.c.
| #define MB_TYPE_B_VLC_BITS 4 |
Definition at line 55 of file mpeg4videodec.c.
| #define STUDIO_INTRA_BITS 9 |
Definition at line 56 of file mpeg4videodec.c.
| #define SET_QPEL_FUNC | ( | postfix1, | |
| postfix2 | |||
| ) |
| #define OFFSET | ( | x | ) | offsetof(MpegEncContext, x) |
Definition at line 3650 of file mpeg4videodec.c.
| #define FLAGS AV_OPT_FLAG_EXPORT | AV_OPT_FLAG_READONLY |
Definition at line 3651 of file mpeg4videodec.c.
| void ff_mpeg4_decode_studio | ( | MpegEncContext * | s, |
| uint8_t * | dest_y, | ||
| uint8_t * | dest_cb, | ||
| uint8_t * | dest_cr, | ||
| int | block_size, | ||
| int | uvlinesize, | ||
| int | dct_linesize, | ||
| int | dct_offset | ||
| ) |
Definition at line 74 of file mpeg4videodec.c.
Referenced by mpv_reconstruct_mb_internal().
| void ff_mpeg4_pred_ac | ( | MpegEncContext * | s, |
| int16_t * | block, | ||
| int | n, | ||
| int | dir | ||
| ) |
Predict the ac.
| n | block index (0-3 are luma, 4-5 are chroma) |
| dir | the ac prediction direction |
Definition at line 142 of file mpeg4videodec.c.
Referenced by ff_msmpeg4_decode_block(), and mpeg4_decode_block().
|
inlinestatic |
check if the next stuff is a resync marker or the end.
Definition at line 197 of file mpeg4videodec.c.
Referenced by mpeg4_decode_mb(), and mpeg4_decode_partitioned_mb().
|
static |
Definition at line 247 of file mpeg4videodec.c.
Referenced by decode_vop_header(), and ff_mpeg4_decode_video_packet_header().
|
static |
Definition at line 500 of file mpeg4videodec.c.
Referenced by decode_vop_header(), and ff_mpeg4_decode_video_packet_header().
| int ff_mpeg4_decode_video_packet_header | ( | Mpeg4DecContext * | ctx | ) |
Decode the next video packet.
Definition at line 516 of file mpeg4videodec.c.
Referenced by ff_h263_resync().
|
static |
Definition at line 605 of file mpeg4videodec.c.
Referenced by decode_studio_vop_header(), and ff_mpeg4_decode_studio_slice_header().
| int ff_mpeg4_decode_studio_slice_header | ( | Mpeg4DecContext * | ctx | ) |
Decode the next video packet.
Definition at line 617 of file mpeg4videodec.c.
Referenced by decode_slice().
|
inlinestatic |
Get the average motion vector for a GMC MB.
| n | either 0 for the x component or 1 for y |
Definition at line 659 of file mpeg4videodec.c.
Referenced by mpeg4_decode_mb(), and mpeg4_decode_partition_a().
|
inlinestatic |
Decode the dc value.
| n | block index (0-3 are luma, 4-5 are chroma) |
| dir_ptr | the prediction direction will be stored here |
Definition at line 712 of file mpeg4videodec.c.
Referenced by mpeg4_decode_block(), mpeg4_decode_partition_a(), and mpeg4_decode_partition_b().
|
static |
Decode first partition.
Definition at line 759 of file mpeg4videodec.c.
Referenced by ff_mpeg4_decode_partitions().
|
static |
decode second partition.
Definition at line 953 of file mpeg4videodec.c.
Referenced by ff_mpeg4_decode_partitions().
| int ff_mpeg4_decode_partitions | ( | Mpeg4DecContext * | ctx | ) |
Decode the first and second partition.
Definition at line 1046 of file mpeg4videodec.c.
Referenced by decode_slice().
|
inlinestatic |
Decode a block.
Definition at line 1111 of file mpeg4videodec.c.
Referenced by mpeg4_decode_mb(), and mpeg4_decode_partitioned_mb().
|
static |
decode partition C of one MB.
Definition at line 1383 of file mpeg4videodec.c.
Referenced by decode_vop_header().
|
static |
Definition at line 1471 of file mpeg4videodec.c.
Referenced by decode_init(), and decode_vop_header().
|
static |
Definition at line 1855 of file mpeg4videodec.c.
Referenced by decode_studio_vol_header(), decode_studio_vop_header(), decode_studiovisualobject(), ff_mpeg4_decode_picture_header(), mpeg4_decode_studio_mb(), and read_quant_matrix_ext().
|
static |
Definition at line 1891 of file mpeg4videodec.c.
Referenced by mpeg4_decode_studio_mb().
|
static |
Definition at line 2006 of file mpeg4videodec.c.
Referenced by mpeg4_decode_studio_mb().
|
static |
Definition at line 2089 of file mpeg4videodec.c.
Referenced by decode_studio_vop_header().
|
static |
Definition at line 2137 of file mpeg4videodec.c.
Referenced by ff_mpeg4_decode_picture_header().
|
static |
Definition at line 2159 of file mpeg4videodec.c.
Referenced by ff_mpeg4_decode_picture_header().
|
static |
Definition at line 2173 of file mpeg4videodec.c.
Referenced by ff_mpeg4_decode_picture_header().
|
static |
Definition at line 2205 of file mpeg4videodec.c.
Referenced by decode_studio_vop_header(), and decode_vol_header().
|
static |
Definition at line 2222 of file mpeg4videodec.c.
Referenced by extension_and_user_data().
|
static |
Definition at line 2271 of file mpeg4videodec.c.
Referenced by decode_studio_vol_header(), decode_studio_vop_header(), decode_studiovisualobject(), and ff_mpeg4_decode_picture_header().
|
static |
Definition at line 2288 of file mpeg4videodec.c.
Referenced by decode_vol_header().
|
static |
Definition at line 2374 of file mpeg4videodec.c.
Referenced by ff_mpeg4_decode_picture_header().
|
static |
Decode the user data stuff in the header.
Also initializes divx/xvid/lavc_version/build.
Definition at line 2749 of file mpeg4videodec.c.
Referenced by ff_mpeg4_decode_picture_header().
| int ff_mpeg4_workaround_bugs | ( | AVCodecContext * | avctx | ) |
Definition at line 2806 of file mpeg4videodec.c.
Referenced by ff_h263_decode_frame().
|
static |
Definition at line 2924 of file mpeg4videodec.c.
Referenced by ff_mpeg4_decode_picture_header().
|
static |
Definition at line 3207 of file mpeg4videodec.c.
Referenced by decode_studio_vop_header().
|
static |
Decode the next studio vop header.
Definition at line 3226 of file mpeg4videodec.c.
Referenced by ff_mpeg4_decode_picture_header().
|
static |
Definition at line 3281 of file mpeg4videodec.c.
Referenced by ff_mpeg4_decode_picture_header().
| int ff_mpeg4_decode_picture_header | ( | Mpeg4DecContext * | ctx, |
| GetBitContext * | gb, | ||
| int | header, | ||
| int | parse_only | ||
| ) |
Decode MPEG-4 headers.
| header | If set the absence of a VOP is not treated as error; otherwise, it is treated as such. |
| parse_only | If set, things only relevant to a decoder may be skipped; furthermore, the VLC tables may be uninitialized. |
Definition at line 3309 of file mpeg4videodec.c.
Referenced by ff_h263_decode_frame(), and mpeg4_decode_header().
| int ff_mpeg4_frame_end | ( | AVCodecContext * | avctx, |
| const uint8_t * | buf, | ||
| int | buf_size | ||
| ) |
Definition at line 3467 of file mpeg4videodec.c.
Referenced by ff_h263_decode_frame().
|
static |
Definition at line 3576 of file mpeg4videodec.c.
Referenced by decode_init().
|
static |
Definition at line 3623 of file mpeg4videodec.c.
|
static |
Definition at line 58 of file mpeg4videodec.c.
Referenced by mpeg4_decode_dc(), and mpeg4_init_static().
|
static |
Definition at line 58 of file mpeg4videodec.c.
Referenced by mpeg4_decode_dc(), and mpeg4_init_static().
|
static |
Definition at line 59 of file mpeg4videodec.c.
Referenced by mpeg4_decode_sprite_trajectory(), and mpeg4_init_static().
|
static |
Definition at line 60 of file mpeg4videodec.c.
Referenced by mpeg4_decode_mb(), and mpeg4_init_static().
|
static |
Definition at line 61 of file mpeg4videodec.c.
Referenced by mpeg4_decode_studio_block(), and mpeg4_init_static().
|
static |
Definition at line 62 of file mpeg4videodec.c.
Referenced by mpeg4_decode_studio_block(), and mpeg4_init_static().
|
static |
Definition at line 63 of file mpeg4videodec.c.
Referenced by mpeg4_decode_studio_block(), and mpeg4_init_static().
|
static |
Definition at line 65 of file mpeg4videodec.c.
Referenced by mpeg4_decode_studio_mb().
|
static |
|
static |
Definition at line 1865 of file mpeg4videodec.c.
Referenced by mpeg4_decode_studio_block().
|
static |
Definition at line 3652 of file mpeg4videodec.c.
|
static |
Definition at line 3658 of file mpeg4videodec.c.
| const FFCodec ff_mpeg4_decoder |
Definition at line 3665 of file mpeg4videodec.c.
1.8.17