FFmpeg  4.0
Functions | Variables
msmpeg4enc.c File Reference

MSMPEG4 encoder backend. More...

#include <stdint.h>
#include <string.h>
#include "libavutil/attributes.h"
#include "libavutil/avutil.h"
#include "libavutil/mem.h"
#include "mpegvideo.h"
#include "h263.h"
#include "internal.h"
#include "mpeg4video.h"
#include "msmpeg4.h"
#include "msmpeg4data.h"
#include "put_bits.h"
#include "rl.h"
#include "vc1data.h"

Go to the source code of this file.

Functions

static av_cold int init_mv_table (MVTable *tab)
 
void ff_msmpeg4_code012 (PutBitContext *pb, int n)
 
static int get_size_of_code (MpegEncContext *s, RLTable *rl, int last, int run, int level, int intra)
 
av_cold int ff_msmpeg4_encode_init (MpegEncContext *s)
 
static void find_best_tables (MpegEncContext *s)
 
void ff_msmpeg4_encode_picture_header (MpegEncContext *s, int picture_number)
 
void ff_msmpeg4_encode_ext_header (MpegEncContext *s)
 
void ff_msmpeg4_encode_motion (MpegEncContext *s, int mx, int my)
 
void ff_msmpeg4_handle_slices (MpegEncContext *s)
 
static void msmpeg4v2_encode_motion (MpegEncContext *s, int val)
 
void ff_msmpeg4_encode_mb (MpegEncContext *s, int16_t block[6][64], int motion_x, int motion_y)
 
static void msmpeg4_encode_dc (MpegEncContext *s, int level, int n, int *dir_ptr)
 
void ff_msmpeg4_encode_block (MpegEncContext *s, int16_t *block, int n)
 

Variables

static uint8_t rl_length [NB_RL_TABLES][MAX_LEVEL+1][MAX_RUN+1][2]
 

Detailed Description

MSMPEG4 encoder backend.

Definition in file msmpeg4enc.c.

Function Documentation

◆ init_mv_table()

static av_cold int init_mv_table ( MVTable tab)
static

Definition at line 49 of file msmpeg4enc.c.

Referenced by ff_msmpeg4_encode_init().

◆ ff_msmpeg4_code012()

void ff_msmpeg4_code012 ( PutBitContext pb,
int  n 
)

Definition at line 70 of file msmpeg4enc.c.

Referenced by ff_msmpeg4_encode_picture_header(), and ff_wmv2_encode_picture_header().

◆ get_size_of_code()

static int get_size_of_code ( MpegEncContext s,
RLTable rl,
int  last,
int  run,
int  level,
int  intra 
)
static

Definition at line 80 of file msmpeg4enc.c.

Referenced by ff_msmpeg4_encode_init().

◆ ff_msmpeg4_encode_init()

av_cold int ff_msmpeg4_encode_init ( MpegEncContext s)

Definition at line 121 of file msmpeg4enc.c.

Referenced by ff_mpv_encode_init().

◆ find_best_tables()

static void find_best_tables ( MpegEncContext s)
static

Definition at line 159 of file msmpeg4enc.c.

Referenced by ff_msmpeg4_encode_picture_header().

◆ ff_msmpeg4_encode_picture_header()

void ff_msmpeg4_encode_picture_header ( MpegEncContext s,
int  picture_number 
)

Definition at line 224 of file msmpeg4enc.c.

Referenced by encode_picture().

◆ ff_msmpeg4_encode_ext_header()

void ff_msmpeg4_encode_ext_header ( MpegEncContext s)

Definition at line 284 of file msmpeg4enc.c.

Referenced by encode_thread(), and ff_msmpeg4_encode_picture_header().

◆ ff_msmpeg4_encode_motion()

void ff_msmpeg4_encode_motion ( MpegEncContext s,
int  mx,
int  my 
)

Definition at line 297 of file msmpeg4enc.c.

Referenced by ff_msmpeg4_encode_mb(), and ff_wmv2_encode_mb().

◆ ff_msmpeg4_handle_slices()

void ff_msmpeg4_handle_slices ( MpegEncContext s)

Definition at line 330 of file msmpeg4enc.c.

Referenced by ff_msmpeg4_encode_mb(), and ff_wmv2_encode_mb().

◆ msmpeg4v2_encode_motion()

static void msmpeg4v2_encode_motion ( MpegEncContext s,
int  val 
)
static

Definition at line 343 of file msmpeg4enc.c.

Referenced by ff_msmpeg4_encode_mb().

◆ ff_msmpeg4_encode_mb()

void ff_msmpeg4_encode_mb ( MpegEncContext s,
int16_t  block[6][64],
int  motion_x,
int  motion_y 
)

Definition at line 376 of file msmpeg4enc.c.

Referenced by encode_mb_internal().

◆ msmpeg4_encode_dc()

static void msmpeg4_encode_dc ( MpegEncContext s,
int  level,
int  n,
int dir_ptr 
)
static

Definition at line 499 of file msmpeg4enc.c.

Referenced by ff_msmpeg4_encode_block().

◆ ff_msmpeg4_encode_block()

void ff_msmpeg4_encode_block ( MpegEncContext s,
int16_t *  block,
int  n 
)

Definition at line 577 of file msmpeg4enc.c.

Referenced by ff_msmpeg4_encode_mb(), and ff_wmv2_encode_mb().

Variable Documentation

◆ rl_length

uint8_t rl_length[NB_RL_TABLES][MAX_LEVEL+1][MAX_RUN+1][2]
static

Definition at line 46 of file msmpeg4enc.c.

Referenced by ff_msmpeg4_encode_init(), and find_best_tables().