Some minor setup code rearrangement/cleanup toward 5.1/7.1 additions
[platform/upstream/libvorbis.git] / lib / modes / residue_44.h
index b7969c6..eb0e8e5 100644 (file)
@@ -5,24 +5,33 @@
  * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.       *
  *                                                                  *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2002             *
- * by the XIPHOPHORUS Company http://www.xiph.org/                  *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009             *
+ * by the Xiph.Org Foundation http://www.xiph.org/                  *
  *                                                                  *
  ********************************************************************
 
  function: toplevel residue templates for 32/44.1/48kHz
- last mod: $Id: residue_44.h,v 1.15 2002/07/10 03:04:22 xiphmont Exp $
+ last mod: $Id$
 
  ********************************************************************/
 
 #include "vorbis/codec.h"
 #include "backends.h"
-#include "books/coupled/res_books_44c.h"
+#include "books/coupled/res_books_stereo.h"
 
 /***** residue backends *********************************************/
 
-static vorbis_info_residue0 _residue_44_mid={
-  0,-1, -1, 10,-1,
+static const vorbis_info_residue0 _residue_44_low={
+  0,-1, -1, 9,-1,-1,
+  /*  0     1     2     3     4     5     6     7  */
+  {0},
+  {-1},
+  {  .5,  1.5,  2.5,  2.5,  4.5,  8.5,  16.5, 32.5},
+  {  .5,   .5,   .5,  999., 4.5,  8.5,  16.5, 32.5},
+};
+
+static const vorbis_info_residue0 _residue_44_mid={
+  0,-1, -1, 10,-1,-1,
   /*  0     1     2     3     4     5     6     7     8  */
   {0},
   {-1},
@@ -30,8 +39,8 @@ static vorbis_info_residue0 _residue_44_mid={
   {  .5,   .5, 999.,   .5,  999., 4.5,  8.5,  16.5, 32.5},
 };
 
-static vorbis_info_residue0 _residue_44_high={
-  0,-1, -1, 10,-1,
+static const vorbis_info_residue0 _residue_44_high={
+  0,-1, -1, 10,-1,-1,
   /*  0     1     2     3     4     5     6     7     8  */
   {0},
   {-1},
@@ -39,39 +48,58 @@ static vorbis_info_residue0 _residue_44_high={
   {  .5,  1.5,  2.5,  3.5,  4.5,  8.5, 16.5, 71.5,157.5},
 };
 
-static static_bookblock _resbook_44s_0={
+static const static_bookblock _resbook_44s_n1={
+  {
+    {0},{0,0,&_44cn1_s_p1_0},{0,0,&_44cn1_s_p2_0},
+    {0,0,&_44cn1_s_p3_0},{0,0,&_44cn1_s_p4_0},{0,0,&_44cn1_s_p5_0},
+    {&_44cn1_s_p6_0,&_44cn1_s_p6_1},{&_44cn1_s_p7_0,&_44cn1_s_p7_1},
+    {&_44cn1_s_p8_0,&_44cn1_s_p8_1,&_44cn1_s_p8_2}
+   }
+};
+static const static_bookblock _resbook_44sm_n1={
   {
-    {0},{0,0,&_44c0_s_p1_0},{0,0,&_44c0_s_p2_0},{0,0,&_44c0_s_p3_0},
-    {0,0,&_44c0_s_p4_0},{0,0,&_44c0_s_p5_0},{0,0,&_44c0_s_p6_0},
-    {&_44c0_s_p7_0,&_44c0_s_p7_1},{&_44c0_s_p8_0,&_44c0_s_p8_1},
-    {&_44c0_s_p9_0,&_44c0_s_p9_1,&_44c0_s_p9_2}
+    {0},{0,0,&_44cn1_sm_p1_0},{0,0,&_44cn1_sm_p2_0},
+    {0,0,&_44cn1_sm_p3_0},{0,0,&_44cn1_sm_p4_0},{0,0,&_44cn1_sm_p5_0},
+    {&_44cn1_sm_p6_0,&_44cn1_sm_p6_1},{&_44cn1_sm_p7_0,&_44cn1_sm_p7_1},
+    {&_44cn1_sm_p8_0,&_44cn1_sm_p8_1,&_44cn1_sm_p8_2}
    }
 };
-static static_bookblock _resbook_44sm_0={
+
+static const static_bookblock _resbook_44s_0={
   {
-    {0},{0,0,&_44c0_sm_p1_0},{0,0,&_44c0_sm_p2_0},{0,0,&_44c0_sm_p3_0},
-    {0,0,&_44c0_sm_p4_0},{0,0,&_44c0_sm_p5_0},{0,0,&_44c0_sm_p6_0},
-    {&_44c0_sm_p7_0,&_44c0_sm_p7_1},{&_44c0_sm_p8_0,&_44c0_sm_p8_1},
-    {&_44c0_sm_p9_0,&_44c0_sm_p9_1,&_44c0_sm_p9_2}
+    {0},{0,0,&_44c0_s_p1_0},{0,0,&_44c0_s_p2_0},
+    {0,0,&_44c0_s_p3_0},{0,0,&_44c0_s_p4_0},{0,0,&_44c0_s_p5_0},
+    {&_44c0_s_p6_0,&_44c0_s_p6_1},{&_44c0_s_p7_0,&_44c0_s_p7_1},
+    {&_44c0_s_p8_0,&_44c0_s_p8_1,&_44c0_s_p8_2}
    }
 };
-static static_bookblock _resbook_44s_1={
+static const static_bookblock _resbook_44sm_0={
   {
-    {0},{0,0,&_44c1_s_p1_0},{0,0,&_44c1_s_p2_0},{0,0,&_44c1_s_p3_0},
-    {0,0,&_44c1_s_p4_0},{0,0,&_44c1_s_p5_0},{0,0,&_44c1_s_p6_0},
-    {&_44c1_s_p7_0,&_44c1_s_p7_1},{&_44c1_s_p8_0,&_44c1_s_p8_1},
-    {&_44c1_s_p9_0,&_44c1_s_p9_1,&_44c1_s_p9_2}
+    {0},{0,0,&_44c0_sm_p1_0},{0,0,&_44c0_sm_p2_0},
+    {0,0,&_44c0_sm_p3_0},{0,0,&_44c0_sm_p4_0},{0,0,&_44c0_sm_p5_0},
+    {&_44c0_sm_p6_0,&_44c0_sm_p6_1},{&_44c0_sm_p7_0,&_44c0_sm_p7_1},
+    {&_44c0_sm_p8_0,&_44c0_sm_p8_1,&_44c0_sm_p8_2}
    }
 };
-static static_bookblock _resbook_44sm_1={
+
+static const static_bookblock _resbook_44s_1={
   {
-    {0},{0,0,&_44c1_sm_p1_0},{0,0,&_44c1_sm_p2_0},{0,0,&_44c1_sm_p3_0},
-    {0,0,&_44c1_sm_p4_0},{0,0,&_44c1_sm_p5_0},{0,0,&_44c1_sm_p6_0},
-    {&_44c1_sm_p7_0,&_44c1_sm_p7_1},{&_44c1_sm_p8_0,&_44c1_sm_p8_1},
-    {&_44c1_sm_p9_0,&_44c1_sm_p9_1,&_44c1_sm_p9_2}
+    {0},{0,0,&_44c1_s_p1_0},{0,0,&_44c1_s_p2_0},
+    {0,0,&_44c1_s_p3_0},{0,0,&_44c1_s_p4_0},{0,0,&_44c1_s_p5_0},
+    {&_44c1_s_p6_0,&_44c1_s_p6_1},{&_44c1_s_p7_0,&_44c1_s_p7_1},
+    {&_44c1_s_p8_0,&_44c1_s_p8_1,&_44c1_s_p8_2}
    }
 };
-static static_bookblock _resbook_44s_2={
+static const static_bookblock _resbook_44sm_1={
+  {
+    {0},{0,0,&_44c1_sm_p1_0},{0,0,&_44c1_sm_p2_0},
+    {0,0,&_44c1_sm_p3_0},{0,0,&_44c1_sm_p4_0},{0,0,&_44c1_sm_p5_0},
+    {&_44c1_sm_p6_0,&_44c1_sm_p6_1},{&_44c1_sm_p7_0,&_44c1_sm_p7_1},
+    {&_44c1_sm_p8_0,&_44c1_sm_p8_1,&_44c1_sm_p8_2}
+   }
+};
+
+static const static_bookblock _resbook_44s_2={
   {
     {0},{0,0,&_44c2_s_p1_0},{0,0,&_44c2_s_p2_0},{0,0,&_44c2_s_p3_0},
     {0,0,&_44c2_s_p4_0},{0,0,&_44c2_s_p5_0},{0,0,&_44c2_s_p6_0},
@@ -79,7 +107,7 @@ static static_bookblock _resbook_44s_2={
     {&_44c2_s_p9_0,&_44c2_s_p9_1,&_44c2_s_p9_2}
    }
 };
-static static_bookblock _resbook_44s_3={
+static const static_bookblock _resbook_44s_3={
   {
     {0},{0,0,&_44c3_s_p1_0},{0,0,&_44c3_s_p2_0},{0,0,&_44c3_s_p3_0},
     {0,0,&_44c3_s_p4_0},{0,0,&_44c3_s_p5_0},{0,0,&_44c3_s_p6_0},
@@ -87,7 +115,7 @@ static static_bookblock _resbook_44s_3={
     {&_44c3_s_p9_0,&_44c3_s_p9_1,&_44c3_s_p9_2}
    }
 };
-static static_bookblock _resbook_44s_4={
+static const static_bookblock _resbook_44s_4={
   {
     {0},{0,0,&_44c4_s_p1_0},{0,0,&_44c4_s_p2_0},{0,0,&_44c4_s_p3_0},
     {0,0,&_44c4_s_p4_0},{0,0,&_44c4_s_p5_0},{0,0,&_44c4_s_p6_0},
@@ -95,7 +123,7 @@ static static_bookblock _resbook_44s_4={
     {&_44c4_s_p9_0,&_44c4_s_p9_1,&_44c4_s_p9_2}
    }
 };
-static static_bookblock _resbook_44s_5={
+static const static_bookblock _resbook_44s_5={
   {
     {0},{0,0,&_44c5_s_p1_0},{0,0,&_44c5_s_p2_0},{0,0,&_44c5_s_p3_0},
     {0,0,&_44c5_s_p4_0},{0,0,&_44c5_s_p5_0},{0,0,&_44c5_s_p6_0},
@@ -103,7 +131,7 @@ static static_bookblock _resbook_44s_5={
     {&_44c5_s_p9_0,&_44c5_s_p9_1,&_44c5_s_p9_2}
    }
 };
-static static_bookblock _resbook_44s_6={
+static const static_bookblock _resbook_44s_6={
   {
     {0},{0,0,&_44c6_s_p1_0},{0,0,&_44c6_s_p2_0},{0,0,&_44c6_s_p3_0},
     {0,0,&_44c6_s_p4_0},
@@ -114,7 +142,7 @@ static static_bookblock _resbook_44s_6={
     {&_44c6_s_p9_0,&_44c6_s_p9_1,&_44c6_s_p9_2}
    }
 };
-static static_bookblock _resbook_44s_7={
+static const static_bookblock _resbook_44s_7={
   {
     {0},{0,0,&_44c7_s_p1_0},{0,0,&_44c7_s_p2_0},{0,0,&_44c7_s_p3_0},
     {0,0,&_44c7_s_p4_0},
@@ -125,7 +153,7 @@ static static_bookblock _resbook_44s_7={
     {&_44c7_s_p9_0,&_44c7_s_p9_1,&_44c7_s_p9_2}
    }
 };
-static static_bookblock _resbook_44s_8={
+static const static_bookblock _resbook_44s_8={
   {
     {0},{0,0,&_44c8_s_p1_0},{0,0,&_44c8_s_p2_0},{0,0,&_44c8_s_p3_0},
     {0,0,&_44c8_s_p4_0},
@@ -136,7 +164,7 @@ static static_bookblock _resbook_44s_8={
     {&_44c8_s_p9_0,&_44c8_s_p9_1,&_44c8_s_p9_2}
    }
 };
-static static_bookblock _resbook_44s_9={
+static const static_bookblock _resbook_44s_9={
   {
     {0},{0,0,&_44c9_s_p1_0},{0,0,&_44c9_s_p2_0},{0,0,&_44c9_s_p3_0},
     {0,0,&_44c9_s_p4_0},
@@ -148,99 +176,109 @@ static static_bookblock _resbook_44s_9={
    }
 };
 
+static const vorbis_residue_template _res_44s_n1[]={
+  {2,0,  &_residue_44_low,
+   &_huff_book__44cn1_s_short,&_huff_book__44cn1_sm_short,
+   &_resbook_44s_n1,&_resbook_44sm_n1},
 
-static vorbis_residue_template _res_44s_0[]={
-  {2,0,  &_residue_44_mid,
+  {2,0,  &_residue_44_low,
+   &_huff_book__44cn1_s_long,&_huff_book__44cn1_sm_long,
+   &_resbook_44s_n1,&_resbook_44sm_n1}
+};
+static const vorbis_residue_template _res_44s_0[]={
+  {2,0,  &_residue_44_low,
    &_huff_book__44c0_s_short,&_huff_book__44c0_sm_short,
    &_resbook_44s_0,&_resbook_44sm_0},
 
-  {2,0,  &_residue_44_mid,
+  {2,0,  &_residue_44_low,
    &_huff_book__44c0_s_long,&_huff_book__44c0_sm_long,
    &_resbook_44s_0,&_resbook_44sm_0}
 };
-static vorbis_residue_template _res_44s_1[]={
-  {2,0,  &_residue_44_mid,
+static const vorbis_residue_template _res_44s_1[]={
+  {2,0,  &_residue_44_low,
    &_huff_book__44c1_s_short,&_huff_book__44c1_sm_short,
    &_resbook_44s_1,&_resbook_44sm_1},
 
-  {2,0,  &_residue_44_mid,
+  {2,0,  &_residue_44_low,
    &_huff_book__44c1_s_long,&_huff_book__44c1_sm_long,
    &_resbook_44s_1,&_resbook_44sm_1}
 };
-static vorbis_residue_template _res_44s_2[]={
+
+static const vorbis_residue_template _res_44s_2[]={
   {2,0,  &_residue_44_mid,
-   &_huff_book__44c2_s_short,&_huff_book__44c2_sm_short,
+   &_huff_book__44c2_s_short,&_huff_book__44c2_s_short,
    &_resbook_44s_2,&_resbook_44s_2},
 
   {2,0,  &_residue_44_mid,
-   &_huff_book__44c2_s_long,&_huff_book__44c2_sm_long,
+   &_huff_book__44c2_s_long,&_huff_book__44c2_s_long,
    &_resbook_44s_2,&_resbook_44s_2}
 };
-static vorbis_residue_template _res_44s_3[]={
+static const vorbis_residue_template _res_44s_3[]={
   {2,0,  &_residue_44_mid,
-   &_huff_book__44c3_s_short,&_huff_book__44c3_sm_short,
+   &_huff_book__44c3_s_short,&_huff_book__44c3_s_short,
    &_resbook_44s_3,&_resbook_44s_3},
 
   {2,0,  &_residue_44_mid,
-   &_huff_book__44c3_s_long,&_huff_book__44c3_sm_long,
+   &_huff_book__44c3_s_long,&_huff_book__44c3_s_long,
    &_resbook_44s_3,&_resbook_44s_3}
 };
-static vorbis_residue_template _res_44s_4[]={
+static const vorbis_residue_template _res_44s_4[]={
   {2,0,  &_residue_44_mid,
-   &_huff_book__44c4_s_short,&_huff_book__44c4_sm_short,
+   &_huff_book__44c4_s_short,&_huff_book__44c4_s_short,
    &_resbook_44s_4,&_resbook_44s_4},
 
   {2,0,  &_residue_44_mid,
-   &_huff_book__44c4_s_long,&_huff_book__44c4_sm_long,
+   &_huff_book__44c4_s_long,&_huff_book__44c4_s_long,
    &_resbook_44s_4,&_resbook_44s_4}
 };
-static vorbis_residue_template _res_44s_5[]={
+static const vorbis_residue_template _res_44s_5[]={
   {2,0,  &_residue_44_mid,
-   &_huff_book__44c5_s_short,&_huff_book__44c5_sm_short,
+   &_huff_book__44c5_s_short,&_huff_book__44c5_s_short,
    &_resbook_44s_5,&_resbook_44s_5},
 
   {2,0,  &_residue_44_mid,
-   &_huff_book__44c5_s_long,&_huff_book__44c5_sm_long,
+   &_huff_book__44c5_s_long,&_huff_book__44c5_s_long,
    &_resbook_44s_5,&_resbook_44s_5}
 };
-static vorbis_residue_template _res_44s_6[]={
+static const vorbis_residue_template _res_44s_6[]={
   {2,0,  &_residue_44_high,
-   &_huff_book__44c6_s_short,&_huff_book__44c6_sm_short,
+   &_huff_book__44c6_s_short,&_huff_book__44c6_s_short,
    &_resbook_44s_6,&_resbook_44s_6},
 
   {2,0,  &_residue_44_high,
-   &_huff_book__44c6_s_long,&_huff_book__44c6_sm_long,
+   &_huff_book__44c6_s_long,&_huff_book__44c6_s_long,
    &_resbook_44s_6,&_resbook_44s_6}
 };
-static vorbis_residue_template _res_44s_7[]={
+static const vorbis_residue_template _res_44s_7[]={
   {2,0,  &_residue_44_high,
-   &_huff_book__44c7_s_short,&_huff_book__44c7_sm_short,
+   &_huff_book__44c7_s_short,&_huff_book__44c7_s_short,
    &_resbook_44s_7,&_resbook_44s_7},
 
   {2,0,  &_residue_44_high,
-   &_huff_book__44c7_s_long,&_huff_book__44c7_sm_long,
+   &_huff_book__44c7_s_long,&_huff_book__44c7_s_long,
    &_resbook_44s_7,&_resbook_44s_7}
 };
-static vorbis_residue_template _res_44s_8[]={
+static const vorbis_residue_template _res_44s_8[]={
   {2,0,  &_residue_44_high,
-   &_huff_book__44c8_s_short,&_huff_book__44c8_sm_short,
+   &_huff_book__44c8_s_short,&_huff_book__44c8_s_short,
    &_resbook_44s_8,&_resbook_44s_8},
 
   {2,0,  &_residue_44_high,
-   &_huff_book__44c8_s_long,&_huff_book__44c8_sm_long,
+   &_huff_book__44c8_s_long,&_huff_book__44c8_s_long,
    &_resbook_44s_8,&_resbook_44s_8}
 };
-static vorbis_residue_template _res_44s_9[]={
+static const vorbis_residue_template _res_44s_9[]={
   {2,0,  &_residue_44_high,
-   &_huff_book__44c9_s_short,&_huff_book__44c9_sm_short,
+   &_huff_book__44c9_s_short,&_huff_book__44c9_s_short,
    &_resbook_44s_9,&_resbook_44s_9},
 
   {2,0,  &_residue_44_high,
-   &_huff_book__44c9_s_long,&_huff_book__44c9_sm_long,
+   &_huff_book__44c9_s_long,&_huff_book__44c9_s_long,
    &_resbook_44s_9,&_resbook_44s_9}
 };
 
-static vorbis_mapping_template _mapres_template_44_stereo[]={
+static const vorbis_mapping_template _mapres_template_44_stereo[]={
+  { _map_nominal, _res_44s_n1 }, /* -1 */
   { _map_nominal, _res_44s_0 }, /* 0 */
   { _map_nominal, _res_44s_1 }, /* 1 */
   { _map_nominal, _res_44s_2 }, /* 2 */