Add a check to res0.c:unpack to make sure we don't try to cascade
authorMonty <xiphmont@xiph.org>
Mon, 14 Aug 2000 21:53:49 +0000 (21:53 +0000)
committerMonty <xiphmont@xiph.org>
Mon, 14 Aug 2000 21:53:49 +0000 (21:53 +0000)
witht he old code (once the feature gets written and such streams
appear later)

Monty

svn path=/trunk/vorbis/; revision=551

include/vorbis/modes.h
lib/res0.c

index d1cc21f..f61f953 100644 (file)
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: predefined encoding modes
- last mod: $Id: modes.h,v 1.16 2000/07/12 09:36:17 xiphmont Exp $
+ last mod: $Id: modes.h,v 1.17 2000/08/14 21:53:49 xiphmont Exp $
 
  ********************************************************************/
 
@@ -60,7 +60,7 @@
 /* A farily high quality setting mix */
 static vorbis_info_psy _psy_set0={
   1,/*athp*/
-  0,/*decayp*/
+  1,/*decayp*/
   1,/*smoothp*/
   0,8,0.,
 
@@ -113,7 +113,7 @@ static vorbis_info_residue0 _residue_set0={0,128, 64,14,2,
                                           {99,99,99,99,99,99,99,
                                            99,99,99,99,99,99,99}};
 
-static vorbis_info_residue0 _residue_set1={0,1024, 64,14,3,
+static vorbis_info_residue0 _residue_set1={0,1024, 64,28,3,
                                           {0,1,1,1,1,1,1,1,1,1,1,1,1,1,
                                            0,1,1,1,1,1,1,1,1,1,1,1,1,1},
                                           {4,5,6,7,8,9,10,11,12,13,14,15,16,
@@ -132,7 +132,8 @@ static vorbis_info_residue0 _residue_set1={0,1024, 64,14,3,
                                           {6,6,6,6,6,6,6,6,6,6,6,6,6,6,
                                           6,6,6,6,6,6,6,6,6,6,6,6,6},/*6==64*/
 
-                                          {99,99,99,99,99,99,99,
+                                          {2,2,2,2,2,2,2,2,2,2,2,2,2,2,
+                                           99,99,99,99,99,99,99,
                                            99,99,99,99,99,99}};
 
 static vorbis_info_mapping0 _mapping_set0={1, {0,0}, {0}, {0}, {0}, {0}};
index 16eee10..aa38158 100644 (file)
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: residue backend 0 implementation
- last mod: $Id: res0.c,v 1.15 2000/06/15 09:18:34 xiphmont Exp $
+ last mod: $Id: res0.c,v 1.16 2000/08/14 21:53:49 xiphmont Exp $
 
  ********************************************************************/
 
@@ -96,7 +96,11 @@ vorbis_info_residue *unpack(vorbis_info *vi,oggpack_buffer *opb){
   info->partitions=_oggpack_read(opb,6)+1;
   info->groupbook=_oggpack_read(opb,8);
   for(j=0;j<info->partitions;j++){
-    acc+=info->secondstages[j]=_oggpack_read(opb,4);
+    int cascade=info->secondstages[j]=_oggpack_read(opb,4);
+    if(cascade>1)goto errout; /* temporary!  when cascading gets
+                                 reworked and actually used, we don't
+                                 want old code to DTWT */
+    acc+=cascade;
   }
   for(j=0;j<acc;j++)
     info->booklist[j]=_oggpack_read(opb,8);