hm, my application has also WOLA ...

All I find is about up- and downsampling of time sequences and spectra of the same length.

Summing adjacent bins seemed to be in correspondence with lowpass filtering and decimation of time sequences
even though it's not the apropriate sinc filter...

If I just take every other bin it misses information that a half sized spectrum derived from the original time series would have, for instance if only bin 1 had content in the double sized spectrum certainly the downsized spectrum would need to reflect this as DC or something?

So do I have to apply a sinc filter before and then discard every other bin?

If so, can this be done with an other FFT like a cepstrum on the bins?

If anyone knows of an easy explanation of down- and up sampling spectra it would be much appreciated.

Am 09.11.2018 um 19:16 schrieb Ethan Duni:
gm wrote:
>This is brining up my previous question again, how do you decimate a spectrum
>by an integer factor properly, can you just add the bins?

To decimate by N, you just take every Nth bin.

>the orginal spectrum represents a longer signal so I assume folding
>of the waveform occurs?

Yeah, you will get time-domain aliasing unless your DFT is oversampled (i.e., zero-padded in time domain) by a factor of (at least) N to begin with. For critically sampled signals the result is severe distortion (i.e., SNR ~= 0dB).

>but maybe this doesn't matter in practice for some applications?

The only applications I know of that tolerate time-domain aliasing in transforms are WOLA filter banks - which are explicitly designed to cancel these (severe!) artifacts in the surrounding time-domain processing.

Ethan D

On Fri, Nov 9, 2018 at 6:39 AM gm <g...@voxangelica.net <mailto:g...@voxangelica.net>> wrote:

    This is brining up my previous question again, how do you decimate
    a spectrum
    by an integer factor properly, can you just add the bins?

    the orginal spectrum represents a longer signal so I assume folding
    of the waveform occurs? but maybe this doesn't matter in practice
    for some applications?

    The background is still that I want to use a higher resolution for
    ananlysis and
    a lower resolution for synthesis in a phase vocoder.


    Am 08.11.2018 um 21:45 schrieb Ethan Duni:
    Not sure can get the odd bins *easily*, but it is certainly
    possible. Conceptually, you can take the (short) IFFT of each
    block, then do the (long) FFT of the combined blocks. The even
    coefficients simplify out as you observed, the odd ones will be
    messier. Not sure quite how messy - I've only looked at the
    details for DCT cases.

    Probably the clearest way to think about it is in the frequency
    domain. Conceptually, the two consecutive short DFTs are the same
    as if we had taken two zero-padded long DFTs, and then
    downsampled each by half. So the way to combine them is to
    reverse that process: upsample them by 2, and then add them
    together (with appropriate compensation for the
    zero-padding/boxcar window).

    Ethan D

    On Thu, Nov 8, 2018 at 8:12 AM Ethan Fenn <et...@polyspectral.com
    <mailto:et...@polyspectral.com>> wrote:

        I'd really like to understand how combining consecutive DFT's
        can work. Let's say our input is x0,x1,...x7 and the DFT we
        want to compute is X0,X1,...X7

        We start by doing two half-size DFT's:

        Y0 = x0 + x1 + x2 + x3
        Y1 = x0 - i*x1 - x2 + i*x3
        Y2 = x0 - x1 + x2 - x3
        Y3 = x0 + i*x1 - x2 - i*x3

        Z0 = x4 + x5 + x6 + x7
        Z1 = x4 - i*x5 - x6 + i*x7
        Z2 = x4 - x5 + x6 - x7
        Z3 = x4 + i*x5 - x6 - i*x7

        Now I agree because of periodicity we can compute all the
        even-numbered bins easily: X0=Y0+Z0, X2=Y1+Z1, and so on.

        But I don't see how we can get the odd bins easily from the
        Y's and Z's. For instance we should have:

        X1 = x0 + (r - r*i)*x1 - i*x2 + (-r - r*i)*x3 - x4 + (-r +
        r*i)*x5 + i*x6 + (r + r*i)*x7

        where r=sqrt(1/2)

        Is it actually possible? It seems like the phase of the
        coefficients in the Y's and Z's advance too quickly to be of
        any use.

        -Ethan



        On Mon, Nov 5, 2018 at 3:40 PM, Ethan Duni
        <ethan.d...@gmail.com <mailto:ethan.d...@gmail.com>> wrote:

            You can combine consecutive DFTs. Intuitively, the basis
            functions are periodic on the transform length. But it
            won't be as efficient as having done the big FFT (as you
            say, the decimation in time approach interleaves the
            inputs, so you gotta pay the piper to unwind that). Note
            that this is for naked transforms of successive blocks of
            inputs, not a WOLA filter bank.

            There are Dolby codecs that do similar with a suitable
            flavor of DCT (type II I think?) - you have your encoder
            going along at the usual frame rate, but if it detects a
            string of stationary inputs it can fold them together
            into one big high-res DCT and code that instead.

            On Mon, Nov 5, 2018 at 11:34 AM Ethan Fenn
            <et...@polyspectral.com <mailto:et...@polyspectral.com>>
            wrote:

                I don't think that's correct -- DIF involves first
                doing a single stage of butterfly operations over the
                input, and then doing two smaller DFTs on that
                preprocessed data. I don't think there is any
                reasonable way to take two "consecutive" DFTs of the
                raw input data and combine them into a longer DFT.

                (And I don't know anything about the historical
                question!)

                -Ethan



                On Mon, Nov 5, 2018 at 2:18 PM, robert
                bristow-johnson <r...@audioimagination.com
                <mailto:r...@audioimagination.com>> wrote:

                    Ethan, that's just the difference between
                    Decimation-in-Frequency FFT and
                    Decimation-in-Time FFT.

                    i guess i am not entirely certainly of the
                    history, but i credited both the DIT and DIF FFT
                    to Cooley and Tukey.  that might be an incorrect
                    historical impression.



                    ---------------------------- Original Message
                    ----------------------------
                    Subject: Re: [music-dsp] 2-point DFT Matrix for
                    subbands Re: FFT for realtime synthesis?
                    From: "Ethan Fenn" <et...@polyspectral.com
                    <mailto:et...@polyspectral.com>>
                    Date: Mon, November 5, 2018 10:17 am
                    To: music-dsp@music.columbia.edu
                    <mailto:music-dsp@music.columbia.edu>
                    
