summaryrefslogtreecommitdiff
path: root/src/libfaad/ssr_ipqf.c
diff options
context:
space:
mode:
authorDiego 'Flameeyes' Pettenò <flameeyes@gmail.com>2007-05-31 20:29:27 +0200
committerDiego 'Flameeyes' Pettenò <flameeyes@gmail.com>2007-05-31 20:29:27 +0200
commit37d4ab77290e4b906df51a7012576e6aec0fc605 (patch)
tree22603e7f58b7b98c64439035cfce98e4e70939b5 /src/libfaad/ssr_ipqf.c
parent0a2bd906547bf468205defb30c317fca3dac397b (diff)
downloadxine-lib-37d4ab77290e4b906df51a7012576e6aec0fc605.tar.gz
xine-lib-37d4ab77290e4b906df51a7012576e6aec0fc605.tar.bz2
Move libfaad in contrib/ and contextually move the plugin in src/libxineadec/.
--HG-- rename : src/libfaad/Makefile.am => contrib/libfaad/Makefile.am rename : src/libfaad/analysis.h => contrib/libfaad/analysis.h rename : src/libfaad/bits.c => contrib/libfaad/bits.c rename : src/libfaad/bits.h => contrib/libfaad/bits.h rename : src/libfaad/cfft.c => contrib/libfaad/cfft.c rename : src/libfaad/cfft.h => contrib/libfaad/cfft.h rename : src/libfaad/cfft_tab.h => contrib/libfaad/cfft_tab.h rename : src/libfaad/codebook/Makefile.am => contrib/libfaad/codebook/Makefile.am rename : src/libfaad/codebook/hcb.h => contrib/libfaad/codebook/hcb.h rename : src/libfaad/codebook/hcb_1.h => contrib/libfaad/codebook/hcb_1.h rename : src/libfaad/codebook/hcb_10.h => contrib/libfaad/codebook/hcb_10.h rename : src/libfaad/codebook/hcb_11.h => contrib/libfaad/codebook/hcb_11.h rename : src/libfaad/codebook/hcb_2.h => contrib/libfaad/codebook/hcb_2.h rename : src/libfaad/codebook/hcb_3.h => contrib/libfaad/codebook/hcb_3.h rename : src/libfaad/codebook/hcb_4.h => contrib/libfaad/codebook/hcb_4.h rename : src/libfaad/codebook/hcb_5.h => contrib/libfaad/codebook/hcb_5.h rename : src/libfaad/codebook/hcb_6.h => contrib/libfaad/codebook/hcb_6.h rename : src/libfaad/codebook/hcb_7.h => contrib/libfaad/codebook/hcb_7.h rename : src/libfaad/codebook/hcb_8.h => contrib/libfaad/codebook/hcb_8.h rename : src/libfaad/codebook/hcb_9.h => contrib/libfaad/codebook/hcb_9.h rename : src/libfaad/codebook/hcb_sf.h => contrib/libfaad/codebook/hcb_sf.h rename : src/libfaad/common.c => contrib/libfaad/common.c rename : src/libfaad/common.h => contrib/libfaad/common.h rename : src/libfaad/decoder.c => contrib/libfaad/decoder.c rename : src/libfaad/decoder.h => contrib/libfaad/decoder.h rename : src/libfaad/diff_to_faad2_cvs.patch => contrib/libfaad/diff_to_faad2_cvs.patch rename : src/libfaad/drc.c => contrib/libfaad/drc.c rename : src/libfaad/drc.h => contrib/libfaad/drc.h rename : src/libfaad/drm_dec.c => contrib/libfaad/drm_dec.c rename : src/libfaad/drm_dec.h => contrib/libfaad/drm_dec.h rename : src/libfaad/error.c => contrib/libfaad/error.c rename : src/libfaad/error.h => contrib/libfaad/error.h rename : src/libfaad/faad.h => contrib/libfaad/faad.h rename : src/libfaad/filtbank.c => contrib/libfaad/filtbank.c rename : src/libfaad/filtbank.h => contrib/libfaad/filtbank.h rename : src/libfaad/fixed.h => contrib/libfaad/fixed.h rename : src/libfaad/hcr.c => contrib/libfaad/hcr.c rename : src/libfaad/huffman.c => contrib/libfaad/huffman.c rename : src/libfaad/huffman.h => contrib/libfaad/huffman.h rename : src/libfaad/ic_predict.c => contrib/libfaad/ic_predict.c rename : src/libfaad/ic_predict.h => contrib/libfaad/ic_predict.h rename : src/libfaad/iq_table.h => contrib/libfaad/iq_table.h rename : src/libfaad/is.c => contrib/libfaad/is.c rename : src/libfaad/is.h => contrib/libfaad/is.h rename : src/libfaad/kbd_win.h => contrib/libfaad/kbd_win.h rename : src/libfaad/lt_predict.c => contrib/libfaad/lt_predict.c rename : src/libfaad/lt_predict.h => contrib/libfaad/lt_predict.h rename : src/libfaad/mdct.c => contrib/libfaad/mdct.c rename : src/libfaad/mdct.h => contrib/libfaad/mdct.h rename : src/libfaad/mdct_tab.h => contrib/libfaad/mdct_tab.h rename : src/libfaad/mp4.c => contrib/libfaad/mp4.c rename : src/libfaad/mp4.h => contrib/libfaad/mp4.h rename : src/libfaad/ms.c => contrib/libfaad/ms.c rename : src/libfaad/ms.h => contrib/libfaad/ms.h rename : src/libfaad/output.c => contrib/libfaad/output.c rename : src/libfaad/output.h => contrib/libfaad/output.h rename : src/libfaad/pns.c => contrib/libfaad/pns.c rename : src/libfaad/pns.h => contrib/libfaad/pns.h rename : src/libfaad/ps_dec.c => contrib/libfaad/ps_dec.c rename : src/libfaad/ps_dec.h => contrib/libfaad/ps_dec.h rename : src/libfaad/ps_syntax.c => contrib/libfaad/ps_syntax.c rename : src/libfaad/ps_tables.h => contrib/libfaad/ps_tables.h rename : src/libfaad/pulse.c => contrib/libfaad/pulse.c rename : src/libfaad/pulse.h => contrib/libfaad/pulse.h rename : src/libfaad/rvlc.c => contrib/libfaad/rvlc.c rename : src/libfaad/rvlc.h => contrib/libfaad/rvlc.h rename : src/libfaad/sbr_dct.c => contrib/libfaad/sbr_dct.c rename : src/libfaad/sbr_dct.h => contrib/libfaad/sbr_dct.h rename : src/libfaad/sbr_dec.c => contrib/libfaad/sbr_dec.c rename : src/libfaad/sbr_dec.h => contrib/libfaad/sbr_dec.h rename : src/libfaad/sbr_e_nf.c => contrib/libfaad/sbr_e_nf.c rename : src/libfaad/sbr_e_nf.h => contrib/libfaad/sbr_e_nf.h rename : src/libfaad/sbr_fbt.c => contrib/libfaad/sbr_fbt.c rename : src/libfaad/sbr_fbt.h => contrib/libfaad/sbr_fbt.h rename : src/libfaad/sbr_hfadj.c => contrib/libfaad/sbr_hfadj.c rename : src/libfaad/sbr_hfadj.h => contrib/libfaad/sbr_hfadj.h rename : src/libfaad/sbr_hfgen.c => contrib/libfaad/sbr_hfgen.c rename : src/libfaad/sbr_hfgen.h => contrib/libfaad/sbr_hfgen.h rename : src/libfaad/sbr_huff.c => contrib/libfaad/sbr_huff.c rename : src/libfaad/sbr_huff.h => contrib/libfaad/sbr_huff.h rename : src/libfaad/sbr_noise.h => contrib/libfaad/sbr_noise.h rename : src/libfaad/sbr_qmf.c => contrib/libfaad/sbr_qmf.c rename : src/libfaad/sbr_qmf.h => contrib/libfaad/sbr_qmf.h rename : src/libfaad/sbr_qmf_c.h => contrib/libfaad/sbr_qmf_c.h rename : src/libfaad/sbr_syntax.c => contrib/libfaad/sbr_syntax.c rename : src/libfaad/sbr_syntax.h => contrib/libfaad/sbr_syntax.h rename : src/libfaad/sbr_tf_grid.c => contrib/libfaad/sbr_tf_grid.c rename : src/libfaad/sbr_tf_grid.h => contrib/libfaad/sbr_tf_grid.h rename : src/libfaad/sine_win.h => contrib/libfaad/sine_win.h rename : src/libfaad/specrec.c => contrib/libfaad/specrec.c rename : src/libfaad/specrec.h => contrib/libfaad/specrec.h rename : src/libfaad/ssr.c => contrib/libfaad/ssr.c rename : src/libfaad/ssr.h => contrib/libfaad/ssr.h rename : src/libfaad/ssr_fb.c => contrib/libfaad/ssr_fb.c rename : src/libfaad/ssr_fb.h => contrib/libfaad/ssr_fb.h rename : src/libfaad/ssr_ipqf.c => contrib/libfaad/ssr_ipqf.c rename : src/libfaad/ssr_ipqf.h => contrib/libfaad/ssr_ipqf.h rename : src/libfaad/ssr_win.h => contrib/libfaad/ssr_win.h rename : src/libfaad/structs.h => contrib/libfaad/structs.h rename : src/libfaad/syntax.c => contrib/libfaad/syntax.c rename : src/libfaad/syntax.h => contrib/libfaad/syntax.h rename : src/libfaad/tns.c => contrib/libfaad/tns.c rename : src/libfaad/tns.h => contrib/libfaad/tns.h rename : src/libfaad/xine_faad_decoder.c => src/libxineadec/xine_faad_decoder.c
Diffstat (limited to 'src/libfaad/ssr_ipqf.c')
-rw-r--r--src/libfaad/ssr_ipqf.c188
1 files changed, 0 insertions, 188 deletions
diff --git a/src/libfaad/ssr_ipqf.c b/src/libfaad/ssr_ipqf.c
deleted file mode 100644
index 3064285de..000000000
--- a/src/libfaad/ssr_ipqf.c
+++ /dev/null
@@ -1,188 +0,0 @@
-/*
-** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
-** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
-**
-** This program is free software; you can redistribute it and/or modify
-** it under the terms of the GNU General Public License as published by
-** the Free Software Foundation; either version 2 of the License, or
-** (at your option) any later version.
-**
-** This program is distributed in the hope that it will be useful,
-** but WITHOUT ANY WARRANTY; without even the implied warranty of
-** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-** GNU General Public License for more details.
-**
-** You should have received a copy of the GNU General Public License
-** along with this program; if not, write to the Free Software
-** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-**
-** Any non-GPL usage of this software or parts of this software is strictly
-** forbidden.
-**
-** Commercial non-GPL licensing of this software is possible.
-** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
-**
-** $Id: ssr_ipqf.c,v 1.6 2005/10/29 23:57:07 tmmm Exp $
-**/
-
-#include "common.h"
-#include "structs.h"
-
-#ifdef SSR_DEC
-
-#include "ssr.h"
-#include "ssr_ipqf.h"
-
-static real_t **app_pqfbuf;
-static real_t **pp_q0, **pp_t0, **pp_t1;
-
-void gc_set_protopqf(real_t *p_proto)
-{
- int j;
- static real_t a_half[48] =
- {
- 1.2206911375946939E-05, 1.7261986723798209E-05, 1.2300093657077942E-05,
- -1.0833943097791965E-05, -5.7772498639901686E-05, -1.2764767618947719E-04,
- -2.0965186675013334E-04, -2.8166673689263850E-04, -3.1234860429017460E-04,
- -2.6738519958452353E-04, -1.1949424681824722E-04, 1.3965139412648678E-04,
- 4.8864136409185725E-04, 8.7044629275148344E-04, 1.1949430269934793E-03,
- 1.3519708175026700E-03, 1.2346314373964412E-03, 7.6953209114159191E-04,
- -5.2242432579537141E-05, -1.1516092887213454E-03, -2.3538469841711277E-03,
- -3.4033123072127277E-03, -4.0028551071986133E-03, -3.8745415659693259E-03,
- -2.8321073426874310E-03, -8.5038892323704195E-04, 1.8856751185350931E-03,
- 4.9688741735340923E-03, 7.8056704536795926E-03, 9.7027909685901654E-03,
- 9.9960423120166159E-03, 8.2019366335594487E-03, 4.1642072876103365E-03,
- -1.8364453822737758E-03, -9.0384863094167686E-03, -1.6241528177129844E-02,
- -2.1939551286300665E-02, -2.4533179947088161E-02, -2.2591663337768787E-02,
- -1.5122066420044672E-02, -1.7971713448186293E-03, 1.6903413428575379E-02,
- 3.9672315874127042E-02, 6.4487527248102796E-02, 8.8850025474701726E-02,
- 0.1101132906105560 , 0.1258540205143761 , 0.1342239368467012
- };
-
- for (j = 0; j < 48; ++j)
- {
- p_proto[j] = p_proto[95-j] = a_half[j];
- }
-}
-
-void gc_setcoef_eff_pqfsyn(int mm,
- int kk,
- real_t *p_proto,
- real_t ***ppp_q0,
- real_t ***ppp_t0,
- real_t ***ppp_t1)
-{
- int i, k, n;
- real_t w;
-
- /* Set 1st Mul&Acc Coef's */
- *ppp_q0 = (real_t **) calloc(mm, sizeof(real_t *));
- for (n = 0; n < mm; ++n)
- {
- (*ppp_q0)[n] = (real_t *) calloc(mm, sizeof(real_t));
- }
- for (n = 0; n < mm/2; ++n)
- {
- for (i = 0; i < mm; ++i)
- {
- w = (2*i+1)*(2*n+1-mm)*M_PI/(4*mm);
- (*ppp_q0)[n][i] = 2.0 * cos((real_t) w);
-
- w = (2*i+1)*(2*(mm+n)+1-mm)*M_PI/(4*mm);
- (*ppp_q0)[n + mm/2][i] = 2.0 * cos((real_t) w);
- }
- }
-
- /* Set 2nd Mul&Acc Coef's */
- *ppp_t0 = (real_t **) calloc(mm, sizeof(real_t *));
- *ppp_t1 = (real_t **) calloc(mm, sizeof(real_t *));
- for (n = 0; n < mm; ++n)
- {
- (*ppp_t0)[n] = (real_t *) calloc(kk, sizeof(real_t));
- (*ppp_t1)[n] = (real_t *) calloc(kk, sizeof(real_t));
- }
- for (n = 0; n < mm; ++n)
- {
- for (k = 0; k < kk; ++k)
- {
- (*ppp_t0)[n][k] = mm * p_proto[2*k *mm + n];
- (*ppp_t1)[n][k] = mm * p_proto[(2*k+1)*mm + n];
-
- if (k%2 != 0)
- {
- (*ppp_t0)[n][k] = -(*ppp_t0)[n][k];
- (*ppp_t1)[n][k] = -(*ppp_t1)[n][k];
- }
- }
- }
-}
-
-void ssr_ipqf(ssr_info *ssr, real_t *in_data, real_t *out_data,
- real_t buffer[SSR_BANDS][96/4],
- uint16_t frame_len, uint8_t bands)
-{
- static int initFlag = 0;
- real_t a_pqfproto[PQFTAPS];
-
- int i;
-
- if (initFlag == 0)
- {
- gc_set_protopqf(a_pqfproto);
- gc_setcoef_eff_pqfsyn(SSR_BANDS, PQFTAPS/(2*SSR_BANDS), a_pqfproto,
- &pp_q0, &pp_t0, &pp_t1);
- initFlag = 1;
- }
-
- for (i = 0; i < frame_len / SSR_BANDS; i++)
- {
- int l, n, k;
- int mm = SSR_BANDS;
- int kk = PQFTAPS/(2*SSR_BANDS);
-
- for (n = 0; n < mm; n++)
- {
- for (k = 0; k < 2*kk-1; k++)
- {
- buffer[n][k] = buffer[n][k+1];
- }
- }
-
- for (n = 0; n < mm; n++)
- {
- real_t acc = 0.0;
- for (l = 0; l < mm; l++)
- {
- acc += pp_q0[n][l] * in_data[l*frame_len/SSR_BANDS + i];
- }
- buffer[n][2*kk-1] = acc;
- }
-
- for (n = 0; n < mm/2; n++)
- {
- real_t acc = 0.0;
- for (k = 0; k < kk; k++)
- {
- acc += pp_t0[n][k] * buffer[n][2*kk-1-2*k];
- }
- for (k = 0; k < kk; ++k)
- {
- acc += pp_t1[n][k] * buffer[n + mm/2][2*kk-2-2*k];
- }
- out_data[i*SSR_BANDS + n] = acc;
-
- acc = 0.0;
- for (k = 0; k < kk; k++)
- {
- acc += pp_t0[mm-1-n][k] * buffer[n][2*kk-1-2*k];
- }
- for (k = 0; k < kk; k++)
- {
- acc -= pp_t1[mm-1-n][k] * buffer[n + mm/2][2*kk-2-2*k];
- }
- out_data[i*SSR_BANDS + mm-1-n] = acc;
- }
- }
-}
-
-#endif