diff options
author | Guillaume Martres <smarter@ubuntu.com> | 2013-12-21 00:08:50 +0100 |
---|---|---|
committer | Luca Barbato <lu_zero@gentoo.org> | 2013-12-22 03:49:11 +0100 |
commit | 7398e0516f7fdf98e74e5ce8966ac02c28aba754 (patch) | |
tree | 68ee8678c2ec4b212c82cd1672285d8921bce526 /libavcodec/hevc.h | |
parent | be7c323176e2e5fcf30e3d2ff20975b2f936811b (diff) | |
download | ffmpeg-7398e0516f7fdf98e74e5ce8966ac02c28aba754.tar.gz |
hevc: move DSP declarations from hevc.h into hevcdsp.h
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Diffstat (limited to 'libavcodec/hevc.h')
-rw-r--r-- | libavcodec/hevc.h | 82 |
1 files changed, 1 insertions, 81 deletions
diff --git a/libavcodec/hevc.h b/libavcodec/hevc.h index 434e781bb0..014219795d 100644 --- a/libavcodec/hevc.h +++ b/libavcodec/hevc.h @@ -33,6 +33,7 @@ #include "cabac.h" #include "dsputil.h" #include "get_bits.h" +#include "hevcdsp.h" #include "internal.h" #include "thread.h" #include "videodsp.h" @@ -658,19 +659,6 @@ typedef struct TransformUnit { uint8_t is_cu_qp_delta_coded; } TransformUnit; -typedef struct SAOParams { - int offset_abs[3][4]; ///< sao_offset_abs - int offset_sign[3][4]; ///< sao_offset_sign - - int band_position[3]; ///< sao_band_position - - int eo_class[3]; ///< sao_eo_class - - int offset_val[3][5]; ///<SaoOffsetVal - - uint8_t type_idx[3]; ///< sao_type_idx -} SAOParams; - typedef struct DBParams { int beta_offset; int tc_offset; @@ -716,70 +704,6 @@ typedef struct HEVCNAL { const uint8_t *data; } HEVCNAL; -typedef struct HEVCDSPContext { - void (*put_pcm)(uint8_t *dst, ptrdiff_t stride, int size, - GetBitContext *gb, int pcm_bit_depth); - - void (*transquant_bypass[4])(uint8_t *dst, int16_t *coeffs, - ptrdiff_t stride); - - void (*transform_skip)(uint8_t *dst, int16_t *coeffs, ptrdiff_t stride); - void (*transform_4x4_luma_add)(uint8_t *dst, int16_t *coeffs, - ptrdiff_t stride); - void (*transform_add[4])(uint8_t *dst, int16_t *coeffs, ptrdiff_t stride); - - void (*sao_band_filter[4])(uint8_t *dst, uint8_t *src, ptrdiff_t stride, - struct SAOParams *sao, int *borders, - int width, int height, int c_idx); - void (*sao_edge_filter[4])(uint8_t *dst, uint8_t *src, ptrdiff_t stride, - struct SAOParams *sao, int *borders, int width, - int height, int c_idx, uint8_t vert_edge, - uint8_t horiz_edge, uint8_t diag_edge); - - void (*put_hevc_qpel[4][4])(int16_t *dst, ptrdiff_t dststride, uint8_t *src, - ptrdiff_t srcstride, int width, int height, - int16_t *mcbuffer); - void (*put_hevc_epel[2][2])(int16_t *dst, ptrdiff_t dststride, uint8_t *src, - ptrdiff_t srcstride, int width, int height, - int mx, int my, int16_t *mcbuffer); - - void (*put_unweighted_pred)(uint8_t *dst, ptrdiff_t dststride, int16_t *src, - ptrdiff_t srcstride, int width, int height); - void (*put_weighted_pred_avg)(uint8_t *dst, ptrdiff_t dststride, - int16_t *src1, int16_t *src2, - ptrdiff_t srcstride, int width, int height); - void (*weighted_pred)(uint8_t denom, int16_t wlxFlag, int16_t olxFlag, - uint8_t *dst, ptrdiff_t dststride, int16_t *src, - ptrdiff_t srcstride, int width, int height); - void (*weighted_pred_avg)(uint8_t denom, int16_t wl0Flag, int16_t wl1Flag, - int16_t ol0Flag, int16_t ol1Flag, uint8_t *dst, - ptrdiff_t dststride, int16_t *src1, int16_t *src2, - ptrdiff_t srcstride, int width, int height); - - void (*hevc_h_loop_filter_luma)(uint8_t *pix, ptrdiff_t stride, - int *beta, int *tc, - uint8_t *no_p, uint8_t *no_q); - void (*hevc_v_loop_filter_luma)(uint8_t *pix, ptrdiff_t stride, - int *beta, int *tc, - uint8_t *no_p, uint8_t *no_q); - void (*hevc_h_loop_filter_chroma)(uint8_t *pix, ptrdiff_t stride, - int *tc, uint8_t *no_p, uint8_t *no_q); - void (*hevc_v_loop_filter_chroma)(uint8_t *pix, ptrdiff_t stride, - int *tc, uint8_t *no_p, uint8_t *no_q); - void (*hevc_h_loop_filter_luma_c)(uint8_t *pix, ptrdiff_t stride, - int *beta, int *tc, - uint8_t *no_p, uint8_t *no_q); - void (*hevc_v_loop_filter_luma_c)(uint8_t *pix, ptrdiff_t stride, - int *beta, int *tc, - uint8_t *no_p, uint8_t *no_q); - void (*hevc_h_loop_filter_chroma_c)(uint8_t *pix, ptrdiff_t stride, - int *tc, uint8_t *no_p, - uint8_t *no_q); - void (*hevc_v_loop_filter_chroma_c)(uint8_t *pix, ptrdiff_t stride, - int *tc, uint8_t *no_p, - uint8_t *no_q); -} HEVCDSPContext; - struct HEVCContext; typedef struct HEVCPredContext { @@ -1060,10 +984,6 @@ void ff_hevc_pps_free(HEVCPPS **ppps); void ff_hevc_pred_init(HEVCPredContext *hpc, int bit_depth); -void ff_hevc_dsp_init(HEVCDSPContext *hpc, int bit_depth); - -extern const int8_t ff_hevc_epel_filters[7][16]; - extern const uint8_t ff_hevc_qpel_extra_before[4]; extern const uint8_t ff_hevc_qpel_extra_after[4]; extern const uint8_t ff_hevc_qpel_extra[4]; |