00001 /* 00002 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding 00003 ** Copyright (C) 2003-2005 M. Bakker, Ahead Software AG, http://www.nero.com 00004 ** 00005 ** This program is free software; you can redistribute it and/or modify 00006 ** it under the terms of the GNU General Public License as published by 00007 ** the Free Software Foundation; either version 2 of the License, or 00008 ** (at your option) any later version. 00009 ** 00010 ** This program is distributed in the hope that it will be useful, 00011 ** but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 ** GNU General Public License for more details. 00014 ** 00015 ** You should have received a copy of the GNU General Public License 00016 ** along with this program; if not, write to the Free Software 00017 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00018 ** 00019 ** Any non-GPL usage of this software or parts of this software is strictly 00020 ** forbidden. 00021 ** 00022 ** Software using this code must display the following message visibly in the 00023 ** software: 00024 ** "FAAD2 AAC/HE-AAC/HE-AACv2/DRM decoder (c) Ahead Software, www.nero.com" 00025 ** in, for example, the about-box or help/startup screen. 00026 ** 00027 ** Commercial non-GPL licensing of this software is possible. 00028 ** For more info contact Ahead Software through [email protected]. 00029 ** 00030 ** $Id: ssr.h,v 1.2 2005/11/01 21:41:43 gabest Exp $ 00031 **/ 00032 00033 #ifndef __SSR_H__ 00034 #define __SSR_H__ 00035 00036 #ifdef __cplusplus 00037 extern "C" { 00038 #endif 00039 00040 #define SSR_BANDS 4 00041 #define PQFTAPS 96 00042 00043 void ssr_decode(ssr_info *ssr, fb_info *fb, uint8_t window_sequence, 00044 uint8_t window_shape, uint8_t window_shape_prev, 00045 real_t *freq_in, real_t *time_out, real_t *overlap, 00046 real_t ipqf_buffer[SSR_BANDS][96/4], 00047 real_t *prev_fmd, uint16_t frame_len); 00048 00049 00050 static void ssr_gain_control(ssr_info *ssr, real_t *data, real_t *output, 00051 real_t *overlap, real_t *prev_fmd, uint8_t band, 00052 uint8_t window_sequence, uint16_t frame_len); 00053 static void ssr_gc_function(ssr_info *ssr, real_t *prev_fmd, 00054 real_t *gc_function, uint8_t window_sequence, 00055 uint16_t frame_len); 00056 00057 00058 #ifdef __cplusplus 00059 } 00060 #endif 00061 #endif