X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fhevcdsp.h;h=4dd3ebd1ee6ac96322a2e51dff53b62bc838e9dc;hb=4156df59f59626f60186a4effed80f60c9c4e8cc;hp=c6511b01ac902a986752cff28c590fdc6afb7127;hpb=3f307d79d383e0ac505c9f8393d94fb36a092c05;p=ffmpeg diff --git a/libavcodec/hevcdsp.h b/libavcodec/hevcdsp.h index c6511b01ac9..4dd3ebd1ee6 100644 --- a/libavcodec/hevcdsp.h +++ b/libavcodec/hevcdsp.h @@ -1,5 +1,5 @@ /* - * HEVC video Decoder + * HEVC video decoder * * Copyright (C) 2012 - 2013 Guillaume Martres * @@ -25,49 +25,81 @@ #include "get_bits.h" -struct SAOParams; +typedef struct SAOParams { + int offset_abs[3][4]; ///< sao_offset_abs + int offset_sign[3][4]; ///< sao_offset_sign -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); + int band_position[3]; ///< sao_band_position - void (*transform_add[4])(uint8_t *dst, int16_t *coeffs, ptrdiff_t _stride); + int eo_class[3]; ///< sao_eo_class - 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); + int offset_val[3][5]; ///