--------------------------------------------------------------------------

                    > It's not exactly Cooley-Tukey. In Cooley-Tukey
                    you take two _interleaved_
                    > DFT's (that is, the DFT of the even-numbered
                    samples and the DFT of the
                    > odd-numbered samples) and combine them into one
                    longer DFT. But here you're
                    > talking about taking two _consecutive_ DFT's. I
                    don't think there's any
                    > cheap way to combine these to exactly recover
                    an individual bin of the
                    > longer DFT.
                    >
                    > Of course it's possible you'll be able to come
                    up with a clever frequency
                    > estimator using this information. I'm just
                    saying it won't be exact in the
                    > way Cooley-Tukey is.
                    >
                    > -Ethan
                    >
                    >


                    --

                    r b-j r...@audioimagination.com
                    <mailto:r...@audioimagination.com>

                    "Imagination is more important than knowledge."


                    _______________________________________________
                    dupswapdrop: music-dsp mailing list
                    music-dsp@music.columbia.edu
                    <mailto:music-dsp@music.columbia.edu>
                    https://lists.columbia.edu/mailman/listinfo/music-dsp


                _______________________________________________
                dupswapdrop: music-dsp mailing list
                music-dsp@music.columbia.edu
                <mailto:music-dsp@music.columbia.edu>
                https://lists.columbia.edu/mailman/listinfo/music-dsp


            _______________________________________________
            dupswapdrop: music-dsp mailing list
            music-dsp@music.columbia.edu
            <mailto:music-dsp@music.columbia.edu>
            https://lists.columbia.edu/mailman/listinfo/music-dsp


        _______________________________________________
        dupswapdrop: music-dsp mailing list
        music-dsp@music.columbia.edu
        <mailto:music-dsp@music.columbia.edu>
        https://lists.columbia.edu/mailman/listinfo/music-dsp


    _______________________________________________
    dupswapdrop: music-dsp mailing list
    music-dsp@music.columbia.edu  <mailto:music-dsp@music.columbia.edu>
    https://lists.columbia.edu/mailman/listinfo/music-dsp
    _______________________________________________
    dupswapdrop: music-dsp mailing list
    music-dsp@music.columbia.edu <mailto:music-dsp@music.columbia.edu>
    https://lists.columbia.edu/mailman/listinfo/music-dsp


_______________________________________________
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu
https://lists.columbia.edu/mailman/listinfo/music-dsp
_______________________________________________
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu
https://lists.columbia.edu/mailman/listinfo/music-dsp

Reply via email to