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-2007 * 9 * by the Xiph.Org Foundation http://www.xiph.org/ * 10 * * 11 ******************************************************************** 12 13 function: toplevel residue templates 8/11kHz 14 last mod: $Id: residue_8.h 16962 2010-03-11 07:30:34Z xiphmont $ 15 16 ********************************************************************/ 17 18 #include "vorbis/codec.h" 19 #include "backends.h" 20 21 /***** residue backends *********************************************/ 22 23 static const static_bookblock _resbook_8s_0={ 24 { 25 {0}, 26 {0,0,&_8c0_s_p1_0}, 27 {0}, 28 {0,0,&_8c0_s_p3_0}, 29 {0,0,&_8c0_s_p4_0}, 30 {0,0,&_8c0_s_p5_0}, 31 {0,0,&_8c0_s_p6_0}, 32 {&_8c0_s_p7_0,&_8c0_s_p7_1}, 33 {&_8c0_s_p8_0,&_8c0_s_p8_1}, 34 {&_8c0_s_p9_0,&_8c0_s_p9_1,&_8c0_s_p9_2} 35 } 36 }; 37 static const static_bookblock _resbook_8s_1={ 38 { 39 {0}, 40 {0,0,&_8c1_s_p1_0}, 41 {0}, 42 {0,0,&_8c1_s_p3_0}, 43 {0,0,&_8c1_s_p4_0}, 44 {0,0,&_8c1_s_p5_0}, 45 {0,0,&_8c1_s_p6_0}, 46 {&_8c1_s_p7_0,&_8c1_s_p7_1}, 47 {&_8c1_s_p8_0,&_8c1_s_p8_1}, 48 {&_8c1_s_p9_0,&_8c1_s_p9_1,&_8c1_s_p9_2} 49 } 50 }; 51 52 static const vorbis_residue_template _res_8s_0[]={ 53 {2,0,32, &_residue_44_mid, 54 &_huff_book__8c0_s_single,&_huff_book__8c0_s_single, 55 &_resbook_8s_0,&_resbook_8s_0}, 56 }; 57 static const vorbis_residue_template _res_8s_1[]={ 58 {2,0,32, &_residue_44_mid, 59 &_huff_book__8c1_s_single,&_huff_book__8c1_s_single, 60 &_resbook_8s_1,&_resbook_8s_1}, 61 }; 62 63 static const vorbis_mapping_template _mapres_template_8_stereo[2]={ 64 { _map_nominal, _res_8s_0 }, /* 0 */ 65 { _map_nominal, _res_8s_1 }, /* 1 */ 66 }; 67 68 static const static_bookblock _resbook_8u_0={ 69 { 70 {0}, 71 {0,0,&_8u0__p1_0}, 72 {0,0,&_8u0__p2_0}, 73 {0,0,&_8u0__p3_0}, 74 {0,0,&_8u0__p4_0}, 75 {0,0,&_8u0__p5_0}, 76 {&_8u0__p6_0,&_8u0__p6_1}, 77 {&_8u0__p7_0,&_8u0__p7_1,&_8u0__p7_2} 78 } 79 }; 80 static const static_bookblock _resbook_8u_1={ 81 { 82 {0}, 83 {0,0,&_8u1__p1_0}, 84 {0,0,&_8u1__p2_0}, 85 {0,0,&_8u1__p3_0}, 86 {0,0,&_8u1__p4_0}, 87 {0,0,&_8u1__p5_0}, 88 {0,0,&_8u1__p6_0}, 89 {&_8u1__p7_0,&_8u1__p7_1}, 90 {&_8u1__p8_0,&_8u1__p8_1}, 91 {&_8u1__p9_0,&_8u1__p9_1,&_8u1__p9_2} 92 } 93 }; 94 95 static const vorbis_residue_template _res_8u_0[]={ 96 {1,0,32, &_residue_44_low_un, 97 &_huff_book__8u0__single,&_huff_book__8u0__single, 98 &_resbook_8u_0,&_resbook_8u_0}, 99 }; 100 static const vorbis_residue_template _res_8u_1[]={ 101 {1,0,32, &_residue_44_mid_un, 102 &_huff_book__8u1__single,&_huff_book__8u1__single, 103 &_resbook_8u_1,&_resbook_8u_1}, 104 }; 105 106 static const vorbis_mapping_template _mapres_template_8_uncoupled[2]={ 107 { _map_nominal_u, _res_8u_0 }, /* 0 */ 108 { _map_nominal_u, _res_8u_1 }, /* 1 */ 109 }; 110