FFmpeg  4.0
Data Fields
HpelDSPContext Struct Reference

Half-pel DSP context. More...

#include <libavcodec/hpeldsp.h>

Data Fields

op_pixels_func put_pixels_tab [4][4]
 Halfpel motion compensation with rounding (a+b+1)>>1. More...
 
op_pixels_func avg_pixels_tab [4][4]
 Halfpel motion compensation with rounding (a+b+1)>>1. More...
 
op_pixels_func put_no_rnd_pixels_tab [4][4]
 Halfpel motion compensation with no rounding (a+b)>>1. More...
 
op_pixels_func avg_no_rnd_pixels_tab [4]
 Halfpel motion compensation with no rounding (a+b)>>1. More...
 

Detailed Description

Half-pel DSP context.

Definition at line 45 of file hpeldsp.h.

Field Documentation

◆ put_pixels_tab

op_pixels_func HpelDSPContext::put_pixels_tab[4][4]

Halfpel motion compensation with rounding (a+b+1)>>1.

this is an array[4][4] of motion compensation functions for 4 horizontal blocksizes (8,16) and the 4 halfpel positions
*pixels_tab[ 0->16xH 1->8xH ][ xhalfpel + 2*yhalfpel ]

Parameters
blockdestination where the result is stored
pixelssource
line_sizenumber of bytes in a horizontal line of block
hheight

Definition at line 56 of file hpeldsp.h.

Referenced by bink_decode_plane(), bink_put_pixels(), binkb_decode_plane(), check_bidir_mv(), copy_cell(), copy_from(), dct_init(), decode(), encode_mb_internal(), encode_thread(), ff_hpeldsp_init_aarch64(), ff_hpeldsp_init_alpha(), ff_hpeldsp_init_armv6(), ff_hpeldsp_init_neon(), ff_hpeldsp_init_ppc(), ff_init_me(), ff_vc1_mc_1mv(), ff_vc1_mc_4mv_luma(), gmc1_motion(), h263_mv4_search(), hpeldsp_init_3dnow(), hpeldsp_init_mmxext(), hpeldsp_init_sse2_fast(), hpeldsp_init_ssse3(), interlaced_search(), mjpeg_copy_block(), mpv_reconstruct_mb_internal(), render_slice(), svq1_encode_plane(), svq1_motion_inter_4v_block(), svq1_motion_inter_block(), and svq3_mc_dir_part().

◆ avg_pixels_tab

op_pixels_func HpelDSPContext::avg_pixels_tab[4][4]

Halfpel motion compensation with rounding (a+b+1)>>1.

This is an array[4][4] of motion compensation functions for 4 horizontal blocksizes (8,16) and the 4 halfpel positions
*pixels_tab[ 0->16xH 1->8xH ][ xhalfpel + 2*yhalfpel ]

Parameters
blockdestination into which the result is averaged (a+b+1)>>1
pixelssource
line_sizenumber of bytes in a horizontal line of block
hheight

Definition at line 68 of file hpeldsp.h.

Referenced by check_bidir_mv(), dct_init(), encode_mb_internal(), ff_hpeldsp_init_aarch64(), ff_hpeldsp_init_alpha(), ff_hpeldsp_init_armv6(), ff_hpeldsp_init_neon(), ff_hpeldsp_init_ppc(), ff_init_me(), ff_vc1_interp_mc(), hpeldsp_init_3dnow(), hpeldsp_init_mmx(), hpeldsp_init_mmxext(), hpeldsp_init_sse2_fast(), hpeldsp_init_ssse3(), mpv_motion_internal(), mpv_reconstruct_mb_internal(), and svq3_mc_dir_part().

◆ put_no_rnd_pixels_tab

op_pixels_func HpelDSPContext::put_no_rnd_pixels_tab[4][4]

Halfpel motion compensation with no rounding (a+b)>>1.

this is an array[4][4] of motion compensation functions for 2 horizontal blocksizes (8,16) and the 4 halfpel positions
*pixels_tab[ 0->16xH 1->8xH ][ xhalfpel + 2*yhalfpel ]

Parameters
blockdestination where the result is stored
pixelssource
line_sizenumber of bytes in a horizontal line of block
hheight
Note
The size is kept at [4][4] to match the above pixel_tabs and avoid out of bounds reads in the motion estimation code.

Definition at line 82 of file hpeldsp.h.

Referenced by dct_init(), encode_mb_internal(), ff_hpeldsp_init_aarch64(), ff_hpeldsp_init_alpha(), ff_hpeldsp_init_armv6(), ff_hpeldsp_init_neon(), ff_hpeldsp_init_ppc(), ff_hpeldsp_vp3_init_x86(), ff_init_me(), ff_vc1_mc_1mv(), ff_vc1_mc_4mv_luma(), gmc1_motion(), h263_mv4_search(), hpeldsp_init_3dnow(), hpeldsp_init_mmxext(), hpeldsp_init_sse2_fast(), interlaced_search(), mpv_reconstruct_mb_internal(), and render_slice().

◆ avg_no_rnd_pixels_tab

op_pixels_func HpelDSPContext::avg_no_rnd_pixels_tab[4]

Halfpel motion compensation with no rounding (a+b)>>1.

this is an array[4] of motion compensation functions for 1 horizontal blocksize (16) and the 4 halfpel positions
*pixels_tab[0][ xhalfpel + 2*yhalfpel ]

Parameters
blockdestination into which the result is averaged (a+b)>>1
pixelssource
line_sizenumber of bytes in a horizontal line of block
hheight

Definition at line 94 of file hpeldsp.h.

Referenced by ff_hpeldsp_init_aarch64(), ff_hpeldsp_init_alpha(), ff_hpeldsp_init_neon(), and ff_vc1_interp_mc().


The documentation for this struct was generated from the following file: