Commit b67fe48f authored by Michael Niedermayer's avatar Michael Niedermayer

jpeg2000/j2k: merge getsigctxno()

Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent 69b97739
......@@ -107,43 +107,43 @@ static int getsigctxno(int flag, int bandno)
{
int h, v, d;
h = ((flag & JPEG2000_T1_SIG_E) ? 1:0)+
((flag & JPEG2000_T1_SIG_W) ? 1:0);
v = ((flag & JPEG2000_T1_SIG_N) ? 1:0);
v = v + ((flag & JPEG2000_T1_SIG_S) ? 1:0);
d = ((flag & JPEG2000_T1_SIG_NE) ? 1:0)+
((flag & JPEG2000_T1_SIG_NW) ? 1:0);
d = d + ((flag & JPEG2000_T1_SIG_SE) ? 1:0)+
((flag & JPEG2000_T1_SIG_SW) ? 1:0);
h = ((flag & JPEG2000_T1_SIG_E) ? 1 : 0) +
((flag & JPEG2000_T1_SIG_W) ? 1 : 0);
v = ((flag & JPEG2000_T1_SIG_N) ? 1 : 0) +
((flag & JPEG2000_T1_SIG_S) ? 1 : 0);
d = ((flag & JPEG2000_T1_SIG_NE) ? 1 : 0) +
((flag & JPEG2000_T1_SIG_NW) ? 1 : 0) +
((flag & JPEG2000_T1_SIG_SE) ? 1 : 0) +
((flag & JPEG2000_T1_SIG_SW) ? 1 : 0);
if (bandno < 3){
if (bandno == 1)
FFSWAP(int, h, v);
if (h == 2) return 8;
if (h == 1){
if (v >= 1) return 7;
if (d >= 1) return 6;
return 5;
}
if (v == 2) return 4;
if (v == 1) return 3;
if (d >= 2) return 2;
if (d == 1) return 1;
return 0;
if (bandno == 1)
FFSWAP(int, h, v);
if (h == 2) return 8;
if (h == 1){
if (v >= 1) return 7;
if (d >= 1) return 6;
return 5;
}
if (v == 2) return 4;
if (v == 1) return 3;
if (d >= 2) return 2;
if (d == 1) return 1;
} else{
if (d >= 3) return 8;
if (d == 2){
if (h+v >= 1) return 7;
return 6;
}
if (d == 1){
if (h+v >= 2) return 5;
if (h+v == 1) return 4;
return 3;
}
if (h+v >= 2) return 2;
if (h+v == 1) return 1;
return 0;
if (d >= 3) return 8;
if (d == 2){
if (h+v >= 1) return 7;
return 6;
}
if (d == 1){
if (h+v >= 2) return 5;
if (h+v == 1) return 4;
return 3;
}
if (h+v >= 2) return 2;
if (h+v == 1) return 1;
}
return 0;
}
static int getsgnctxno(int flag, uint8_t *xorbit)
......
......@@ -95,47 +95,33 @@ static int getsigctxno(int flag, int bandno)
((flag & JPEG2000_T1_SIG_NW) ? 1 : 0) +
((flag & JPEG2000_T1_SIG_SE) ? 1 : 0) +
((flag & JPEG2000_T1_SIG_SW) ? 1 : 0);
if (bandno < 3) {
if (bandno < 3){
if (bandno == 1)
FFSWAP(int, h, v);
if (h == 2)
return 8;
if (h == 1) {
if (v >= 1)
return 7;
if (d >= 1)
return 6;
if (h == 2) return 8;
if (h == 1){
if (v >= 1) return 7;
if (d >= 1) return 6;
return 5;
}
if (v == 2)
return 4;
if (v == 1)
return 3;
if (d >= 2)
return 2;
if (d == 1)
return 1;
return 0;
} else {
if (d >= 3)
return 8;
if (d == 2) {
if (h + v >= 1)
return 7;
if (v == 2) return 4;
if (v == 1) return 3;
if (d >= 2) return 2;
if (d == 1) return 1;
} else{
if (d >= 3) return 8;
if (d == 2){
if (h+v >= 1) return 7;
return 6;
}
if (d == 1) {
if (h + v >= 2)
return 5;
if (h + v == 1)
return 4;
if (d == 1){
if (h+v >= 2) return 5;
if (h+v == 1) return 4;
return 3;
}
if (h + v >= 2)
return 2;
if (h + v == 1)
return 1;
return 0;
if (h+v >= 2) return 2;
if (h+v == 1) return 1;
}
return 0;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment