mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-01-20 06:11:04 +00:00
jpeg2000/j2k: merge getsigctxno()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
69b9773980
commit
b67fe48f34
@ -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;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user