private int decodeQuantWordlen(){
  for (int chNum=0; chNum < numChannels; chNum++) {
    Arrays.fill(ctx.channels[chNum].quWordlen,0);
    int ret=decodeChannelWordlen(chNum);
    if (ret < 0) {
      return ret;
    }
  }
  int i;
  for (i=ctx.numQuantUnits - 1; i >= 0; i--) {
    if (ctx.channels[0].quWordlen[i] != 0 || (numChannels == 2 && ctx.channels[1].quWordlen[i] != 0)) {
      break;
    }
  }
  ctx.usedQuantUnits=i + 1;
  return 0;
}

private int decodeQuantWordlen ( ) { for ( int chNum = 0 ; chNum < numChannels ; chNum ++ ) { Arrays . fill ( ctx . channels [ chNum ] . quWordlen , 0 ) ; int ret = decodeChannelWordlen ( chNum ) ; if ( ret < 0 ) { return ret ; } } int i ; for ( i = ctx . numQuantUnits - 1 ; i >= 0 ; i -- ) { if ( ctx . channels [ 0 ] . quWordlen [ i ] != 0 || ( numChannels == 2 && ctx . channels [ 1 ] . quWordlen [ i ] != 0 ) ) { break ; } } ctx . usedQuantUnits = i + 1 ; return 0 ; }
decode word length information for each channel .
