Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Modified discrete cosine transform
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
=== TDAC for the windowed MDCT === Above, the TDAC property was proved for the ordinary MDCT, showing that adding IMDCTs of subsequent blocks in their overlapping half recovers the original data. The derivation of this inverse property for the windowed MDCT is only slightly more complicated. Consider two overlapping consecutive sets of 2''N'' inputs (''A'',''B'') and (''B'',''C''), for blocks ''A'',''B'',''C'' of size ''N''. Recall from above that when <math>(A,B)</math> and <math>(B,C)</math> are MDCTed, IMDCTed, and added in their overlapping half, we obtain <math>(B+B_R) / 2 + (B-B_R) / 2 = B</math>, the original data. Now we suppose that we multiply ''both'' the MDCT inputs ''and'' the IMDCT outputs by a window function of length 2''N''. As above, we assume a symmetric window function, which is therefore of the form <math>(W,W_R)</math> where ''W'' is a length-''N'' vector and ''R'' denotes reversal as before. Then the Princen-Bradley condition can be written as <math>W^2 + W_R^2 = (1,1,\ldots)</math>, with the squares and additions performed elementwise. Therefore, instead of MDCTing <math>(A,B)</math>, we now MDCT <math>(WA,W_R B)</math> (with all multiplications performed elementwise). When this is IMDCTed and multiplied again (elementwise) by the window function, the last-''N'' half becomes: :<math>W_R \cdot (W_R B+(W_R B)_R) =W_R \cdot (W_R B+W B_R) = W_R^2 B+WW_R B_R</math>. (Note that we no longer have the multiplication by 1/2, because the IMDCT normalization differs by a factor of 2 in the windowed case.) Similarly, the windowed MDCT and IMDCT of <math>(B,C)</math> yields, in its first-''N'' half: :<math>W \cdot (WB - W_R B_R) = W^2 B - W W_R B_R</math>. When we add these two halves together, we obtain: :<math>(W_R^2 B+WW_R B_R) + (W^2 B - W W_R B_R)= \left(W_R^2 + W^2\right)B = B,</math> recovering the original data.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)