static int RansDecAdvanceSymbol(final int r, final ByteBuffer pptr, final RansDecSymbol sym, final int scale_bits) { return Decoding .RansDecAdvance(r, pptr, sym.start, sym.freq, scale_bits); }
static int RansDecAdvanceSymbolStep(final int r, final RansDecSymbol sym, final int scale_bits) { return RansDecAdvanceStep(r, sym.start, sym.freq, scale_bits); }
int l7 = 0; for (; i0 < isz4; i0++, i1++, i2++, i7++) { final int c0 = 0xFF & D[l0].R[Decoding.RansDecGet(rans0, Constants.TF_SHIFT)]; final int c1 = 0xFF & D[l1].R[Decoding.RansDecGet(rans1, Constants.TF_SHIFT)]; final int c2 = 0xFF & D[l2].R[Decoding.RansDecGet(rans2, Constants.TF_SHIFT)]; final int c7 = 0xFF & D[l7].R[Decoding.RansDecGet(rans7, Constants.TF_SHIFT)]; rans0 = Decoding.RansDecAdvanceSymbolStep(rans0, syms[l0][c0], Constants.TF_SHIFT); rans1 = Decoding.RansDecAdvanceSymbolStep(rans1, syms[l1][c1], Constants.TF_SHIFT); rans2 = Decoding.RansDecAdvanceSymbolStep(rans2, syms[l2][c2], Constants.TF_SHIFT); rans7 = Decoding.RansDecAdvanceSymbolStep(rans7, syms[l7][c7], Constants.TF_SHIFT); rans0 = Decoding.RansDecRenormalize(rans0, in); rans1 = Decoding.RansDecRenormalize(rans1, in); rans2 = Decoding.RansDecRenormalize(rans2, in); rans7 = Decoding.RansDecRenormalize(rans7, in); final int c7 = 0xFF & D[l7].R[Decoding.RansDecGet(rans7, Constants.TF_SHIFT)]; out_buf.put(i7, (byte) c7); rans7 = Decoding.RansDecAdvanceSymbol(rans7, in, syms[l7][c7],
Decoding.RansDecSymbolInit(syms[j], decoder.fc[j].C, decoder.fc[j].F);
final int out_end = (out_sz & ~3); for (int i = 0; i < out_end; i += 4) { final byte c0 = D.R[Decoding.RansDecGet(rans0, Constants.TF_SHIFT)]; final byte c1 = D.R[Decoding.RansDecGet(rans1, Constants.TF_SHIFT)]; final byte c2 = D.R[Decoding.RansDecGet(rans2, Constants.TF_SHIFT)]; final byte c3 = D.R[Decoding.RansDecGet(rans3, Constants.TF_SHIFT)]; rans0 = Decoding.RansDecAdvanceSymbolStep(rans0, syms[0xFF & c0], Constants.TF_SHIFT); rans1 = Decoding.RansDecAdvanceSymbolStep(rans1, syms[0xFF & c1], Constants.TF_SHIFT); rans2 = Decoding.RansDecAdvanceSymbolStep(rans2, syms[0xFF & c2], Constants.TF_SHIFT); rans3 = Decoding.RansDecAdvanceSymbolStep(rans3, syms[0xFF & c3], Constants.TF_SHIFT); rans0 = Decoding.RansDecRenormalize(rans0, in); rans1 = Decoding.RansDecRenormalize(rans1, in); rans2 = Decoding.RansDecRenormalize(rans2, in); rans3 = Decoding.RansDecRenormalize(rans3, in); break; case 1: c = D.R[Decoding.RansDecGet(rans0, Constants.TF_SHIFT)]; Decoding.RansDecAdvanceSymbol(rans0, in, syms[0xFF & c], Constants.TF_SHIFT); out.put(c); c = D.R[Decoding.RansDecGet(rans0, Constants.TF_SHIFT)];
Decoding.RansDecSymbolInit(syms[j], decoder.fc[j].C, decoder.fc[j].F);
int l7 = 0; for (; i0 < isz4; i0++, i1++, i2++, i7++) { final int c0 = 0xFF & D[l0].R[Decoding.RansDecGet(rans0, Constants.TF_SHIFT)]; final int c1 = 0xFF & D[l1].R[Decoding.RansDecGet(rans1, Constants.TF_SHIFT)]; final int c2 = 0xFF & D[l2].R[Decoding.RansDecGet(rans2, Constants.TF_SHIFT)]; final int c7 = 0xFF & D[l7].R[Decoding.RansDecGet(rans7, Constants.TF_SHIFT)]; rans0 = Decoding.RansDecAdvanceSymbolStep(rans0, syms[l0][c0], Constants.TF_SHIFT); rans1 = Decoding.RansDecAdvanceSymbolStep(rans1, syms[l1][c1], Constants.TF_SHIFT); rans2 = Decoding.RansDecAdvanceSymbolStep(rans2, syms[l2][c2], Constants.TF_SHIFT); rans7 = Decoding.RansDecAdvanceSymbolStep(rans7, syms[l7][c7], Constants.TF_SHIFT); rans0 = Decoding.RansDecRenormalize(rans0, in); rans1 = Decoding.RansDecRenormalize(rans1, in); rans2 = Decoding.RansDecRenormalize(rans2, in); rans7 = Decoding.RansDecRenormalize(rans7, in); final int c7 = 0xFF & D[l7].R[Decoding.RansDecGet(rans7, Constants.TF_SHIFT)]; out_buf.put(i7, (byte) c7); rans7 = Decoding.RansDecAdvanceSymbol(rans7, in, syms[l7][c7],
syms[i][j] = new Decoding.RansDecSymbol(); Decoding.RansDecSymbolInit(syms[i][j], D[i].fc[j].C, D[i].fc[j].F);
static int RansDecAdvanceSymbol(final int r, final ByteBuffer pptr, final RansDecSymbol sym, final int scale_bits) { return Decoding .RansDecAdvance(r, pptr, sym.start, sym.freq, scale_bits); }
static int RansDecAdvanceSymbolStep(final int r, final RansDecSymbol sym, final int scale_bits) { return RansDecAdvanceStep(r, sym.start, sym.freq, scale_bits); }
final int out_end = (out_sz & ~3); for (int i = 0; i < out_end; i += 4) { final byte c0 = D.R[Decoding.RansDecGet(rans0, Constants.TF_SHIFT)]; final byte c1 = D.R[Decoding.RansDecGet(rans1, Constants.TF_SHIFT)]; final byte c2 = D.R[Decoding.RansDecGet(rans2, Constants.TF_SHIFT)]; final byte c3 = D.R[Decoding.RansDecGet(rans3, Constants.TF_SHIFT)]; rans0 = Decoding.RansDecAdvanceSymbolStep(rans0, syms[0xFF & c0], Constants.TF_SHIFT); rans1 = Decoding.RansDecAdvanceSymbolStep(rans1, syms[0xFF & c1], Constants.TF_SHIFT); rans2 = Decoding.RansDecAdvanceSymbolStep(rans2, syms[0xFF & c2], Constants.TF_SHIFT); rans3 = Decoding.RansDecAdvanceSymbolStep(rans3, syms[0xFF & c3], Constants.TF_SHIFT); rans0 = Decoding.RansDecRenormalize(rans0, in); rans1 = Decoding.RansDecRenormalize(rans1, in); rans2 = Decoding.RansDecRenormalize(rans2, in); rans3 = Decoding.RansDecRenormalize(rans3, in); break; case 1: c = D.R[Decoding.RansDecGet(rans0, Constants.TF_SHIFT)]; Decoding.RansDecAdvanceSymbol(rans0, in, syms[0xFF & c], Constants.TF_SHIFT); out.put(c); c = D.R[Decoding.RansDecGet(rans0, Constants.TF_SHIFT)];
syms[i][j] = new Decoding.RansDecSymbol(); Decoding.RansDecSymbolInit(syms[i][j], D[i].fc[j].C, D[i].fc[j].F);