winamp/Src/replicant/nsmp3dec/mdct.h

62 lines
1.4 KiB
C
Raw Normal View History

2024-09-24 08:54:57 -04:00
/***************************************************************************\
*
* MPEG Layer3-Audio Decoder
* <EFBFBD> 1997-2006 by Fraunhofer IIS
* All Rights Reserved
*
* filename: mdct.h
* project : ISO/MPEG-Decoder
* author : Stefan Gewinner
* date : 1998-05-26
* contents/description: mdct class - HEADER
*
*
\***************************************************************************/
/*
* $Date: 2011/01/18 18:22:03 $
* $Id: mdct.h,v 1.4 2011/01/18 18:22:03 audiodsp Exp $
*/
#ifndef __MDCT_H__
#define __MDCT_H__
/* ------------------------ includes --------------------------------------*/
#include "mpeg.h"
#include "foundation/align.h"
/*-------------------------------------------------------------------------*/
//
// MDCT class.
//
// This object performs the frequency-to-time mapping.
//
class CMdct
{
public :
CMdct(const MPEG_INFO &_info);
~CMdct() {}
void Init();
void Apply(int ch, const MP3SI_GRCH &SiGrCH, SPECTRUM &rs);
protected :
void cos_t_h_long (float *prev,float *dest,const float *win);
void cos_t_h_short(float *prev,float *dest,const float *win);
float hybrid_res[36];
NALIGN(16) float cost36_rese[9];
NALIGN(16) float cost36_reso[9];
const MPEG_INFO &info;
SPECTRUM prevblck;
};
/*-------------------------------------------------------------------------*/
#endif