src/main/java/net/sourceforge/jaad/aac/ps/PSFilterbank.java
static void channel_filter2(int frame_len, float[] filter,
		float[][] buffer, float[][][] X_hybrid) {
		int i;

		for(i = 0; i<frame_len; i++) {
			float r0 = (filter[0]*(buffer[0+i][0]+buffer[12+i][0]));
			float r1 = (filter[1]*(buffer[1+i][0]+buffer[11+i][0]));
			float r2 = (filter[2]*(buffer[2+i][0]+buffer[10+i][0]));
			float r3 = (filter[3]*(buffer[3+i][0]+buffer[9+i][0]));
			float r4 = (filter[4]*(buffer[4+i][0]+buffer[8+i][0]));
			float r5 = (filter[5]*(buffer[5+i][0]+buffer[7+i][0]));
			float r6 = (filter[6]*buffer[6+i][0]);
			float i0 = (filter[0]*(buffer[0+i][1]+buffer[12+i][1]));
			float i1 = (filter[1]*(buffer[1+i][1]+buffer[11+i][1]));
			float i2 = (filter[2]*(buffer[2+i][1]+buffer[10+i][1]));
			float i3 = (filter[3]*(buffer[3+i][1]+buffer[9+i][1]));
			float i4 = (filter[4]*(buffer[4+i][1]+buffer[8+i][1]));
			float i5 = (filter[5]*(buffer[5+i][1]+buffer[7+i][1]));
			float i6 = (filter[6]*buffer[6+i][1]);

			/* q = 0 */
			X_hybrid[i][0][0] = r0+r1+r2+r3+r4+r5+r6;
			X_hybrid[i][0][1] = i0+i1+i2+i3+i4+i5+i6;

			/* q = 1 */
			X_hybrid[i][1][0] = r0-r1+r2-r3+r4-r5+r6;
			X_hybrid[i][1][1] = i0-i1+i2-i3+i4-i5+i6;
		}
	}
static void channel_filter2(int frame_len, float[] filter,
		float[][] buffer, float[][][] X_hybrid) {
		int i;

		for(i = 0; i<frame_len; i++) {
			float r0 = (filter[0]*(buffer[0+i][0]+buffer[12+i][0]));
			float r1 = (filter[1]*(buffer[1+i][0]+buffer[11+i][0]));
			float r2 = (filter[2]*(buffer[2+i][0]+buffer[10+i][0]));
			float r3 = (filter[3]*(buffer[3+i][0]+buffer[9+i][0]));
			float r4 = (filter[4]*(buffer[4+i][0]+buffer[8+i][0]));
			float r5 = (filter[5]*(buffer[5+i][0]+buffer[7+i][0]));
			float r6 = (filter[6]*buffer[6+i][0]);
			float i0 = (filter[0]*(buffer[0+i][1]+buffer[12+i][1]));
			float i1 = (filter[1]*(buffer[1+i][1]+buffer[11+i][1]));
			float i2 = (filter[2]*(buffer[2+i][1]+buffer[10+i][1]));
			float i3 = (filter[3]*(buffer[3+i][1]+buffer[9+i][1]));
			float i4 = (filter[4]*(buffer[4+i][1]+buffer[8+i][1]));
			float i5 = (filter[5]*(buffer[5+i][1]+buffer[7+i][1]));
			float i6 = (filter[6]*buffer[6+i][1]);

			/* q = 0 */
			X_hybrid[i][0][0] = r0+r1+r2+r3+r4+r5+r6;
			X_hybrid[i][0][1] = i0+i1+i2+i3+i4+i5+i6;

			/* q = 1 */
			X_hybrid[i][1][0] = r0-r1+r2-r3+r4-r5+r6;
			X_hybrid[i][1][1] = i0-i1+i2-i3+i4-i5+i6;
		}
	}
static void channel_filter2 ( int frame_len , float [ ] filter , float [ ] [ ] buffer , float [ ] [ ] [ ] X_hybrid ) { int i ; for ( i = 0 ; i < frame_len ; i ++ ) { float r0 = ( filter [ 0 ] * ( buffer [ 0 + i ] [ 0 ] + buffer [ 12 + i ] [ 0 ] ) ) ; float r1 = ( filter [ 1 ] * ( buffer [ 1 + i ] [ 0 ] + buffer [ 11 + i ] [ 0 ] ) ) ; float r2 = ( filter [ 2 ] * ( buffer [ 2 + i ] [ 0 ] + buffer [ 10 + i ] [ 0 ] ) ) ; float r3 = ( filter [ 3 ] * ( buffer [ 3 + i ] [ 0 ] + buffer [ 9 + i ] [ 0 ] ) ) ; float r4 = ( filter [ 4 ] * ( buffer [ 4 + i ] [ 0 ] + buffer [ 8 + i ] [ 0 ] ) ) ; float r5 = ( filter [ 5 ] * ( buffer [ 5 + i ] [ 0 ] + buffer [ 7 + i ] [ 0 ] ) ) ; float r6 = ( filter [ 6 ] * buffer [ 6 + i ] [ 0 ] ) ; float i0 = ( filter [ 0 ] * ( buffer [ 0 + i ] [ 1 ] + buffer [ 12 + i ] [ 1 ] ) ) ; float i1 = ( filter [ 1 ] * ( buffer [ 1 + i ] [ 1 ] + buffer [ 11 + i ] [ 1 ] ) ) ; float i2 = ( filter [ 2 ] * ( buffer [ 2 + i ] [ 1 ] + buffer [ 10 + i ] [ 1 ] ) ) ; float i3 = ( filter [ 3 ] * ( buffer [ 3 + i ] [ 1 ] + buffer [ 9 + i ] [ 1 ] ) ) ; float i4 = ( filter [ 4 ] * ( buffer [ 4 + i ] [ 1 ] + buffer [ 8 + i ] [ 1 ] ) ) ; float i5 = ( filter [ 5 ] * ( buffer [ 5 + i ] [ 1 ] + buffer [ 7 + i ] [ 1 ] ) ) ; float i6 = ( filter [ 6 ] * buffer [ 6 + i ] [ 1 ] ) ; /* q = 0 */ X_hybrid [ i ] [ 0 ] [ 0 ] = r0 + r1 + r2 + r3 + r4 + r5 + r6 ; X_hybrid [ i ] [ 0 ] [ 1 ] = i0 + i1 + i2 + i3 + i4 + i5 + i6 ; /* q = 1 */ X_hybrid [ i ] [ 1 ] [ 0 ] = r0 - r1 + r2 - r3 + r4 - r5 + r6 ; X_hybrid [ i ] [ 1 ] [ 1 ] = i0 - i1 + i2 - i3 + i4 - i5 + i6 ; } }
/* real filter, size 2
/ * real filter size 2