FFmpeg
|
#include <inttypes.h>
#include "libavutil/attributes.h"
#include "libavutil/crc.h"
#include "libavutil/mem.h"
#include "libavutil/mem_internal.h"
#include "codec_internal.h"
#include "decode.h"
#include "avcodec.h"
#include "mpegutils.h"
#include "h264data.h"
#include "h264dsp.h"
#include "h264pred.h"
#include "h264_parse.h"
#include "golomb.h"
#include "hpeldsp.h"
#include "mathops.h"
#include "rectangle.h"
#include "tpeldsp.h"
#include "videodsp.h"
Go to the source code of this file.
Data Structures | |
struct | SVQ3Frame |
struct | SVQ3Context |
Macros | |
#define | FULLPEL_MODE 1 |
#define | HALFPEL_MODE 2 |
#define | THIRDPEL_MODE 3 |
#define | PREDICT_MODE 4 |
#define | stride 16 |
Functions | |
static void | svq3_luma_dc_dequant_idct_c (int16_t *output, int16_t *input, int qp) |
static void | svq3_add_idct_c (uint8_t *dst, int16_t *block, int stride, int qp, int dc) |
static int | svq3_decode_block (GetBitContext *gb, int16_t *block, int index, const int type) |
static av_always_inline int | svq3_fetch_diagonal_mv (const SVQ3Context *s, const int16_t **C, int i, int list, int part_width) |
static av_always_inline void | svq3_pred_motion (const SVQ3Context *s, int n, int part_width, int list, int ref, int *const mx, int *const my) |
Get the predicted MV. More... | |
static void | svq3_mc_dir_part (SVQ3Context *s, int x, int y, int width, int height, int mx, int my, int dxy, int thirdpel, int dir, int avg) |
static int | svq3_mc_dir (SVQ3Context *s, int size, int mode, int dir, int avg) |
static av_always_inline void | hl_decode_mb_idct_luma (SVQ3Context *s, int mb_type, const int *block_offset, int linesize, uint8_t *dest_y) |
static av_always_inline void | hl_decode_mb_predict_luma (SVQ3Context *s, int mb_type, const int *block_offset, int linesize, uint8_t *dest_y) |
static void | hl_decode_mb (SVQ3Context *s) |
static int | svq3_decode_mb (SVQ3Context *s, unsigned int mb_type) |
static int | svq3_decode_slice_header (AVCodecContext *avctx) |
static void | init_dequant4_coeff_table (SVQ3Context *s) |
static av_cold int | svq3_decode_init (AVCodecContext *avctx) |
static void | free_picture (SVQ3Frame *pic) |
static int | get_buffer (AVCodecContext *avctx, SVQ3Frame *pic) |
static int | svq3_decode_frame (AVCodecContext *avctx, AVFrame *rframe, int *got_frame, AVPacket *avpkt) |
static av_cold int | svq3_decode_end (AVCodecContext *avctx) |
Variables | |
static const uint8_t | svq3_scan [16] |
static const uint8_t | luma_dc_zigzag_scan [16] |
static const uint8_t | svq3_pred_0 [25][2] |
static const int8_t | svq3_pred_1 [6][6][5] |
struct { | |
uint8_t run | |
uint8_t level | |
} | svq3_dct_tables [2][16] |
static const uint32_t | svq3_dequant_coeff [32] |
const FFCodec | ff_svq3_decoder |
svq3 decoder.
Definition in file svq3.c.
#define stride 16 |
|
static |
Definition at line 220 of file svq3.c.
Referenced by hl_decode_mb_predict_luma().
|
static |
Definition at line 255 of file svq3.c.
Referenced by hl_decode_mb(), hl_decode_mb_idct_luma(), and hl_decode_mb_predict_luma().
|
inlinestatic |
Definition at line 295 of file svq3.c.
Referenced by svq3_decode_mb().
|
static |
Definition at line 355 of file svq3.c.
Referenced by svq3_pred_motion().
|
static |
Get the predicted MV.
n | the block index |
part_width | the width of the partition (4, 8,16) -> (1, 2, 4) |
mx | the x component of the predicted motion vector |
my | the y component of the predicted motion vector |
Definition at line 376 of file svq3.c.
Referenced by svq3_mc_dir().
|
inlinestatic |
Definition at line 425 of file svq3.c.
Referenced by svq3_decode_mb(), and svq3_mc_dir().
|
inlinestatic |
Definition at line 500 of file svq3.c.
Referenced by svq3_decode_mb().
|
static |
Definition at line 613 of file svq3.c.
Referenced by hl_decode_mb().
|
static |
Definition at line 628 of file svq3.c.
Referenced by hl_decode_mb().
|
static |
Definition at line 662 of file svq3.c.
Referenced by svq3_decode_frame().
|
static |
Definition at line 710 of file svq3.c.
Referenced by svq3_decode_frame().
|
static |
Definition at line 1008 of file svq3.c.
Referenced by svq3_decode_frame().
|
static |
Definition at line 1103 of file svq3.c.
Referenced by svq3_decode_init().
|
static |
|
static |
Definition at line 1318 of file svq3.c.
Referenced by get_buffer(), and svq3_decode_end().
|
static |
Definition at line 1329 of file svq3.c.
Referenced by svq3_decode_frame().
|
static |
|
static |
|
static |
Definition at line 162 of file svq3.c.
Referenced by svq3_decode_block().
|
static |
Definition at line 169 of file svq3.c.
Referenced by svq3_decode_block().
|
static |
Definition at line 176 of file svq3.c.
Referenced by svq3_decode_mb().
|
static |
Definition at line 188 of file svq3.c.
Referenced by svq3_decode_mb().
uint8_t run |
Definition at line 204 of file svq3.c.
Referenced by add_coefficients(), bink_decode_plane(), binkb_decode_plane(), bit8x8_c(), cfhd_decode(), cfhd_encode_init(), cfhd_init_vlc(), dct_quantize_refine(), dct_quantize_trellis_c(), dct_single_coeff_elimination(), decode_ac_coeffs(), decode_alpha_block(), decode_block(), decode_block_intra(), decode_block_progressive(), decode_block_refinement(), decode_coeffs(), decode_dct_block(), decode_frame(), decode_group3_1d_line(), decode_group3_2d_line(), decode_residual_block(), decode_rle(), decode_rtv1(), decode_run_i(), decode_run_p(), decompress(), decompress_i(), decompress_i3(), decompress_p(), decompress_p3(), dnxhd_decode_dct_block(), dnxhd_init_vlc(), dv_decode_ac(), dv_init_static(), dv_rl2vlc(), dv_rl2vlc_size(), dxv_decompress_dxt5(), encode_acs(), encode_alpha_plane(), encode_alpha_slice_data(), encode_block(), encode_line(), encode_subband_c0run(), epic_decode_run_length(), epic_decode_tile(), epic_predict_from_NW_NE(), estimate_acs(), estimate_alpha_plane(), extract_line(), ff_flv2_encode_ac_esc(), ff_init_2d_vlc_rl(), ff_mjpeg_encode_coef(), ff_mpeg1_decode_block_intra(), ff_mpeg1_init_uni_ac_vlc(), ff_msmpeg4_decode_block(), ff_msmpeg4_encode_block(), ff_rl_init(), ff_rl_init_level_run(), ff_rl_init_vlc(), ff_wmv2_decode_picture_header(), find_best_tables(), fix_coding_method_array(), get_rl_index(), get_size_of_code(), h261_decode_block(), h261_encode_block(), h261_encode_init_static(), h263_decode_block(), h263_encode_block(), hdcd_process(), hdcd_process_stereo(), hdr_decode_frame(), hqx_get_ac(), huf_decode(), init_quantized_coeffs_elem0(), init_uni_ac_vlc(), init_uni_h263_rl_tab(), init_uni_mpeg4_rl_tab(), ivi_decode_coded_blocks(), loco_get_rice(), ls_encode_line(), ls_encode_run(), main(), mdec_decode_block_intra(), mpeg1_decode_block_inter(), mpeg2_decode_block_intra(), mpeg2_decode_block_non_intra(), mpeg4_decode_block(), mpeg4_decode_studio_block(), mpeg4_encode_block(), mpeg4_get_block_length(), msmpeg4_encode_init_static(), on2avc_decode_band_types(), pcx_rle_decode(), picmemset(), picmemset_8bpp(), process_subpacket_9(), put_alpha_run(), put_line(), qoi_decode_frame(), qoi_encode_frame(), qpeg_decode_intra(), rd8x8_c(), read_block_types(), read_run_encoding(), record_block(), rle_compress(), rle_uncompress(), sunrast_decode_frame(), sunrast_image_write_image(), svq3_decode_block(), synthfilt_build_sb_samples(), task_run_stage(), unpack(), unpack_coeffs(), vc1_decode_ac_coeff(), vp6_parse_coeff(), vp6_parse_coeff_huffman(), x8_decode_intra_mb(), and x8_get_ac_rlf().
uint8_t level |
Definition at line 205 of file svq3.c.
Referenced by add_coefficients(), add_wave(), add_wave0(), adpcm_decode_frame(), ansi_fputs(), append_left_ext(), ass_log(), asv1_put_level(), asv2_put_level(), av_dovi_find_level(), av_hex_dump_log(), av_log(), av_log_default_callback(), av_log_format_line(), av_log_format_line2(), av_log_set_level(), av_pkt_dump_log2(), av_vlog(), bit8x8_c(), calc_sum_next(), calculate_visual_weight(), cfhd_decode(), cfhd_init_vlc(), check_written(), clip_coeffs(), clip_with_log(), coeff_sign_flag_ts_decode(), colored_fputs(), common_uninit(), compute_gammaval709(), config_enc_params(), count_hq_slice(), count_warnings(), d3d12va_encode_hevc_init_sequence_params(), dash_init(), dct_quantize_c(), dct_quantize_refine(), dct_quantize_TMPL(), dct_quantize_trellis_c(), dct_single_coeff_elimination(), dct_unquantize_h263_inter_c(), dct_unquantize_h263_intra_armv5te(), dct_unquantize_h263_intra_c(), dct_unquantize_mpeg1_inter_c(), dct_unquantize_mpeg1_intra_c(), dct_unquantize_mpeg2_inter_c(), dct_unquantize_mpeg2_intra_bitexact(), dct_unquantize_mpeg2_intra_c(), decide_ac_pred(), decode_ac_coeffs(), decode_alpha_block(), decode_block(), decode_block_intra(), decode_block_progressive(), decode_coeffs(), decode_component(), decode_dct_block(), decode_frame(), decode_gain_control(), decode_hq_slice(), decode_i_block(), decode_inter_block(), decode_inter_blocks(), decode_intra_block(), decode_intra_blocks(), decode_lowdelay_slice(), decode_q_branch(), decode_qlogs(), decode_residual(), decode_residual_block(), denoise_dct_c(), dequant_and_decompand(), dirac_unpack_idwt_params(), discard_left_ext(), dnxhd_10bit_dct_quantize(), dnxhd_10bit_dct_quantize_444(), dnxhd_calc_ac_bits(), dnxhd_decode_dct_block(), dnxhd_init_vlc(), dnxhd_unquantize_c(), dump_enc_cfg(), dv100_quantize(), dv_decode_ac(), dv_init_static(), dv_set_class_number_sd(), dvdvideo_libdvdnav_log(), dvdvideo_libdvdread_log(), dwt_plane(), ebml_read_master(), encode_acs(), encode_block(), encode_frame(), encode_hq_slice(), encode_q_branch(), encode_q_branch2(), encode_qlogs(), encode_quant_matrix(), estimate_acs(), eval_expr(), ff_av1_guess_level(), ff_dct_unquantize_h263_intra_mmi(), ff_dovi_rpu_extension_is_static(), ff_flv2_encode_ac_esc(), ff_h263_encode_mb(), ff_h264_guess_level(), ff_h265_guess_level(), ff_hw_base_encode_init_params_h264(), ff_hw_base_encode_init_params_h265(), ff_init_2d_vlc_rl(), ff_isom_get_vpcc_features(), ff_libopenh264_trace_callback(), ff_log_net_error(), ff_mpeg1_decode_block_intra(), ff_mpeg1_init_uni_ac_vlc(), ff_mpeg4_decode_picture_header(), ff_mpeg4_pred_dc(), ff_msmpeg4_decode_block(), ff_msmpeg4_encode_block(), ff_rl_init(), ff_rl_init_level_run(), ff_rl_init_vlc(), ff_snow_common_end(), ff_snow_common_init_after_header(), ff_snow_reset_contexts(), ff_spatial_dwt(), ff_spatial_idwt_buffered_init(), ff_spatial_idwt_buffered_slice(), ff_spatial_idwt_slice2(), ff_vdpau_common_init(), ff_vk_h264_level_to_av(), ff_vk_h265_level_to_av(), ff_wma_run_level_decode(), filter_channel(), filter_frame(), find_best_tables(), flac_encode_init(), format_line(), forward(), framesync_sync_level_update(), get_block_rate(), get_level_str(), get_local_sum(), get_local_sum_ts(), get_qp_y(), get_rl_index(), get_size_of_code(), guess_palette(), h261_decode_block(), h261_encode_block(), h261_encode_init_static(), h263_dct_unquantize_msa(), h263_decode_block(), h263_encode_block(), handle_invoke_error(), hardthresh_c(), hex_log(), hw_base_encode_remove_refs(), imc_decode_level_coefficients(), imc_decode_level_coefficients_raw(), init_coef_vlc(), init_h263_dc_for_msmpeg4(), init_planes(), init_quant_matrix(), init_quantized_coeffs_elem0(), init_uni_ac_vlc(), init_uni_dc_tab(), init_uni_h263_rl_tab(), init_uni_mpeg4_rl_tab(), intlist_read(), inverse(), log_callback(), log_callback_report(), log_cb(), log_int_value(), log_value(), logcat_callback(), main(), max_left_zeros_inverse(), mdec_decode_block_intra(), mediumthresh_c(), mov_write_dvc1_structs(), mpeg1_decode_block_inter(), mpeg2_decode_block_intra(), mpeg2_decode_block_non_intra(), mpeg4_decode_block(), mpeg4_decode_dc(), mpeg4_decode_profile_level(), mpeg4_encode_block(), mpeg4_encode_dc(), mpeg4_get_block_length(), mpeg4_get_dc_length(), msmpeg4_decode_dc(), msmpeg4_encode_dc(), msmpeg4_encode_init_static(), nb_coefs(), nvenc_print_driver_requirement(), openmpt_logfunc(), opt_loglevel(), parameter_block_obu(), parse_avs2_seq_header(), parse_ext_blocks(), pkt_dump_internal(), pl_av_log(), print_all_libs_info(), print_buildconf(), print_ctl_info(), print_program_info(), print_section(), process_subpacket_9(), qdm2_fft_generate_tone(), qdm2_fft_tone_synthesizer(), quant_band_template(), QUANT_FN(), ratecontrol_1pass(), rd8x8_c(), read_code(), read_run_encoding(), reallocate_inputs(), reallocate_outputs(), rtmp_log(), rtmp_open(), search_for_change_points(), set_blocks(), softthresh_c(), spatial_compose_daub97i_dy_TMPL(), spatial_compose_dd137i_dy_TMPL(), spatial_compose_dd97i_dy_TMPL(), spatial_compose_dirac53i_dy_TMPL(), spatial_compose_fidelity_TMPL(), spatial_compose_haari_dy_TMPL(), spatial_idwt_init(), spatial_idwt_init_TMPL(), spatial_idwt_slice(), subband_coeffs(), svq1_decode_block_intra(), svq1_decode_block_non_intra(), svq1_encode_plane(), svq3_decode_block(), tgq_dconly(), udp_set_multicast_sources(), uninit(), vaapi_encode_av1_init_sequence_params(), vc1_decode_ac_coeff(), vc1_probe(), vc2_encode_init(), vdpau_av1_init(), vdpau_h264_init(), vdpau_hevc_init(), vdpau_vp9_init(), vvenc_log_callback(), w_c(), write_codec_attr(), X264_init(), X264_log(), x8_decode_intra_mb(), x8_get_ac_rlf(), x8_get_dc_rlf(), and XAVS_log().
const { ... } svq3_dct_tables[2][16] |
Referenced by svq3_decode_block().
|
static |
Definition at line 213 of file svq3.c.
Referenced by svq3_add_idct_c(), and svq3_luma_dc_dequant_idct_c().
const FFCodec ff_svq3_decoder |