FFmpeg
Data Structures | Functions
mpeg4videodec.h File Reference
#include <stdint.h>
#include "get_bits.h"
#include "mpegvideo.h"
#include "mpeg4videodsp.h"
#include "libavutil/mem_internal.h"

Go to the source code of this file.

Data Structures

struct  Mpeg4DecContext
 

Functions

int ff_mpeg4_decode_picture_header (Mpeg4DecContext *ctx, GetBitContext *gb, int header, int parse_only)
 Decode MPEG-4 headers. More...
 
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)
 
void ff_mpeg4_mcsel_motion (MpegEncContext *s, uint8_t *dest_y, uint8_t *dest_cb, uint8_t *dest_cr, uint8_t *const *ref_picture)
 
int ff_mpeg4_decode_partitions (Mpeg4DecContext *ctx)
 Decode the first and second partition. More...
 
int ff_mpeg4_decode_video_packet_header (Mpeg4DecContext *ctx)
 Decode the next video packet. More...
 
int ff_mpeg4_decode_studio_slice_header (Mpeg4DecContext *ctx)
 Decode the next video packet. More...
 
int ff_mpeg4_workaround_bugs (AVCodecContext *avctx)
 
void ff_mpeg4_pred_ac (MpegEncContext *s, int16_t *block, int n, int dir)
 Predict the ac. More...
 
int ff_mpeg4_frame_end (AVCodecContext *avctx, const uint8_t *buf, int buf_size)
 

Function Documentation

◆ ff_mpeg4_decode_picture_header()

int ff_mpeg4_decode_picture_header ( Mpeg4DecContext ctx,
GetBitContext gb,
int  header,
int  parse_only 
)

Decode MPEG-4 headers.

Parameters
headerIf set the absence of a VOP is not treated as error; otherwise, it is treated as such.
parse_onlyIf set, things only relevant to a decoder may be skipped; furthermore, the VLC tables may be uninitialized.
Returns
<0 if an error occurred FRAME_SKIPPED if a not coded VOP is found 0 else

Definition at line 3486 of file mpeg4videodec.c.

Referenced by ff_h263_decode_frame(), and mpeg4_decode_header().

◆ ff_mpeg4_decode_studio()

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 247 of file mpeg4videodec.c.

Referenced by mpv_reconstruct_mb_internal().

◆ ff_mpeg4_mcsel_motion()

void ff_mpeg4_mcsel_motion ( MpegEncContext s,
uint8_t *  dest_y,
uint8_t *  dest_cb,
uint8_t *  dest_cr,
uint8_t *const *  ref_picture 
)

Definition at line 232 of file mpeg4videodec.c.

Referenced by mpv_motion_internal().

◆ ff_mpeg4_decode_partitions()

int ff_mpeg4_decode_partitions ( Mpeg4DecContext ctx)

Decode the first and second partition.

Returns
<0 if error (and sets error type in the error_status_table)

Definition at line 1223 of file mpeg4videodec.c.

Referenced by decode_slice().

◆ ff_mpeg4_decode_video_packet_header()

int ff_mpeg4_decode_video_packet_header ( Mpeg4DecContext ctx)

Decode the next video packet.

Returns
<0 if something went wrong

Definition at line 693 of file mpeg4videodec.c.

Referenced by ff_h263_resync().

◆ ff_mpeg4_decode_studio_slice_header()

int ff_mpeg4_decode_studio_slice_header ( Mpeg4DecContext ctx)

Decode the next video packet.

Returns
<0 if something went wrong

Definition at line 792 of file mpeg4videodec.c.

Referenced by decode_slice().

◆ ff_mpeg4_workaround_bugs()

int ff_mpeg4_workaround_bugs ( AVCodecContext avctx)

Definition at line 2980 of file mpeg4videodec.c.

Referenced by ff_h263_decode_frame().

◆ ff_mpeg4_pred_ac()

void ff_mpeg4_pred_ac ( MpegEncContext s,
int16_t *  block,
int  n,
int  dir 
)

Predict the ac.

Parameters
nblock index (0-3 are luma, 4-5 are chroma)
dirthe ac prediction direction

Definition at line 315 of file mpeg4videodec.c.

Referenced by ff_msmpeg4_decode_block(), and mpeg4_decode_block().

◆ ff_mpeg4_frame_end()

int ff_mpeg4_frame_end ( AVCodecContext avctx,
const uint8_t *  buf,
int  buf_size 
)

Definition at line 3644 of file mpeg4videodec.c.

Referenced by ff_h263_decode_frame().