residue_16.h (4834B)
1 /******************************************************************** 2 * * 3 * This FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. * 4 * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * 5 * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * 6 * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * 7 * * 8 * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009 * 9 * by the Xiph.Org Foundation https://xiph.org/ * 10 * * 11 ******************************************************************** 12 13 function: toplevel residue templates 16/22kHz 14 15 ********************************************************************/ 16 17 /***** residue backends *********************************************/ 18 19 static const static_bookblock _resbook_16s_0={ 20 { 21 {0}, 22 {0,0,&_16c0_s_p1_0}, 23 {0}, 24 {0,0,&_16c0_s_p3_0}, 25 {0,0,&_16c0_s_p4_0}, 26 {0,0,&_16c0_s_p5_0}, 27 {0,0,&_16c0_s_p6_0}, 28 {&_16c0_s_p7_0,&_16c0_s_p7_1}, 29 {&_16c0_s_p8_0,&_16c0_s_p8_1}, 30 {&_16c0_s_p9_0,&_16c0_s_p9_1,&_16c0_s_p9_2} 31 } 32 }; 33 static const static_bookblock _resbook_16s_1={ 34 { 35 {0}, 36 {0,0,&_16c1_s_p1_0}, 37 {0}, 38 {0,0,&_16c1_s_p3_0}, 39 {0,0,&_16c1_s_p4_0}, 40 {0,0,&_16c1_s_p5_0}, 41 {0,0,&_16c1_s_p6_0}, 42 {&_16c1_s_p7_0,&_16c1_s_p7_1}, 43 {&_16c1_s_p8_0,&_16c1_s_p8_1}, 44 {&_16c1_s_p9_0,&_16c1_s_p9_1,&_16c1_s_p9_2} 45 } 46 }; 47 static const static_bookblock _resbook_16s_2={ 48 { 49 {0}, 50 {0,0,&_16c2_s_p1_0}, 51 {0,0,&_16c2_s_p2_0}, 52 {0,0,&_16c2_s_p3_0}, 53 {0,0,&_16c2_s_p4_0}, 54 {&_16c2_s_p5_0,&_16c2_s_p5_1}, 55 {&_16c2_s_p6_0,&_16c2_s_p6_1}, 56 {&_16c2_s_p7_0,&_16c2_s_p7_1}, 57 {&_16c2_s_p8_0,&_16c2_s_p8_1}, 58 {&_16c2_s_p9_0,&_16c2_s_p9_1,&_16c2_s_p9_2} 59 } 60 }; 61 62 static const vorbis_residue_template _res_16s_0[]={ 63 {2,0,32, &_residue_44_mid, 64 &_huff_book__16c0_s_single,&_huff_book__16c0_s_single, 65 &_resbook_16s_0,&_resbook_16s_0}, 66 }; 67 static const vorbis_residue_template _res_16s_1[]={ 68 {2,0,32, &_residue_44_mid, 69 &_huff_book__16c1_s_short,&_huff_book__16c1_s_short, 70 &_resbook_16s_1,&_resbook_16s_1}, 71 72 {2,0,32, &_residue_44_mid, 73 &_huff_book__16c1_s_long,&_huff_book__16c1_s_long, 74 &_resbook_16s_1,&_resbook_16s_1} 75 }; 76 static const vorbis_residue_template _res_16s_2[]={ 77 {2,0,32, &_residue_44_high, 78 &_huff_book__16c2_s_short,&_huff_book__16c2_s_short, 79 &_resbook_16s_2,&_resbook_16s_2}, 80 81 {2,0,32, &_residue_44_high, 82 &_huff_book__16c2_s_long,&_huff_book__16c2_s_long, 83 &_resbook_16s_2,&_resbook_16s_2} 84 }; 85 86 static const vorbis_mapping_template _mapres_template_16_stereo[3]={ 87 { _map_nominal, _res_16s_0 }, /* 0 */ 88 { _map_nominal, _res_16s_1 }, /* 1 */ 89 { _map_nominal, _res_16s_2 }, /* 2 */ 90 }; 91 92 static const static_bookblock _resbook_16u_0={ 93 { 94 {0}, 95 {0,0,&_16u0__p1_0}, 96 {0,0,&_16u0__p2_0}, 97 {0,0,&_16u0__p3_0}, 98 {0,0,&_16u0__p4_0}, 99 {0,0,&_16u0__p5_0}, 100 {&_16u0__p6_0,&_16u0__p6_1}, 101 {&_16u0__p7_0,&_16u0__p7_1,&_16u0__p7_2} 102 } 103 }; 104 static const static_bookblock _resbook_16u_1={ 105 { 106 {0}, 107 {0,0,&_16u1__p1_0}, 108 {0,0,&_16u1__p2_0}, 109 {0,0,&_16u1__p3_0}, 110 {0,0,&_16u1__p4_0}, 111 {0,0,&_16u1__p5_0}, 112 {0,0,&_16u1__p6_0}, 113 {&_16u1__p7_0,&_16u1__p7_1}, 114 {&_16u1__p8_0,&_16u1__p8_1}, 115 {&_16u1__p9_0,&_16u1__p9_1,&_16u1__p9_2} 116 } 117 }; 118 static const static_bookblock _resbook_16u_2={ 119 { 120 {0}, 121 {0,0,&_16u2_p1_0}, 122 {0,0,&_16u2_p2_0}, 123 {0,0,&_16u2_p3_0}, 124 {0,0,&_16u2_p4_0}, 125 {&_16u2_p5_0,&_16u2_p5_1}, 126 {&_16u2_p6_0,&_16u2_p6_1}, 127 {&_16u2_p7_0,&_16u2_p7_1}, 128 {&_16u2_p8_0,&_16u2_p8_1}, 129 {&_16u2_p9_0,&_16u2_p9_1,&_16u2_p9_2} 130 } 131 }; 132 133 static const vorbis_residue_template _res_16u_0[]={ 134 {1,0,32, &_residue_44_low_un, 135 &_huff_book__16u0__single,&_huff_book__16u0__single, 136 &_resbook_16u_0,&_resbook_16u_0}, 137 }; 138 static const vorbis_residue_template _res_16u_1[]={ 139 {1,0,32, &_residue_44_mid_un, 140 &_huff_book__16u1__short,&_huff_book__16u1__short, 141 &_resbook_16u_1,&_resbook_16u_1}, 142 143 {1,0,32, &_residue_44_mid_un, 144 &_huff_book__16u1__long,&_huff_book__16u1__long, 145 &_resbook_16u_1,&_resbook_16u_1} 146 }; 147 static const vorbis_residue_template _res_16u_2[]={ 148 {1,0,32, &_residue_44_hi_un, 149 &_huff_book__16u2__short,&_huff_book__16u2__short, 150 &_resbook_16u_2,&_resbook_16u_2}, 151 152 {1,0,32, &_residue_44_hi_un, 153 &_huff_book__16u2__long,&_huff_book__16u2__long, 154 &_resbook_16u_2,&_resbook_16u_2} 155 }; 156 157 158 static const vorbis_mapping_template _mapres_template_16_uncoupled[3]={ 159 { _map_nominal_u, _res_16u_0 }, /* 0 */ 160 { _map_nominal_u, _res_16u_1 }, /* 1 */ 161 { _map_nominal_u, _res_16u_2 }, /* 2 */ 162 };