Browse Source

hevcdsp: further simplify sao_edge_filter

Reviewed-by: Christophe Gisquet <christophe.gisquet@gmail.com>
Reviewed-by: Mickaël Raulet <mraulet@insa-rennes.fr>
Signed-off-by: James Almer <jamrial@gmail.com>
tags/n2.6
James Almer 11 years ago
parent
commit
121ccc3365
1 changed files with 5 additions and 7 deletions
  1. +5
    -7
      libavcodec/hevcdsp_template.c

+ 5
- 7
libavcodec/hevcdsp_template.c View File

@@ -344,8 +344,6 @@ static void FUNC(sao_edge_filter)(uint8_t *_dst, uint8_t *_src,
pixel *dst = (pixel *)_dst;
pixel *src = (pixel *)_src;
int a_stride, b_stride;
int src_offset = 0;
int dst_offset = 0;
int x, y;
stride_src /= sizeof(pixel);
stride_dst /= sizeof(pixel);
@@ -354,13 +352,13 @@ static void FUNC(sao_edge_filter)(uint8_t *_dst, uint8_t *_src,
b_stride = pos[eo][1][0] + pos[eo][1][1] * stride_src;
for (y = 0; y < height; y++) {
for (x = 0; x < width; x++) {
int diff0 = CMP(src[x + src_offset], src[x + src_offset + a_stride]);
int diff1 = CMP(src[x + src_offset], src[x + src_offset + b_stride]);
int diff0 = CMP(src[x], src[x + a_stride]);
int diff1 = CMP(src[x], src[x + b_stride]);
int offset_val = edge_idx[2 + diff0 + diff1];
dst[x + dst_offset] = av_clip_pixel(src[x + src_offset] + sao_offset_val[offset_val]);
dst[x] = av_clip_pixel(src[x] + sao_offset_val[offset_val]);
}
src_offset += stride_src;
dst_offset += stride_dst;
src += stride_src;
dst += stride_dst;
}
}



Loading…
Cancel
Save