FFmpeg
|
#include <mpegvideoenc.h>
Public Member Functions | |
DECLARE_ALIGNED_32 (int16_t, blocks)[2][12][64] | |
Data Fields | |
MpegEncContext | c |
the common base context More... | |
PutBitContext | pb |
bit output More... | |
unsigned int | lambda |
Lagrange multiplier used in rate distortion. More... | |
unsigned int | lambda2 |
(lambda*lambda) >> FF_LAMBDA_SHIFT More... | |
int * | lambda_table |
int | adaptive_quant |
use adaptive quantization More... | |
int | dquant |
qscale difference to prev qscale More... | |
int | skipdct |
skip dct and code zero residual More... | |
int | quantizer_noise_shaping |
int | luma_elim_threshold |
int | chroma_elim_threshold |
int | mpv_flags |
flags set by private options More... | |
int | frame_reconstruction_bitfield |
Bitfield containing information which frames to reconstruct. More... | |
AVFrame * | new_pic |
Reference to the source picture. More... | |
struct MPVMainEncContext * | parent |
FDCTDSPContext | fdsp |
MpegvideoEncDSPContext | mpvencdsp |
PixblockDSPContext | pdsp |
MotionEstContext | me |
int | f_code |
forward MV resolution More... | |
int | b_code |
backward MV resolution for B-frames More... | |
int16_t(* | p_mv_table )[2] |
MV table (1MV per MB) P-frame. More... | |
int16_t(* | b_forw_mv_table )[2] |
MV table (1MV per MB) forward mode B-frame. More... | |
int16_t(* | b_back_mv_table )[2] |
MV table (1MV per MB) backward mode B-frame. More... | |
int16_t(* | b_bidir_forw_mv_table )[2] |
MV table (1MV per MB) bidir mode B-frame. More... | |
int16_t(* | b_bidir_back_mv_table )[2] |
MV table (1MV per MB) bidir mode B-frame. More... | |
int16_t(* | b_direct_mv_table )[2] |
MV table (1MV per MB) direct mode B-frame. More... | |
int16_t(*[2][2][2] | b_field_mv_table )[2] |
MV table (4MV per MB) interlaced B-frame. More... | |
uint8_t *[2] | p_field_select_table |
Only the first element is allocated. More... | |
uint8_t *[2][2] | b_field_select_table |
allocated jointly with p_field_select_table More... | |
uint16_t * | mb_type |
Table for candidate MB types. More... | |
uint16_t * | mb_var |
Table for MB variances. More... | |
uint16_t * | mc_mb_var |
Table for motion compensated MB variances. More... | |
uint8_t * | mb_mean |
Table for MB luminance. More... | |
uint64_t | encoding_error [MPV_MAX_PLANES] |
int | intra_quant_bias |
bias for the quantizer More... | |
int | inter_quant_bias |
bias for the quantizer More... | |
int | min_qcoeff |
minimum encodable coefficient More... | |
int | max_qcoeff |
maximum encodable coefficient More... | |
int | ac_esc_length |
num of bits needed to encode the longest esc More... | |
const uint8_t * | intra_ac_vlc_length |
const uint8_t * | intra_ac_vlc_last_length |
const uint8_t * | intra_chroma_ac_vlc_length |
const uint8_t * | intra_chroma_ac_vlc_last_length |
const uint8_t * | inter_ac_vlc_length |
const uint8_t * | inter_ac_vlc_last_length |
const uint8_t * | luma_dc_vlc_length |
int | coded_score [12] |
int16_t(* | block )[64] |
points into blocks below More... | |
int(* | q_intra_matrix )[64] |
precomputed matrix (combine qscale and DCT renorm) More... | |
int(* | q_chroma_intra_matrix )[64] |
int(* | q_inter_matrix )[64] |
uint16_t(* | q_intra_matrix16 )[2][64] |
identical to the above but for MMX & these are not permutated, second 64 entries are bias More... | |
uint16_t(* | q_chroma_intra_matrix16 )[2][64] |
uint16_t(* | q_inter_matrix16 )[2][64] |
void(* | denoise_dct )(struct MPVEncContext *s, int16_t *block) |
int(* | dct_error_sum )[64] |
int | dct_count [2] |
uint16_t(* | dct_offset )[64] |
int | picture_number |
int | mv_bits |
int | i_tex_bits |
int | p_tex_bits |
int | i_count |
int | misc_bits |
cbp, mb_type More... | |
int | last_bits |
temp var used for calculating the above vars More... | |
int | mb_skip_run |
int | gob_index |
int | mb_info |
interval for outputting info about mb offsets as side data More... | |
int | prev_mb_info |
int | last_mb_info |
int | mb_info_size |
uint8_t * | mb_info_ptr |
int | umvplus |
== H.263+ && unrestricted_mv More... | |
int | h263_slice_structured |
int | alt_inter_vlc |
alternative inter vlc More... | |
int | modified_quant |
int | loop_filter |
struct MJpegContext * | mjpeg_ctx |
int | esc_pos |
int | last_mv_dir |
last mv_dir, used for B-frame encoding More... | |
int | data_partitioning |
data partitioning flag, set via option More... | |
int | partitioned_frame |
is current frame partitioned More... | |
int | mpeg_quant |
PutBitContext | tex_pb |
used for data partitioned VOPs More... | |
PutBitContext | pb2 |
used for data partitioned VOPs More... | |
int | slice_height |
in macroblocks More... | |
int | flipflop_rounding |
also used for MPEG-4, H.263+ More... | |
int | esc3_level_length |
int | rtp_mode |
int | rtp_payload_size |
int | error_rate |
uint8_t * | ptr_lastgob |
void(* | encode_mb )(struct MPVEncContext *s, int16_t block[][64], int motion_x, int motion_y) |
int(* | dct_quantize )(struct MPVEncContext *s, int16_t *block, int n, int qscale, int *overflow) |
me_cmp_func | ildct_cmp [2] |
0 = intra, 1 = non-intra More... | |
me_cmp_func | n_sse_cmp [2] |
either SSE or NSSE cmp func More... | |
me_cmp_func | sad_cmp [2] |
me_cmp_func | sse_cmp [2] |
int(* | sum_abs_dctelem )(const int16_t *block) |
int | intra_penalty |
Definition at line 46 of file mpegvideoenc.h.
MPVEncContext::DECLARE_ALIGNED_32 | ( | int16_t | , |
blocks | |||
) |
MpegEncContext MPVEncContext::c |
the common base context
Definition at line 47 of file mpegvideoenc.h.
Referenced by encode_frame(), encode_init(), encode_picture(), encode_q_branch(), init_slice_buffers(), and init_unquantize().
PutBitContext MPVEncContext::pb |
bit output
Definition at line 50 of file mpegvideoenc.h.
Referenced by encode_picture(), ff_mjpeg_encode_dc(), ff_mjpeg_encode_picture_header(), ff_mjpeg_encode_picture_trailer(), and ff_mjpeg_escape_FF().
unsigned int MPVEncContext::lambda |
Lagrange multiplier used in rate distortion.
Definition at line 52 of file mpegvideoenc.h.
Referenced by encode_frame(), and encode_picture().
unsigned int MPVEncContext::lambda2 |
(lambda*lambda) >> FF_LAMBDA_SHIFT
Definition at line 53 of file mpegvideoenc.h.
Referenced by encode_frame(), and encode_picture().
int* MPVEncContext::lambda_table |
Definition at line 54 of file mpegvideoenc.h.
int MPVEncContext::adaptive_quant |
use adaptive quantization
Definition at line 55 of file mpegvideoenc.h.
int MPVEncContext::dquant |
qscale difference to prev qscale
Definition at line 56 of file mpegvideoenc.h.
int MPVEncContext::skipdct |
skip dct and code zero residual
Definition at line 57 of file mpegvideoenc.h.
int MPVEncContext::quantizer_noise_shaping |
Definition at line 59 of file mpegvideoenc.h.
int MPVEncContext::luma_elim_threshold |
Definition at line 61 of file mpegvideoenc.h.
int MPVEncContext::chroma_elim_threshold |
Definition at line 62 of file mpegvideoenc.h.
int MPVEncContext::mpv_flags |
flags set by private options
Definition at line 64 of file mpegvideoenc.h.
int MPVEncContext::frame_reconstruction_bitfield |
Bitfield containing information which frames to reconstruct.
Definition at line 66 of file mpegvideoenc.h.
AVFrame* MPVEncContext::new_pic |
Reference to the source picture.
Definition at line 71 of file mpegvideoenc.h.
struct MPVMainEncContext* MPVEncContext::parent |
Definition at line 73 of file mpegvideoenc.h.
FDCTDSPContext MPVEncContext::fdsp |
Definition at line 75 of file mpegvideoenc.h.
MpegvideoEncDSPContext MPVEncContext::mpvencdsp |
Definition at line 76 of file mpegvideoenc.h.
PixblockDSPContext MPVEncContext::pdsp |
Definition at line 77 of file mpegvideoenc.h.
MotionEstContext MPVEncContext::me |
Definition at line 78 of file mpegvideoenc.h.
Referenced by encode_end(), encode_frame(), encode_init(), encode_picture(), encode_q_branch(), get_4block_rd(), and get_block_rd().
int MPVEncContext::f_code |
forward MV resolution
Definition at line 80 of file mpegvideoenc.h.
Referenced by encode_frame(), and encode_q_branch().
int MPVEncContext::b_code |
backward MV resolution for B-frames
Definition at line 81 of file mpegvideoenc.h.
int16_t(* MPVEncContext::p_mv_table)[2] |
MV table (1MV per MB) P-frame.
Definition at line 83 of file mpegvideoenc.h.
int16_t(* MPVEncContext::b_forw_mv_table)[2] |
MV table (1MV per MB) forward mode B-frame.
Definition at line 84 of file mpegvideoenc.h.
int16_t(* MPVEncContext::b_back_mv_table)[2] |
MV table (1MV per MB) backward mode B-frame.
Definition at line 85 of file mpegvideoenc.h.
int16_t(* MPVEncContext::b_bidir_forw_mv_table)[2] |
MV table (1MV per MB) bidir mode B-frame.
Definition at line 86 of file mpegvideoenc.h.
int16_t(* MPVEncContext::b_bidir_back_mv_table)[2] |
MV table (1MV per MB) bidir mode B-frame.
Definition at line 87 of file mpegvideoenc.h.
int16_t(* MPVEncContext::b_direct_mv_table)[2] |
MV table (1MV per MB) direct mode B-frame.
Definition at line 88 of file mpegvideoenc.h.
int16_t(*[2][2][2] MPVEncContext::b_field_mv_table)[2] |
MV table (4MV per MB) interlaced B-frame.
Definition at line 89 of file mpegvideoenc.h.
uint8_t*[2] MPVEncContext::p_field_select_table |
Only the first element is allocated.
Definition at line 90 of file mpegvideoenc.h.
uint8_t*[2][2] MPVEncContext::b_field_select_table |
allocated jointly with p_field_select_table
Definition at line 91 of file mpegvideoenc.h.
uint16_t* MPVEncContext::mb_type |
Table for candidate MB types.
Definition at line 93 of file mpegvideoenc.h.
uint16_t* MPVEncContext::mb_var |
Table for MB variances.
Definition at line 94 of file mpegvideoenc.h.
uint16_t* MPVEncContext::mc_mb_var |
Table for motion compensated MB variances.
Definition at line 95 of file mpegvideoenc.h.
uint8_t* MPVEncContext::mb_mean |
Table for MB luminance.
Definition at line 96 of file mpegvideoenc.h.
uint64_t MPVEncContext::encoding_error[MPV_MAX_PLANES] |
Definition at line 97 of file mpegvideoenc.h.
int MPVEncContext::intra_quant_bias |
bias for the quantizer
Definition at line 99 of file mpegvideoenc.h.
int MPVEncContext::inter_quant_bias |
bias for the quantizer
Definition at line 100 of file mpegvideoenc.h.
int MPVEncContext::min_qcoeff |
minimum encodable coefficient
Definition at line 101 of file mpegvideoenc.h.
int MPVEncContext::max_qcoeff |
maximum encodable coefficient
Definition at line 102 of file mpegvideoenc.h.
int MPVEncContext::ac_esc_length |
num of bits needed to encode the longest esc
Definition at line 103 of file mpegvideoenc.h.
const uint8_t* MPVEncContext::intra_ac_vlc_length |
Definition at line 104 of file mpegvideoenc.h.
const uint8_t* MPVEncContext::intra_ac_vlc_last_length |
Definition at line 105 of file mpegvideoenc.h.
const uint8_t* MPVEncContext::intra_chroma_ac_vlc_length |
Definition at line 106 of file mpegvideoenc.h.
const uint8_t* MPVEncContext::intra_chroma_ac_vlc_last_length |
Definition at line 107 of file mpegvideoenc.h.
const uint8_t* MPVEncContext::inter_ac_vlc_length |
Definition at line 108 of file mpegvideoenc.h.
const uint8_t* MPVEncContext::inter_ac_vlc_last_length |
Definition at line 109 of file mpegvideoenc.h.
const uint8_t* MPVEncContext::luma_dc_vlc_length |
Definition at line 110 of file mpegvideoenc.h.
int MPVEncContext::coded_score[12] |
Definition at line 112 of file mpegvideoenc.h.
int16_t(* MPVEncContext::block)[64] |
points into blocks below
Definition at line 114 of file mpegvideoenc.h.
Referenced by init_slice_buffers().
int(* MPVEncContext::q_intra_matrix)[64] |
precomputed matrix (combine qscale and DCT renorm)
Definition at line 117 of file mpegvideoenc.h.
int(* MPVEncContext::q_chroma_intra_matrix)[64] |
Definition at line 118 of file mpegvideoenc.h.
int(* MPVEncContext::q_inter_matrix)[64] |
Definition at line 119 of file mpegvideoenc.h.
uint16_t(* MPVEncContext::q_intra_matrix16)[2][64] |
identical to the above but for MMX & these are not permutated, second 64 entries are bias
Definition at line 121 of file mpegvideoenc.h.
uint16_t(* MPVEncContext::q_chroma_intra_matrix16)[2][64] |
Definition at line 122 of file mpegvideoenc.h.
uint16_t(* MPVEncContext::q_inter_matrix16)[2][64] |
Definition at line 123 of file mpegvideoenc.h.
void(* MPVEncContext::denoise_dct) (struct MPVEncContext *s, int16_t *block) |
Definition at line 126 of file mpegvideoenc.h.
int(* MPVEncContext::dct_error_sum)[64] |
Definition at line 127 of file mpegvideoenc.h.
Referenced by init_slice_buffers().
int MPVEncContext::dct_count[2] |
Definition at line 128 of file mpegvideoenc.h.
uint16_t(* MPVEncContext::dct_offset)[64] |
Definition at line 129 of file mpegvideoenc.h.
Referenced by init_slice_buffers().
int MPVEncContext::picture_number |
Definition at line 131 of file mpegvideoenc.h.
Referenced by encode_frame().
int MPVEncContext::mv_bits |
Definition at line 134 of file mpegvideoenc.h.
Referenced by encode_frame().
int MPVEncContext::i_tex_bits |
Definition at line 135 of file mpegvideoenc.h.
int MPVEncContext::p_tex_bits |
Definition at line 136 of file mpegvideoenc.h.
Referenced by encode_frame().
int MPVEncContext::i_count |
Definition at line 137 of file mpegvideoenc.h.
int MPVEncContext::misc_bits |
int MPVEncContext::last_bits |
temp var used for calculating the above vars
Definition at line 139 of file mpegvideoenc.h.
int MPVEncContext::mb_skip_run |
Definition at line 141 of file mpegvideoenc.h.
int MPVEncContext::gob_index |
Definition at line 144 of file mpegvideoenc.h.
int MPVEncContext::mb_info |
interval for outputting info about mb offsets as side data
Definition at line 145 of file mpegvideoenc.h.
int MPVEncContext::prev_mb_info |
Definition at line 146 of file mpegvideoenc.h.
int MPVEncContext::last_mb_info |
Definition at line 146 of file mpegvideoenc.h.
int MPVEncContext::mb_info_size |
Definition at line 147 of file mpegvideoenc.h.
uint8_t* MPVEncContext::mb_info_ptr |
Definition at line 148 of file mpegvideoenc.h.
int MPVEncContext::umvplus |
== H.263+ && unrestricted_mv
Definition at line 151 of file mpegvideoenc.h.
int MPVEncContext::h263_slice_structured |
Definition at line 152 of file mpegvideoenc.h.
int MPVEncContext::alt_inter_vlc |
alternative inter vlc
Definition at line 153 of file mpegvideoenc.h.
int MPVEncContext::modified_quant |
Definition at line 154 of file mpegvideoenc.h.
int MPVEncContext::loop_filter |
Definition at line 155 of file mpegvideoenc.h.
struct MJpegContext* MPVEncContext::mjpeg_ctx |
Definition at line 158 of file mpegvideoenc.h.
int MPVEncContext::esc_pos |
Definition at line 159 of file mpegvideoenc.h.
int MPVEncContext::last_mv_dir |
last mv_dir, used for B-frame encoding
Definition at line 162 of file mpegvideoenc.h.
int MPVEncContext::data_partitioning |
data partitioning flag, set via option
Definition at line 165 of file mpegvideoenc.h.
int MPVEncContext::partitioned_frame |
is current frame partitioned
Definition at line 166 of file mpegvideoenc.h.
Referenced by ff_mpv_er_frame_start_ext().
int MPVEncContext::mpeg_quant |
Definition at line 167 of file mpegvideoenc.h.
Referenced by init_unquantize().
PutBitContext MPVEncContext::tex_pb |
used for data partitioned VOPs
Definition at line 168 of file mpegvideoenc.h.
PutBitContext MPVEncContext::pb2 |
used for data partitioned VOPs
Definition at line 169 of file mpegvideoenc.h.
int MPVEncContext::slice_height |
in macroblocks
Definition at line 172 of file mpegvideoenc.h.
int MPVEncContext::flipflop_rounding |
also used for MPEG-4, H.263+
Definition at line 173 of file mpegvideoenc.h.
int MPVEncContext::esc3_level_length |
Definition at line 174 of file mpegvideoenc.h.
int MPVEncContext::rtp_mode |
Definition at line 177 of file mpegvideoenc.h.
int MPVEncContext::rtp_payload_size |
Definition at line 178 of file mpegvideoenc.h.
int MPVEncContext::error_rate |
Definition at line 179 of file mpegvideoenc.h.
uint8_t* MPVEncContext::ptr_lastgob |
Definition at line 181 of file mpegvideoenc.h.
void(* MPVEncContext::encode_mb) (struct MPVEncContext *s, int16_t block[][64], int motion_x, int motion_y) |
Definition at line 183 of file mpegvideoenc.h.
int(* MPVEncContext::dct_quantize) (struct MPVEncContext *s, int16_t *block, int n, int qscale, int *overflow) |
Definition at line 186 of file mpegvideoenc.h.
me_cmp_func MPVEncContext::ildct_cmp[2] |
0 = intra, 1 = non-intra
Definition at line 188 of file mpegvideoenc.h.
me_cmp_func MPVEncContext::n_sse_cmp[2] |
either SSE or NSSE cmp func
Definition at line 189 of file mpegvideoenc.h.
me_cmp_func MPVEncContext::sad_cmp[2] |
Definition at line 190 of file mpegvideoenc.h.
me_cmp_func MPVEncContext::sse_cmp[2] |
Definition at line 191 of file mpegvideoenc.h.
int(* MPVEncContext::sum_abs_dctelem) (const int16_t *block) |
Definition at line 192 of file mpegvideoenc.h.
int MPVEncContext::intra_penalty |
Definition at line 194 of file mpegvideoenc.h.