#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <inttypes.h>
#include <math.h>
#include "mp_msg.h"
#include "cpudetect.h"
#include "libavutil/internal.h"
#include "libavutil/intreadwrite.h"
#include "libavcodec/avcodec.h"
#include "libavcodec/dsputil.h"
#include "img_format.h"
#include "mp_image.h"
#include "vf.h"
#include "vd_ffmpeg.h"
Go to the source code of this file.
Data Structures | |
struct | vf_priv_s |
Defines | |
#define | MIN(a, b) ((a) > (b) ? (b) : (a)) |
#define | MAX(a, b) ((a) < (b) ? (b) : (a)) |
#define | ABS(a) ((a) > 0 ? (a) : (-(a))) |
#define | CHECK(j) |
Functions | |
static void | filter (struct vf_priv_s *p, uint8_t *dst[3], uint8_t *src[3], int dst_stride[3], int src_stride[3], int width, int height) |
if (diff0+diff1 > 0) temp- | |
for (y=0;y< h;y++) | |
static int | config (struct vf_instance *vf, int width, int height, int d_width, int d_height, unsigned int flags, unsigned int outfmt) |
static void | get_image (struct vf_instance *vf, mp_image_t *mpi) |
static int | put_image (struct vf_instance *vf, mp_image_t *mpi, double pts) |
static void | uninit (struct vf_instance *vf) |
static int | query_format (struct vf_instance *vf, unsigned int fmt) |
static int | vf_open (vf_instance_t *vf, char *args) |
Variables | |
else | temp = (diff0 + diff1 + ABS( ABS(diff0) - ABS(diff1) )/2)/2 |
filp [0] | |
else | dst [i][x+y *dst_stride[i]] = p->frame_dec->data[i][x + y*fils] |
p | parity = 1 |
const vf_info_t | vf_info_mcdeint |
#define ABS | ( | a | ) | ((a) > 0 ? (a) : (-(a))) |
Definition at line 73 of file vf_mcdeint.c.
#define CHECK | ( | j | ) |
Value:
{ int score= ABS(srcp[-srcs-1+j] - srcp[+srcs-1-j])\ + ABS(srcp[-srcs +j] - srcp[+srcs -j])\ + ABS(srcp[-srcs+1+j] - srcp[+srcs+1-j]);\ if(score < spatial_score){\ spatial_score= score;\ diff0= filp[-fils+j] - srcp[-srcs+j];\ diff1= filp[+fils-j] - srcp[+srcs-j];
Referenced by block_metrics_mmx2(), and filter().
#define MAX | ( | a, | |||
b | ) | ((a) < (b) ? (b) : (a)) |
Definition at line 72 of file vf_mcdeint.c.
#define MIN | ( | a, | |||
b | ) | ((a) > (b) ? (b) : (a)) |
Definition at line 71 of file vf_mcdeint.c.
static int config | ( | struct vf_instance * | vf, | |
int | width, | |||
int | height, | |||
int | d_width, | |||
int | d_height, | |||
unsigned int | flags, | |||
unsigned int | outfmt | |||
) | [static] |
Definition at line 181 of file vf_mcdeint.c.
static void filter | ( | struct vf_priv_s * | p, | |
uint8_t * | dst[3], | |||
uint8_t * | src[3], | |||
int | dst_stride[3], | |||
int | src_stride[3], | |||
int | width, | |||
int | height | |||
) | [static] |
Definition at line 93 of file vf_mcdeint.c.
for | ( | ) |
Definition at line 163 of file vf_mcdeint.c.
static void get_image | ( | struct vf_instance * | vf, | |
mp_image_t * | mpi | |||
) | [static] |
Definition at line 238 of file vf_mcdeint.c.
if | ( | diff0+ | diff1, | |
0 | ||||
) |
Referenced by aac_decode_frame_int(), aac_encode_init(), aacPlus_encode_frame(), adpcm_decode_frame(), adpcm_encode_init(), adx_encode_frame(), alac_encode_frame(), alloc_buffers(), amr_wb_encode_frame(), ape_decode_value(), ape_read_header(), apply_lpc(), asf_read_pts(), av_ext2dbl(), av_reduce(), av_timecode_init_from_string(), avcodec_default_reget_buffer(), average_quantized_coeffs(), avpriv_check_timecode_rate(), avpriv_timecode_to_string(), avresample_get_matrix(), avresample_open(), binkb_read_bundle(), blend_subrect(), cavsvideo_probe(), check_header_mismatch(), cinaudio_decode_frame(), cmv_decode_inter(), commit_bitstream_and_slice_buffer(), compute_pkt_fields(), config_input(), config_props(), construct_perm_table(), dca_decode_init(), decode_end(), decode_exp_vlc(), decode_frame(), decode_frame_ilbm(), decode_i2_frame(), decode_init(), decode_slice_header(), decode_subframe(), decode_tilehdr(), dpcm_decode_frame(), draw_slice(), dv_extract_audio(), dv_inject_audio(), dvdsub_init(), dvvideo_decode_frame(), ebml_parse_elem(), eightsvx_decode_frame(), encode_frame(), encode_mb_internal(), expand_timestamps(), ff_ac3_compute_coupling_strategy(), ff_dvvideo_init(), ff_id3v2_write_apic(), ff_mjpeg_decode_frame(), ff_mjpeg_decode_sof(), ff_mjpeg_decode_sos(), ff_mpeg4_encode_mb(), ff_MPV_common_init(), ff_print_debug_info(), ff_sws_init_swScale_mmx(), ff_vdpau_mpeg_picture_complete(), ff_vdpau_vc1_decode_picture(), ff_xvmc_decode_mb(), ff_xvmc_field_start(), fill_picture_parameters(), find_next_parse_unit(), flac_encode_frame(), flashsv_decode_frame(), flashsv_encode_frame(), flic_decode_init(), free_section(), generate_intervals(), get_block_sizes(), get_delayed_pic(), h263_probe(), h264_probe(), handle_packet(), hl_decode_mb_444_internal(), hyscale(), iff_read_header(), imc_decode_frame(), init(), init_dequant_tables(), init_poc(), ipmovie_read_header(), ipvideo_decode_block_opcode_0x8(), ipvideo_decode_block_opcode_0xA(), ipvideo_decode_frame(), j2kenc_init(), libgsm_encode_frame(), libspeex_decode_frame(), main(), matroska_probe(), mc_dir_part(), mc_part_std(), mc_part_weighted(), mc_subpel(), mct_decode(), mlp_parse(), mm_decode_inter(), mmsh_close(), motion_search(), mov_parse_mpeg2_frame(), mov_parse_vc1_frame(), mov_read_extradata(), mpeg4video_probe(), mpeg_decode_mb(), mpeg_decode_slice(), mpeg_mux_init(), mpegps_probe(), mpegvideo_probe(), msrle_decode_8_16_24_32(), mxf_interleave_get_packet(), mxf_parse_mpeg2_frame(), nut_probe(), nut_read_seek(), ogg_read_page(), optimum_use15_7(), pcm_encode_frame(), pred_spatial_direct_motion(), pred_temp_direct_motion(), put_dc(), qcelp_decode_frame(), qdm2_decode(), qdm2_fft_tone_synthesizer(), ra144_encode_frame(), read_header(), read_major_sync(), read_thread(), read_var_block_data(), request_frame(), reset_options(), rpza_decode_stream(), rtsp_read_packet(), s302m_decode_frame(), sbr_hf_calc_npatches(), sbr_make_f_master(), select_input_picture(), seqvideo_decode(), set_channel_info(), set_palette(), shorten_decode_frame(), smc_decode_stream(), Stagefright_close(), Stagefright_decode_frame(), Stagefright_init(), store_packet(), svq3_decode_frame(), svq3_decode_init(), svq3_mc_dir(), synth_block_fcb_acb(), synth_superframe(), tiff_decode_tag(), tm2_decode_blocks(), transcode_init(), tta_decode_frame(), unpack_superblocks(), unpack_vlcs(), utvideo_decode_init(), utvideo_encode_frame(), vaapi_mpeg4_start_frame(), vc1_decode_b_mb(), vc1_decode_b_mb_intfi(), vc1_decode_p_mb_intfi(), vc1_decode_p_mb_intfr(), vc1_mc_4mv_luma(), vmdaudio_decode_frame(), vorbis_encode_frame(), vorbis_parse_setup_hdr_codebooks(), vp8_decode_frame(), wiener_denoise(), wma_decode_superframe(), wsvqa_read_header(), XAVS_init(), yuv2rgb_1_c_template(), and yuv2rgb_2_c_template().
static int put_image | ( | struct vf_instance * | vf, | |
mp_image_t * | mpi, | |||
double | pts | |||
) | [static] |
Definition at line 256 of file vf_mcdeint.c.
static int query_format | ( | struct vf_instance * | vf, | |
unsigned int | fmt | |||
) | [static] |
Definition at line 297 of file vf_mcdeint.c.
static void uninit | ( | struct vf_instance * | vf | ) | [static] |
Definition at line 275 of file vf_mcdeint.c.
static int vf_open | ( | vf_instance_t * | vf, | |
char * | args | |||
) | [static] |
Definition at line 309 of file vf_mcdeint.c.
Definition at line 159 of file vf_mcdeint.c.
Referenced by add_frame_default(), adx_encode_frame(), av_base64_decode(), av_base64_encode(), av_bprintf(), av_get_string(), av_opt_get(), av_opt_set(), avfilter_draw_slice(), avfilter_start_frame(), avg_pixels16_l2_TMPL(), avg_pixels4_l2_TMPL(), avg_pixels8_l2_TMPL(), avui_encode_frame(), bethsoftvid_decode_frame(), bfi_decode_frame(), bink_decode_plane(), binkb_decode_plane(), binkb_read_bundle(), blockCopy_TMPL(), bmp_decode_frame(), bmp_encode_frame(), bswap16Y_c(), cmp_direct_inline(), cmv_decode_inter(), cmv_decode_intra(), copy(), copy_backptr(), copy_block16(), copy_block2(), copy_block4(), copy_block8(), copy_cell(), copy_frame(), copy_frame_default(), decode(), decode_bmv_frame(), decode_cell_data(), decode_channel(), decode_const_block_data(), decode_frame(), decode_hybrid(), decode_i2_frame(), decode_p_frame(), decode_tile(), deNoise(), dfa_decode_frame(), doTest(), eightsvx_decode_frame(), encode_frame(), ff_filter_samples(), ff_h264_decode_nal(), ff_h264_idct8_add(), ff_h264_idct8_add4(), ff_h264_idct8_dc_add(), ff_h264_idct_add(), ff_h264_idct_add16(), ff_h264_idct_add16intra(), ff_h264_idct_dc_add(), ff_ivi_inverse_haar_8x8(), ff_ivi_inverse_slant_4x4(), ff_ivi_inverse_slant_8x8(), ff_ivi_process_empty_tile(), ff_metadata_conv(), ff_mjpeg_decode_frame(), ff_mjpeg_find_marker(), ff_snow_horizontal_compose97i_mmx(), ff_snow_horizontal_compose97i_sse2(), ff_snow_inner_add_yblock(), fill_buffer(), filter(), filter_mb_row(), filter_mb_row_simple(), for(), get_number(), h264_handle_packet(), hScale16To19_c(), hScale8To19_c(), id3v2_3_metadata_split_date(), idct_put(), insert_mb_into_sb(), lag_decode_frame(), load_input_picture(), lumRangeFromJpeg16_c(), lumRangeToJpeg16_c(), main(), mimic_decode_update_thread_context(), MIX_FUNC_GENERIC(), mv_pred_sym(), parse_h264_sdp_line(), parse_option(), pcm_encode_frame(), pixels16_l2(), pixels8_l2(), planar_rgb16be_to_y(), planar_rgb16le_to_y(), planarToNv12Wrapper(), planarToUyvyWrapper(), planarToYuy2Wrapper(), postProcess_TMPL(), propagate_block_data(), put_image(), put_no_rnd_pixels16_l2_TMPL(), put_no_rnd_pixels8_l2_TMPL(), put_pixels16_l2_TMPL(), put_pixels4_l2_TMPL(), put_pixels8_l2_TMPL(), raw_decode(), read_dcs(), read_header(), reorder_block(), reset_options(), rgb15to16_TMPL(), rgb15to32_TMPL(), rgb15tobgr24_TMPL(), rgb16to15_TMPL(), rgb16to32_TMPL(), rgb16tobgr24_TMPL(), rgb24to15_TMPL(), rgb24to16_TMPL(), rgb24tobgr15_TMPL(), rgb24tobgr16_TMPL(), rgb24tobgr24_TMPL(), rgb24tobgr32_TMPL(), rgb32to15_TMPL(), rgb32to16_TMPL(), rgb32tobgr15_TMPL(), rgb32tobgr16_TMPL(), rgb32tobgr24_TMPL(), rv34_decode_inter_macroblock(), rv34_output_i16x16(), rv34_output_intra(), sdp_parse_fmtp_config_h264(), seqvideo_decode(), set_number(), shuffle_bytes_2103_TMPL(), svq1_decode_block_intra(), svq1_decode_block_non_intra(), svq1_motion_inter_4v_block(), svq1_motion_inter_block(), svq1_skip_block(), swri_resample_TMPL(), tm2_decode_blocks(), tmv_decode_frame(), transpose2_TMPL(), utvideo_encode_frame(), v308_encode_frame(), v408_encode_frame(), v410_encode_frame(), vble_restore_plane(), vc1_apply_p_h_loop_filter(), vc1_apply_p_v_loop_filter(), vc1_decode_i_blocks(), vc1_inv_trans_4x4_c(), vc1_inv_trans_4x8_c(), vc1_inv_trans_8x4_c(), vc1_inv_trans_8x8_c(), vf_mpi_clear(), vp56_mc(), vp8_decode_frame(), wavpack_decode_block(), xbm_decode_frame(), xwd_decode_frame(), y41p_encode_frame(), yuv422ptouyvy_TMPL(), yuv422pToUyvyWrapper(), yuv422ptoyuy2_TMPL(), yuv422pToYuy2Wrapper(), yuv4_encode_frame(), yuvPlanartouyvy_TMPL(), yuvPlanartoyuy2_TMPL(), yv12touyvy_TMPL(), yv12touyvy_unscaled_altivec(), yv12toyuy2_TMPL(), yv12toyuy2_unscaled_altivec(), and zerocodec_decode_frame().
filp[0] |
p parity = 1 |
Definition at line 177 of file vf_mcdeint.c.
Referenced by ff_yadif_filter_line_TMPL(), and read_access_unit().
else temp = (diff0 + diff1 + ABS( ABS(diff0) - ABS(diff1) )/2)/2 |
Definition at line 147 of file vf_mcdeint.c.
Referenced by a64_compress_colram(), at1_subband_synthesis(), backward_filter(), bink_idct_c(), bink_idct_put_c(), bit8x8_c(), biweight_h264_W_altivec(), block_diffs(), comp_interp_index(), config(), dct_max8x8_c(), dct_sad8x8_c(), decode_8_pulses_31bits(), decode_frame(), decode_plane(), decode_rgb_frame(), ff_block_permute(), ff_ea_idct_put_c(), ff_faandct(), ff_faandct248(), ff_faanidct(), ff_faanidct_add(), ff_faanidct_put(), ff_h264_chroma422_dc_dequant_idct(), ff_h264_luma_dc_dequant_idct(), ff_simple_idct_vis(), ff_snow_horizontal_compose97i(), ff_snow_horizontal_compose97i_mmx(), ff_snow_horizontal_compose97i_sse2(), ff_svq3_luma_dc_dequant_idct_c(), ff_vorbis_inverse_coupling(), ffurl_register_protocol(), filter(), find_new_headers(), flac_parse(), flac_parse_close(), formant_postfilter(), gain_scale(), gen_fcb_excitation(), get_tilt_comp(), h261_loop_filter_c(), h263_h_loop_filter_mmx(), h264_deblock_q1(), hadamard8_diff8x8_c(), hadamard8_intra8x8_c(), horizontal_compose53i(), horizontal_decompose53i(), horizontal_decompose97i(), http_write(), idct(), idct_put(), idctRowCondDC(), imdct_and_windowing(), inverse_quant(), ls_encode_runterm(), ls_get_code_runterm(), main(), matroska_parse_block(), pp_get_mode_by_name_and_quality(), quant_psnr8x8_c(), rd8x8_c(), read32(), read_time(), render_slice(), rv34_idct_add_c(), rv34_inv_transform_noround_c(), sbr_gain_calc(), sbr_make_f_derived(), sbr_make_f_master(), store_slice_c(), sub_left_prediction(), svq1_encode_frame(), svq1_encode_plane(), unpack_bitstream(), vc1_inv_trans_8x8_c(), vorbis_residue_decode_internal(), and weight_h264_W_altivec().
const vf_info_t vf_info_mcdeint |
Initial value:
Definition at line 330 of file vf_mcdeint.c.