summaryrefslogtreecommitdiffstats
path: root/libavcodec/dirac_dwt.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2015-01-04 04:15:01 +0100
committerMichael Niedermayer <michaelni@gmx.at>2015-01-05 01:45:49 +0100
commit0f931b29f7e969a3c6159cb7173226e806f26f39 (patch)
treeb20f19d7697738fe415025c17afce7c926af07ec /libavcodec/dirac_dwt.c
parent9bff052b51f27f6cce04e8d7d8b405c710d7ad67 (diff)
downloadffmpeg-streaming-0f931b29f7e969a3c6159cb7173226e806f26f39.zip
ffmpeg-streaming-0f931b29f7e969a3c6159cb7173226e806f26f39.tar.gz
Factorize avpriv_mirror() out
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/dirac_dwt.c')
-rw-r--r--libavcodec/dirac_dwt.c30
1 files changed, 10 insertions, 20 deletions
diff --git a/libavcodec/dirac_dwt.c b/libavcodec/dirac_dwt.c
index 96d8bae..da2da75 100644
--- a/libavcodec/dirac_dwt.c
+++ b/libavcodec/dirac_dwt.c
@@ -26,16 +26,6 @@
#include "libavcodec/x86/dirac_dwt.h"
-static inline int mirror(int v, int m)
-{
- while ((unsigned)v > (unsigned)m) {
- v = -v;
- if (v < 0)
- v += 2 * m;
- }
- return v;
-}
-
static void vertical_compose53iL0(IDWTELEM *b0, IDWTELEM *b1, IDWTELEM *b2,
int width)
{
@@ -307,8 +297,8 @@ static void spatial_compose_dirac53i_dy(DWTContext *d, int level, int width, int
int y= cs->y;
IDWTELEM *b[4] = { cs->b[0], cs->b[1] };
- b[2] = d->buffer + mirror(y+1, height-1)*stride;
- b[3] = d->buffer + mirror(y+2, height-1)*stride;
+ b[2] = d->buffer + avpriv_mirror(y+1, height-1)*stride;
+ b[3] = d->buffer + avpriv_mirror(y+2, height-1)*stride;
if(y+1<(unsigned)height) vertical_compose_l0(b[1], b[2], b[3], width);
if(y+0<(unsigned)height) vertical_compose_h0(b[0], b[1], b[2], width);
@@ -400,8 +390,8 @@ static void spatial_compose_daub97i_dy(DWTContext *d, int level, int width, int
IDWTELEM *b[6];
for (i = 0; i < 4; i++)
b[i] = cs->b[i];
- b[4] = d->buffer + mirror(y+3, height-1)*stride;
- b[5] = d->buffer + mirror(y+4, height-1)*stride;
+ b[4] = d->buffer + avpriv_mirror(y+3, height-1)*stride;
+ b[5] = d->buffer + avpriv_mirror(y+4, height-1)*stride;
if(y+3<(unsigned)height) vertical_compose_l1(b[3], b[4], b[5], width);
if(y+2<(unsigned)height) vertical_compose_h1(b[2], b[3], b[4], width);
@@ -419,17 +409,17 @@ static void spatial_compose_daub97i_dy(DWTContext *d, int level, int width, int
static void spatial_compose97i_init2(DWTCompose *cs, IDWTELEM *buffer, int height, int stride)
{
- cs->b[0] = buffer + mirror(-3-1, height-1)*stride;
- cs->b[1] = buffer + mirror(-3 , height-1)*stride;
- cs->b[2] = buffer + mirror(-3+1, height-1)*stride;
- cs->b[3] = buffer + mirror(-3+2, height-1)*stride;
+ cs->b[0] = buffer + avpriv_mirror(-3-1, height-1)*stride;
+ cs->b[1] = buffer + avpriv_mirror(-3 , height-1)*stride;
+ cs->b[2] = buffer + avpriv_mirror(-3+1, height-1)*stride;
+ cs->b[3] = buffer + avpriv_mirror(-3+2, height-1)*stride;
cs->y = -3;
}
static void spatial_compose53i_init2(DWTCompose *cs, IDWTELEM *buffer, int height, int stride)
{
- cs->b[0] = buffer + mirror(-1-1, height-1)*stride;
- cs->b[1] = buffer + mirror(-1 , height-1)*stride;
+ cs->b[0] = buffer + avpriv_mirror(-1-1, height-1)*stride;
+ cs->b[1] = buffer + avpriv_mirror(-1 , height-1)*stride;
cs->y = -1;
}
OpenPOWER on IntegriCloud