private void output(PixelArray out) {
        int temp_x, temp_8y, temp;
        int k = 0;
        int DU10[], DU20[];
        DU10 = DU[1][0];
        DU20 = DU[2][0];

        num++;
        for (int i = 0; i < YV; i++) {
            for (int j = 0; j < YH; j++) {
                temp_8y = i * 32;
                temp_x = temp = j * 4;
                for (int l = 0; l < 64; l++) {
                    if (x < Xsize && y < Ysize) {
                        out.setPixel(x, y,
                                YUV_to_BGR(DU[0][k][l] + 128,
                                        DU10[temp_8y + temp_x],
                                        DU20[temp_8y + temp_x]));
                    }
                    x++;
                    if ((x % YH) == 0) {
                        temp_x++;
                    }
                    if ((x % 8) == 0) {
                        y++;
                        x -= 8;
                        temp_x = temp;
                        if ((y % YV) == 0) {
                            temp_8y += 8;
                        }
                    }
                }
                k++;
                x += 8;
                y -= 8;
            }
            x -= YH * 8;
            y += 8;
        }
        x += YH * 8;
        y -= YV * 8;
        if (x >= Xsize) {
            y += YV * 8;
            x = 0;
        }
        yp = y;
    }