summaryrefslogtreecommitdiff
path: root/lib/synthesis.c
diff options
context:
space:
mode:
authorMonty <xiphmont@xiph.org>1999-10-12 08:38:04 +0000
committerMonty <xiphmont@xiph.org>1999-10-12 08:38:04 +0000
commitdda671b88d0b4a5c156c55baa58940c944b2148f (patch)
tree35f57fd3a2f71f51a88578821e3c143797dc7262 /lib/synthesis.c
parent0024760a1024769fa7d26939f1291c45c36fd51a (diff)
downloadlibvorbis-git-dda671b88d0b4a5c156c55baa58940c944b2148f.tar.gz
Commit includes:
Major speed improvement through lpc->spectrum optimizations (roughly 6x faster decode). Short blocks are now being used. Fixed artifact due to overlap/add bug (was using the wrong window to overlap long blocks ) Monty svn path=/trunk/vorbis/; revision=144
Diffstat (limited to 'lib/synthesis.c')
-rw-r--r--lib/synthesis.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/lib/synthesis.c b/lib/synthesis.c
index 5faa7051..e32d32b1 100644
--- a/lib/synthesis.c
+++ b/lib/synthesis.c
@@ -33,7 +33,6 @@ int vorbis_synthesis(vorbis_block *vb,ogg_packet *op){
vorbis_info *vi=vd->vi;
oggpack_buffer *opb=&vb->opb;
lpc_lookup *vl;
- double *window;
int spectral_order;
int n,i;
@@ -59,10 +58,6 @@ int vorbis_synthesis(vorbis_block *vb,ogg_packet *op){
n=vb->pcmend=vi->blocksize[vb->W];
vb->multend=vb->pcmend/vi->envelopesa;
- /* we don't know the size of the following window, but we don't need
- it yet. We only use the first half of the window */
- window=vb->vd->window[vb->W][vb->lW][0];
-
/* recover the time envelope */
/*if(_ve_envelope_decode(vb)<0)return(-1);*/
@@ -84,7 +79,7 @@ int vorbis_synthesis(vorbis_block *vb,ogg_packet *op){
vorbis_lpc_apply(vb->pcm[i],lpc,vb->amp[i],vl);
/* MDCT->time */
- mdct_backward(&vb->vd->vm[vb->W],vb->pcm[i],vb->pcm[i],window);
+ mdct_backward(&vb->vd->vm[vb->W],vb->pcm[i],vb->pcm[i]);
/* apply time domain envelope */
/*_ve_envelope_apply(vb,1);*/