FFmpeg
Functions | Variables
speedhqenc.c File Reference

SpeedHQ encoder. More...

#include "libavutil/pixdesc.h"
#include "libavutil/thread.h"
#include "avcodec.h"
#include "mpeg12.h"
#include "mpegvideo.h"
#include "speedhqenc.h"

Go to the source code of this file.

Functions

static uint32_t reverse (uint32_t num, int bits)
 
static void reverse_code (const uint16_t *code, const uint8_t *bits, uint16_t *reversed_code, int num_entries)
 
static av_cold void speedhq_init_static_data (void)
 
av_cold int ff_speedhq_encode_init (MpegEncContext *s)
 
void ff_speedhq_encode_picture_header (MpegEncContext *s)
 
void ff_speedhq_end_slice (MpegEncContext *s)
 
static void encode_dc (PutBitContext *pb, int diff, int component)
 
static void encode_block (MpegEncContext *s, int16_t *block, int n)
 
void ff_speedhq_encode_mb (MpegEncContext *s, int16_t block[12][64])
 
static int ff_speedhq_mb_rows_in_slice (int slice_num, int mb_height)
 
int ff_speedhq_mb_y_order_to_mb (int mb_y_order, int mb_height, int *first_in_slice)
 

Variables

RLTable ff_rl_speedhq
 
static uint8_t speedhq_static_rl_table_store [2][2 *MAX_RUN+MAX_LEVEL+3]
 
static uint16_t mpeg12_vlc_dc_lum_code_reversed [12]
 
static uint16_t mpeg12_vlc_dc_chroma_code_reversed [12]
 
static uint32_t speedhq_lum_dc_uni [512]
 
static uint32_t speedhq_chr_dc_uni [512]
 
static uint8_t uni_speedhq_ac_vlc_len [64 *64 *2]
 

Detailed Description

SpeedHQ encoder.

Definition in file speedhqenc.c.

Function Documentation

static uint32_t reverse ( uint32_t  num,
int  bits 
)
static
static void reverse_code ( const uint16_t *  code,
const uint8_t bits,
uint16_t *  reversed_code,
int  num_entries 
)
static

Definition at line 56 of file speedhqenc.c.

Referenced by speedhq_init_static_data().

static av_cold void speedhq_init_static_data ( void  )
static

Definition at line 63 of file speedhqenc.c.

Referenced by ff_speedhq_encode_init().

av_cold int ff_speedhq_encode_init ( MpegEncContext s)

Definition at line 102 of file speedhqenc.c.

Referenced by ff_mpv_encode_init().

void ff_speedhq_encode_picture_header ( MpegEncContext s)

Definition at line 140 of file speedhqenc.c.

Referenced by encode_picture().

void ff_speedhq_end_slice ( MpegEncContext s)

Definition at line 150 of file speedhqenc.c.

Referenced by encode_thread(), and write_slice_end().

static void encode_dc ( PutBitContext pb,
int  diff,
int  component 
)
inlinestatic

Definition at line 163 of file speedhqenc.c.

Referenced by encode_block(), and ff_mpeg1_init_uni_ac_vlc().

static void encode_block ( MpegEncContext s,
int16_t *  block,
int  n 
)
static

Definition at line 197 of file speedhqenc.c.

Referenced by ff_speedhq_encode_mb().

void ff_speedhq_encode_mb ( MpegEncContext s,
int16_t  block[12][64] 
)

Definition at line 245 of file speedhqenc.c.

Referenced by encode_mb_internal().

static int ff_speedhq_mb_rows_in_slice ( int  slice_num,
int  mb_height 
)
static

Definition at line 268 of file speedhqenc.c.

Referenced by ff_speedhq_mb_y_order_to_mb().

int ff_speedhq_mb_y_order_to_mb ( int  mb_y_order,
int  mb_height,
int first_in_slice 
)

Definition at line 273 of file speedhqenc.c.

Referenced by encode_thread().

Variable Documentation

RLTable ff_rl_speedhq

Definition at line 137 of file speedhq.c.

uint8_t speedhq_static_rl_table_store[2][2 *MAX_RUN+MAX_LEVEL+3]
static

Definition at line 39 of file speedhqenc.c.

Referenced by speedhq_init_static_data().

uint16_t mpeg12_vlc_dc_lum_code_reversed[12]
static

Definition at line 41 of file speedhqenc.c.

Referenced by encode_dc(), and speedhq_init_static_data().

uint16_t mpeg12_vlc_dc_chroma_code_reversed[12]
static

Definition at line 42 of file speedhqenc.c.

Referenced by encode_dc(), and speedhq_init_static_data().

uint32_t speedhq_lum_dc_uni[512]
static

Definition at line 46 of file speedhqenc.c.

Referenced by encode_dc(), and speedhq_init_static_data().

uint32_t speedhq_chr_dc_uni[512]
static

Definition at line 47 of file speedhqenc.c.

Referenced by encode_dc(), and speedhq_init_static_data().

uint8_t uni_speedhq_ac_vlc_len[64 *64 *2]
static

Definition at line 49 of file speedhqenc.c.

Referenced by ff_speedhq_encode_init(), and speedhq_init_static_data().