|
FFmpeg
|
#include <mpegvideo.h>
Public Attributes | |
| AVClass * | class |
| int | y_dc_scale |
| int | c_dc_scale |
| int | ac_pred |
| int | block_last_index [12] |
| last non zero coefficient in block | |
| int | h263_aic |
| Advanced INTRA Coding (AIC) | |
| ScanTable | inter_scantable |
| if inter == intra then intra should be used to reduce the cache usage | |
| ScanTable | intra_scantable |
| ScanTable | intra_h_scantable |
| ScanTable | intra_v_scantable |
| struct AVCodecContext * | avctx |
| int | width |
| int | height |
| picture size. must be a multiple of 16 | |
| int | gop_size |
| int | intra_only |
| if true, only intra pictures are generated | |
| int64_t | bit_rate |
| wanted bit rate | |
| enum OutputFormat | out_format |
| output format | |
| int | h263_pred |
| use MPEG-4/H.263 ac/dc predictions | |
| int | pb_frame |
| PB-frame mode (0 = none, 1 = base, 2 = improved) | |
| int | h263_plus |
| H.263+ headers. | |
| int | h263_flv |
| use flv H.263 header | |
| enum AVCodecID | codec_id |
| int | fixed_qscale |
| fixed qscale if non zero | |
| int | encoding |
| true if we are encoding (vs decoding) | |
| int | max_b_frames |
| max number of B-frames for encoding | |
| int | luma_elim_threshold |
| int | chroma_elim_threshold |
| int | strict_std_compliance |
| strictly follow the std (MPEG-4, ...) | |
| int | workaround_bugs |
| workaround bugs in encoders which cannot be detected automatically | |
| int | codec_tag |
| internal codec_tag upper case converted from avctx codec_tag | |
| int | context_initialized |
| int | input_picture_number |
| used to set pic->display_picture_number, should not be used for/by anything else | |
| int | coded_picture_number |
| used to set pic->coded_picture_number, should not be used for/by anything else | |
| int | picture_number |
| int | picture_in_gop_number |
| 0-> first pic in gop, ... | |
| int | mb_width |
| int | mb_height |
| number of MBs horizontally & vertically | |
| int | mb_stride |
| mb_width+1 used for some arrays to allow simple addressing of left & top MBs without sig11 | |
| int | b8_stride |
| 2*mb_width+1 used for some 8x8 block arrays to allow simple addressing | |
| int | h_edge_pos |
| int | v_edge_pos |
| horizontal / vertical position of the right/bottom edge (pixel replication) | |
| int | mb_num |
| number of MBs of a picture | |
| ptrdiff_t | linesize |
| line size, in bytes, may be different from width | |
| ptrdiff_t | uvlinesize |
| line size, for chroma in bytes, may be different from width | |
| Picture * | picture |
| main picture buffer | |
| Picture ** | input_picture |
| next pictures on display order for encoding | |
| Picture ** | reordered_input_picture |
| pointer to the next pictures in coded order for encoding | |
| int64_t | user_specified_pts |
| last non-zero pts from AVFrame which was passed into avcodec_encode_video2() | |
| int64_t | dts_delta |
| pts difference between the first and second input frame, used for calculating dts of the first frame when there's a delay | |
| int64_t | reordered_pts |
| reordered pts to be used as dts for the next output frame when there's a delay | |
| PutBitContext | pb |
| bit output | |
| int | start_mb_y |
| start mb_y of this thread (so current thread should process start_mb_y <= row < end_mb_y) | |
| int | end_mb_y |
| end mb_y of this thread (so current thread should process start_mb_y <= row < end_mb_y) | |
| struct MpegEncContext * | thread_context [MAX_THREADS] |
| int | slice_context_count |
| number of used thread_contexts | |
| Picture | last_picture |
| copy of the previous picture structure. More... | |
| Picture | next_picture |
| copy of the next picture structure. More... | |
| Picture | new_picture |
| copy of the source picture structure for encoding. More... | |
| Picture | current_picture |
| copy of the current picture structure. More... | |
| Picture * | last_picture_ptr |
| pointer to the previous picture. | |
| Picture * | next_picture_ptr |
| pointer to the next picture (for bidir pred) | |
| Picture * | current_picture_ptr |
| pointer to the current picture | |
| int | last_dc [3] |
| last DC values for MPEG-1 | |
| int16_t * | dc_val_base |
| int16_t * | dc_val [3] |
| used for MPEG-4 DC prediction, all 3 arrays must be continuous | |
| const uint8_t * | y_dc_scale_table |
| qscale -> y_dc_scale table | |
| const uint8_t * | c_dc_scale_table |
| qscale -> c_dc_scale table | |
| const uint8_t * | chroma_qscale_table |
| qscale -> chroma_qscale (H.263) | |
| uint8_t * | coded_block_base |
| uint8_t * | coded_block |
| used for coded block pattern prediction (msmpeg4v3, wmv1) | |
| int16_t(* | ac_val_base )[16] |
| int16_t(*[3] | ac_val )[16] |
| used for MPEG-4 AC prediction, all 3 arrays must be continuous | |
| int | mb_skipped |
| MUST BE SET only during DECODING. | |
| uint8_t * | mbskip_table |
| used to avoid copy if macroblock skipped (for black regions for example) and used for B-frame encoding & decoding (contains skip table of next P-frame) | |
| uint8_t * | mbintra_table |
| used to avoid setting {ac, dc, cbp}-pred stuff to zero on inter MB decoding | |
| uint8_t * | cbp_table |
| used to store cbp, ac_pred for partitioned decoding | |
| uint8_t * | pred_dir_table |
| used to store pred_dir for partitioned decoding | |
| ScratchpadContext | sc |
| int | qscale |
| QP. | |
| int | chroma_qscale |
| chroma QP | |
| unsigned int | lambda |
| Lagrange multiplier used in rate distortion. | |
| unsigned int | lambda2 |
| (lambda*lambda) >> FF_LAMBDA_SHIFT | |
| int * | lambda_table |
| int | adaptive_quant |
| use adaptive quantization | |
| int | dquant |
| qscale difference to prev qscale | |
| int | closed_gop |
| MPEG1/2 GOP is closed. | |
| int | pict_type |
| AV_PICTURE_TYPE_I, AV_PICTURE_TYPE_P, AV_PICTURE_TYPE_B, ... | |
| int | vbv_delay |
| int | last_pict_type |
| int | last_non_b_pict_type |
| used for MPEG-4 gmc B-frames & ratecontrol | |
| int | droppable |
| int | frame_rate_index |
| AVRational | mpeg2_frame_rate_ext |
| int | last_lambda_for [5] |
| last lambda for a specific pict type | |
| int | skipdct |
| skip dct and code zero residual | |
| int | unrestricted_mv |
| mv can point outside of the coded picture | |
| int | h263_long_vectors |
| use horrible H.263v1 long vector mode | |
| BlockDSPContext | bdsp |
| FDCTDSPContext | fdsp |
| H264ChromaContext | h264chroma |
| HpelDSPContext | hdsp |
| IDCTDSPContext | idsp |
| MECmpContext | mecc |
| MpegVideoDSPContext | mdsp |
| MpegvideoEncDSPContext | mpvencdsp |
| PixblockDSPContext | pdsp |
| QpelDSPContext | qdsp |
| VideoDSPContext | vdsp |
| H263DSPContext | h263dsp |
| int | f_code |
| forward MV resolution | |
| int | b_code |
| backward MV resolution for B-frames (MPEG-4) | |
| int16_t(* | p_mv_table_base )[2] |
| int16_t(* | b_forw_mv_table_base )[2] |
| int16_t(* | b_back_mv_table_base )[2] |
| int16_t(* | b_bidir_forw_mv_table_base )[2] |
| int16_t(* | b_bidir_back_mv_table_base )[2] |
| int16_t(* | b_direct_mv_table_base )[2] |
| int16_t(*[2][2] | p_field_mv_table_base )[2] |
| int16_t(*[2][2][2] | b_field_mv_table_base )[2] |
| int16_t(* | p_mv_table )[2] |
| MV table (1MV per MB) P-frame encoding. | |
| int16_t(* | b_forw_mv_table )[2] |
| MV table (1MV per MB) forward mode B-frame encoding. | |
| int16_t(* | b_back_mv_table )[2] |
| MV table (1MV per MB) backward mode B-frame encoding. | |
| int16_t(* | b_bidir_forw_mv_table )[2] |
| MV table (1MV per MB) bidir mode B-frame encoding. | |
| int16_t(* | b_bidir_back_mv_table )[2] |
| MV table (1MV per MB) bidir mode B-frame encoding. | |
| int16_t(* | b_direct_mv_table )[2] |
| MV table (1MV per MB) direct mode B-frame encoding. | |
| int16_t(*[2][2] | p_field_mv_table )[2] |
| MV table (2MV per MB) interlaced P-frame encoding. | |
| int16_t(*[2][2][2] | b_field_mv_table )[2] |
| MV table (4MV per MB) interlaced B-frame encoding. | |
| uint8_t *[2] | p_field_select_table |
| uint8_t *[2][2] | b_field_select_table |
| int | motion_est |
| ME algorithm. | |
| int | me_penalty_compensation |
| int | me_pre |
| prepass for motion estimation | |
| int | mv_dir |
| int | mv_type |
| int | mv [2][4][2] |
| motion vectors for a macroblock first coordinate : 0 = forward 1 = backward second " : depend on type
third " : 0 = x, 1 = y | |
| int | field_select [2][2] |
| int | last_mv [2][2][2] |
| last MV, used for MV prediction in MPEG-1 & B-frame MPEG-4 | |
| uint8_t * | fcode_tab |
| smallest fcode needed for each MV | |
| int16_t | direct_scale_mv [2][64] |
| precomputed to avoid divisions in ff_mpeg4_set_direct_mv | |
| MotionEstContext | me |
| int | no_rounding |
| apply no rounding to motion compensation (MPEG-4, msmpeg4, ...) for B-frames rounding mode is always 0 | |
| int | mb_x |
| int | mb_y |
| int | mb_skip_run |
| int | mb_intra |
| uint16_t * | mb_type |
| Table for candidate MB types for encoding (defines in mpegutils.h) | |
| int | block_index [6] |
| index to current MB in block based arrays with edges | |
| int | block_wrap [6] |
| uint8_t * | dest [3] |
| int * | mb_index2xy |
| mb_index -> mb_x + mb_y*mb_stride | |
| uint16_t | intra_matrix [64] |
| matrix transmitted in the bitstream | |
| uint16_t | chroma_intra_matrix [64] |
| uint16_t | inter_matrix [64] |
| uint16_t | chroma_inter_matrix [64] |
| int | force_duplicated_matrix |
| Force duplication of mjpeg matrices, useful for rtp streaming. | |
| int | intra_quant_bias |
| bias for the quantizer | |
| int | inter_quant_bias |
| bias for the quantizer | |
| int | min_qcoeff |
| minimum encodable coefficient | |
| int | max_qcoeff |
| maximum encodable coefficient | |
| int | ac_esc_length |
| num of bits needed to encode the longest esc | |
| uint8_t * | intra_ac_vlc_length |
| uint8_t * | intra_ac_vlc_last_length |
| uint8_t * | intra_chroma_ac_vlc_length |
| uint8_t * | intra_chroma_ac_vlc_last_length |
| uint8_t * | inter_ac_vlc_length |
| uint8_t * | inter_ac_vlc_last_length |
| uint8_t * | luma_dc_vlc_length |
| int | coded_score [12] |
| int(* | q_intra_matrix )[64] |
| precomputed matrix (combine qscale and DCT renorm) | |
| 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 | |
| uint16_t(* | q_chroma_intra_matrix16 )[2][64] |
| uint16_t(* | q_inter_matrix16 )[2][64] |
| int(* | dct_error_sum )[64] |
| int | dct_count [2] |
| uint16_t(* | dct_offset )[64] |
| int64_t | total_bits |
| int | frame_bits |
| bits used for the current frame | |
| int | stuffing_bits |
| bits used for stuffing | |
| int | next_lambda |
| next lambda used for retrying to encode a frame | |
| RateControlContext | rc_context |
| contains stuff only accessed in ratecontrol.c | |
| int | mv_bits |
| int | header_bits |
| int | i_tex_bits |
| int | p_tex_bits |
| int | i_count |
| int | f_count |
| int | b_count |
| int | skip_count |
| int | misc_bits |
| cbp, mb_type | |
| int | last_bits |
| temp var used for calculating the above vars | |
| int | resync_mb_x |
| x position of last resync marker | |
| int | resync_mb_y |
| y position of last resync marker | |
| GetBitContext | last_resync_gb |
| used to search for the next resync marker | |
| int | mb_num_left |
| number of MBs left in this video packet (for partitioned Slices only) | |
| int | next_p_frame_damaged |
| set if the next p frame is damaged, to avoid showing trashed B-frames | |
| ParseContext | parse_context |
| int | gob_index |
| int | obmc |
| overlapped block motion compensation | |
| int | mb_info |
| interval for outputting info about mb offsets as side data | |
| int | prev_mb_info |
| int | last_mb_info |
| uint8_t * | mb_info_ptr |
| int | mb_info_size |
| int | ehc_mode |
| int | rc_strategy |
| int | umvplus |
| == H.263+ && unrestricted_mv | |
| int | h263_aic_dir |
| AIC direction: 0 = left, 1 = top. | |
| int | h263_slice_structured |
| int | alt_inter_vlc |
| alternative inter vlc | |
| int | modified_quant |
| int | loop_filter |
| int | custom_pcf |
| int | studio_profile |
| int | dct_precision |
| number of bits to represent the fractional part of time (encoder only) | |
| int | time_increment_bits |
| int | last_time_base |
| int | time_base |
| time in seconds of last I,P,S Frame | |
| int64_t | time |
| time of current frame | |
| int64_t | last_non_b_time |
| uint16_t | pp_time |
| time distance between the last 2 p,s,i frames | |
| uint16_t | pb_time |
| time distance between the last b and p,s,i frame | |
| uint16_t | pp_field_time |
| uint16_t | pb_field_time |
| like above, just for interlaced | |
| int | real_sprite_warping_points |
| int | sprite_offset [2][2] |
| sprite offset[isChroma][isMVY] | |
| int | sprite_delta [2][2] |
| sprite_delta [isY][isMVY] | |
| int | mcsel |
| int | quant_precision |
| int | quarter_sample |
| 1->qpel, 0->half pel ME/MC | |
| int | aspect_ratio_info |
| int | sprite_warping_accuracy |
| int | data_partitioning |
| data partitioning flag from header | |
| int | partitioned_frame |
| is current frame partitioned | |
| int | low_delay |
| no reordering needed / has no B-frames | |
| int | vo_type |
| PutBitContext | tex_pb |
| used for data partitioned VOPs | |
| PutBitContext | pb2 |
| used for data partitioned VOPs | |
| int | mpeg_quant |
| int | padding_bug_score |
| used to detect the VERY common padding bug in MPEG-4 | |
| int | divx_packed |
| uint8_t * | bitstream_buffer |
| int | bitstream_buffer_size |
| unsigned int | allocated_bitstream_buffer_size |
| int | rv10_version |
| RV10 version: 0 or 3. | |
| int | rv10_first_dc_coded [3] |
| struct MJpegContext * | mjpeg_ctx |
| int | esc_pos |
| int | pred |
| int | huffman |
| int | mv_table_index |
| int | rl_table_index |
| int | rl_chroma_table_index |
| int | dc_table_index |
| int | use_skip_mb_code |
| int | slice_height |
| in macroblocks | |
| int | first_slice_line |
| used in MPEG-4 too to handle resync markers | |
| int | flipflop_rounding |
| int | msmpeg4_version |
| 0=not msmpeg4, 1=mp41, 2=mp42, 3=mp43/divx3 4=wmv1/7 5=wmv2/8 | |
| int | per_mb_rl_table |
| int | esc3_level_length |
| int | esc3_run_length |
| int(* | ac_stats )[2][MAX_LEVEL+1][MAX_RUN+1][2] |
| [mb_intra][isChroma][level][run][last] | |
| int | inter_intra_pred |
| int | mspel |
| GetBitContext | gb |
| int | gop_picture_number |
| index of the first picture of a GOP based on fake_pic_num & MPEG-1 specific | |
| int | last_mv_dir |
| last mv_dir, used for B-frame encoding | |
| uint8_t * | vbv_delay_ptr |
| pointer to vbv_delay in the bitstream | |
| int | progressive_sequence |
| int | mpeg_f_code [2][2] |
| int | picture_structure |
| int64_t | timecode_frame_start |
| GOP timecode frame start number, in non drop frame format. | |
| int | intra_dc_precision |
| int | frame_pred_frame_dct |
| int | top_field_first |
| int | concealment_motion_vectors |
| int | q_scale_type |
| int | brd_scale |
| int | intra_vlc_format |
| int | alternate_scan |
| int | seq_disp_ext |
| int | video_format |
| int | repeat_first_field |
| int | chroma_420_type |
| int | chroma_format |
| int | chroma_x_shift |
| int | chroma_y_shift |
| int | progressive_frame |
| int | full_pel [2] |
| int | interlaced_dct |
| int | first_field |
| is 1 for the first field of a field picture 0 otherwise | |
| int | drop_frame_timecode |
| timecode is in drop frame format. | |
| int | scan_offset |
| reserve space for SVCD scan offset user data. | |
| int | rtp_mode |
| int | rtp_payload_size |
| char * | tc_opt_str |
| timecode option string | |
| AVTimecode | tc |
| timecode context | |
| uint8_t * | ptr_lastgob |
| int | swap_uv |
| int | pack_pblocks |
| int16_t(*[12] | pblocks )[64] |
| int16_t(* | block )[64] |
| points to one of the following blocks | |
| int16_t(* | blocks )[12][64] |
| int(* | decode_mb )(struct MpegEncContext *s, int16_t block[12][64]) |
| int32_t(* | block32 )[12][64] |
| void(* | dct_unquantize_mpeg1_intra )(struct MpegEncContext *s, int16_t *block, int n, int qscale) |
| void(* | dct_unquantize_mpeg1_inter )(struct MpegEncContext *s, int16_t *block, int n, int qscale) |
| void(* | dct_unquantize_mpeg2_intra )(struct MpegEncContext *s, int16_t *block, int n, int qscale) |
| void(* | dct_unquantize_mpeg2_inter )(struct MpegEncContext *s, int16_t *block, int n, int qscale) |
| void(* | dct_unquantize_h263_intra )(struct MpegEncContext *s, int16_t *block, int n, int qscale) |
| void(* | dct_unquantize_h263_inter )(struct MpegEncContext *s, int16_t *block, int n, int qscale) |
| void(* | dct_unquantize_intra )(struct MpegEncContext *s, int16_t *block, int n, int qscale) |
| void(* | dct_unquantize_inter )(struct MpegEncContext *s, int16_t *block, int n, int qscale) |
| int(* | dct_quantize )(struct MpegEncContext *s, int16_t *block, int n, int qscale, int *overflow) |
| int(* | fast_dct_quantize )(struct MpegEncContext *s, int16_t *block, int n, int qscale, int *overflow) |
| void(* | denoise_dct )(struct MpegEncContext *s, int16_t *block) |
| int | mpv_flags |
| flags set by private options | |
| int | quantizer_noise_shaping |
| float | rc_qsquish |
| ratecontrol qmin qmax limiting method 0-> clipping, 1-> use a nice continuous function to limit qscale within qmin/qmax. | |
| float | rc_qmod_amp |
| int | rc_qmod_freq |
| float | rc_initial_cplx |
| float | rc_buffer_aggressivity |
| float | border_masking |
| int | lmin |
| int | lmax |
| int | vbv_ignore_qmax |
| char * | rc_eq |
| float * | cplx_tab |
| float * | bits_tab |
| int | context_reinit |
| ERContext | er |
| int | error_rate |
| AVFrame * | tmp_frames [MAX_B_FRAMES+2] |
| int | b_frame_strategy |
| int | b_sensitivity |
| int | frame_skip_threshold |
| int | frame_skip_factor |
| int | frame_skip_exp |
| int | frame_skip_cmp |
| int | scenechange_threshold |
| int | noise_reduction |
| Picture MpegEncContext::current_picture |
copy of the current picture structure.
note, linesize & data, might not match the current picture (for field pictures)buffer to store the decompressed current picture
| Picture MpegEncContext::last_picture |
copy of the previous picture structure.
note, linesize & data, might not match the previous picture (for field pictures)
| Picture MpegEncContext::new_picture |
copy of the source picture structure for encoding.
note, linesize & data, might not match the source picture (for field pictures)
| Picture MpegEncContext::next_picture |
copy of the next picture structure.
note, linesize & data, might not match the next picture (for field pictures)
1.8.12