dbf-halloween2015

annotate libs/vorbis/modes/floor_all.h @ 1:c3f5c32cb210

barfed all the libraries in the source tree to make porting easier
author John Tsiombikas <nuclear@member.fsf.org>
date Sun, 01 Nov 2015 00:36:56 +0200
parents
children
rev   line source
nuclear@1 1 /********************************************************************
nuclear@1 2 * *
nuclear@1 3 * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
nuclear@1 4 * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
nuclear@1 5 * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
nuclear@1 6 * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
nuclear@1 7 * *
nuclear@1 8 * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009 *
nuclear@1 9 * by the Xiph.Org Foundation http://www.xiph.org/ *
nuclear@1 10 * *
nuclear@1 11 ********************************************************************
nuclear@1 12
nuclear@1 13 function: key floor settings
nuclear@1 14 last mod: $Id: floor_all.h 17050 2010-03-26 01:34:42Z xiphmont $
nuclear@1 15
nuclear@1 16 ********************************************************************/
nuclear@1 17
nuclear@1 18 #include "vorbis/codec.h"
nuclear@1 19 #include "backends.h"
nuclear@1 20 #include "books/floor/floor_books.h"
nuclear@1 21
nuclear@1 22 static const static_codebook*const _floor_128x4_books[]={
nuclear@1 23 &_huff_book_line_128x4_class0,
nuclear@1 24 &_huff_book_line_128x4_0sub0,
nuclear@1 25 &_huff_book_line_128x4_0sub1,
nuclear@1 26 &_huff_book_line_128x4_0sub2,
nuclear@1 27 &_huff_book_line_128x4_0sub3,
nuclear@1 28 };
nuclear@1 29 static const static_codebook*const _floor_256x4_books[]={
nuclear@1 30 &_huff_book_line_256x4_class0,
nuclear@1 31 &_huff_book_line_256x4_0sub0,
nuclear@1 32 &_huff_book_line_256x4_0sub1,
nuclear@1 33 &_huff_book_line_256x4_0sub2,
nuclear@1 34 &_huff_book_line_256x4_0sub3,
nuclear@1 35 };
nuclear@1 36 static const static_codebook*const _floor_128x7_books[]={
nuclear@1 37 &_huff_book_line_128x7_class0,
nuclear@1 38 &_huff_book_line_128x7_class1,
nuclear@1 39
nuclear@1 40 &_huff_book_line_128x7_0sub1,
nuclear@1 41 &_huff_book_line_128x7_0sub2,
nuclear@1 42 &_huff_book_line_128x7_0sub3,
nuclear@1 43 &_huff_book_line_128x7_1sub1,
nuclear@1 44 &_huff_book_line_128x7_1sub2,
nuclear@1 45 &_huff_book_line_128x7_1sub3,
nuclear@1 46 };
nuclear@1 47 static const static_codebook*const _floor_256x7_books[]={
nuclear@1 48 &_huff_book_line_256x7_class0,
nuclear@1 49 &_huff_book_line_256x7_class1,
nuclear@1 50
nuclear@1 51 &_huff_book_line_256x7_0sub1,
nuclear@1 52 &_huff_book_line_256x7_0sub2,
nuclear@1 53 &_huff_book_line_256x7_0sub3,
nuclear@1 54 &_huff_book_line_256x7_1sub1,
nuclear@1 55 &_huff_book_line_256x7_1sub2,
nuclear@1 56 &_huff_book_line_256x7_1sub3,
nuclear@1 57 };
nuclear@1 58 static const static_codebook*const _floor_128x11_books[]={
nuclear@1 59 &_huff_book_line_128x11_class1,
nuclear@1 60 &_huff_book_line_128x11_class2,
nuclear@1 61 &_huff_book_line_128x11_class3,
nuclear@1 62
nuclear@1 63 &_huff_book_line_128x11_0sub0,
nuclear@1 64 &_huff_book_line_128x11_1sub0,
nuclear@1 65 &_huff_book_line_128x11_1sub1,
nuclear@1 66 &_huff_book_line_128x11_2sub1,
nuclear@1 67 &_huff_book_line_128x11_2sub2,
nuclear@1 68 &_huff_book_line_128x11_2sub3,
nuclear@1 69 &_huff_book_line_128x11_3sub1,
nuclear@1 70 &_huff_book_line_128x11_3sub2,
nuclear@1 71 &_huff_book_line_128x11_3sub3,
nuclear@1 72 };
nuclear@1 73 static const static_codebook*const _floor_128x17_books[]={
nuclear@1 74 &_huff_book_line_128x17_class1,
nuclear@1 75 &_huff_book_line_128x17_class2,
nuclear@1 76 &_huff_book_line_128x17_class3,
nuclear@1 77
nuclear@1 78 &_huff_book_line_128x17_0sub0,
nuclear@1 79 &_huff_book_line_128x17_1sub0,
nuclear@1 80 &_huff_book_line_128x17_1sub1,
nuclear@1 81 &_huff_book_line_128x17_2sub1,
nuclear@1 82 &_huff_book_line_128x17_2sub2,
nuclear@1 83 &_huff_book_line_128x17_2sub3,
nuclear@1 84 &_huff_book_line_128x17_3sub1,
nuclear@1 85 &_huff_book_line_128x17_3sub2,
nuclear@1 86 &_huff_book_line_128x17_3sub3,
nuclear@1 87 };
nuclear@1 88 static const static_codebook*const _floor_256x4low_books[]={
nuclear@1 89 &_huff_book_line_256x4low_class0,
nuclear@1 90 &_huff_book_line_256x4low_0sub0,
nuclear@1 91 &_huff_book_line_256x4low_0sub1,
nuclear@1 92 &_huff_book_line_256x4low_0sub2,
nuclear@1 93 &_huff_book_line_256x4low_0sub3,
nuclear@1 94 };
nuclear@1 95 static const static_codebook*const _floor_1024x27_books[]={
nuclear@1 96 &_huff_book_line_1024x27_class1,
nuclear@1 97 &_huff_book_line_1024x27_class2,
nuclear@1 98 &_huff_book_line_1024x27_class3,
nuclear@1 99 &_huff_book_line_1024x27_class4,
nuclear@1 100
nuclear@1 101 &_huff_book_line_1024x27_0sub0,
nuclear@1 102 &_huff_book_line_1024x27_1sub0,
nuclear@1 103 &_huff_book_line_1024x27_1sub1,
nuclear@1 104 &_huff_book_line_1024x27_2sub0,
nuclear@1 105 &_huff_book_line_1024x27_2sub1,
nuclear@1 106 &_huff_book_line_1024x27_3sub1,
nuclear@1 107 &_huff_book_line_1024x27_3sub2,
nuclear@1 108 &_huff_book_line_1024x27_3sub3,
nuclear@1 109 &_huff_book_line_1024x27_4sub1,
nuclear@1 110 &_huff_book_line_1024x27_4sub2,
nuclear@1 111 &_huff_book_line_1024x27_4sub3,
nuclear@1 112 };
nuclear@1 113 static const static_codebook*const _floor_2048x27_books[]={
nuclear@1 114 &_huff_book_line_2048x27_class1,
nuclear@1 115 &_huff_book_line_2048x27_class2,
nuclear@1 116 &_huff_book_line_2048x27_class3,
nuclear@1 117 &_huff_book_line_2048x27_class4,
nuclear@1 118
nuclear@1 119 &_huff_book_line_2048x27_0sub0,
nuclear@1 120 &_huff_book_line_2048x27_1sub0,
nuclear@1 121 &_huff_book_line_2048x27_1sub1,
nuclear@1 122 &_huff_book_line_2048x27_2sub0,
nuclear@1 123 &_huff_book_line_2048x27_2sub1,
nuclear@1 124 &_huff_book_line_2048x27_3sub1,
nuclear@1 125 &_huff_book_line_2048x27_3sub2,
nuclear@1 126 &_huff_book_line_2048x27_3sub3,
nuclear@1 127 &_huff_book_line_2048x27_4sub1,
nuclear@1 128 &_huff_book_line_2048x27_4sub2,
nuclear@1 129 &_huff_book_line_2048x27_4sub3,
nuclear@1 130 };
nuclear@1 131
nuclear@1 132 static const static_codebook*const _floor_512x17_books[]={
nuclear@1 133 &_huff_book_line_512x17_class1,
nuclear@1 134 &_huff_book_line_512x17_class2,
nuclear@1 135 &_huff_book_line_512x17_class3,
nuclear@1 136
nuclear@1 137 &_huff_book_line_512x17_0sub0,
nuclear@1 138 &_huff_book_line_512x17_1sub0,
nuclear@1 139 &_huff_book_line_512x17_1sub1,
nuclear@1 140 &_huff_book_line_512x17_2sub1,
nuclear@1 141 &_huff_book_line_512x17_2sub2,
nuclear@1 142 &_huff_book_line_512x17_2sub3,
nuclear@1 143 &_huff_book_line_512x17_3sub1,
nuclear@1 144 &_huff_book_line_512x17_3sub2,
nuclear@1 145 &_huff_book_line_512x17_3sub3,
nuclear@1 146 };
nuclear@1 147
nuclear@1 148 static const static_codebook*const _floor_Xx0_books[]={
nuclear@1 149 0
nuclear@1 150 };
nuclear@1 151
nuclear@1 152 static const static_codebook*const *const _floor_books[11]={
nuclear@1 153 _floor_128x4_books,
nuclear@1 154 _floor_256x4_books,
nuclear@1 155 _floor_128x7_books,
nuclear@1 156 _floor_256x7_books,
nuclear@1 157 _floor_128x11_books,
nuclear@1 158 _floor_128x17_books,
nuclear@1 159 _floor_256x4low_books,
nuclear@1 160 _floor_1024x27_books,
nuclear@1 161 _floor_2048x27_books,
nuclear@1 162 _floor_512x17_books,
nuclear@1 163 _floor_Xx0_books,
nuclear@1 164 };
nuclear@1 165
nuclear@1 166 static const vorbis_info_floor1 _floor[11]={
nuclear@1 167 /* 0: 128 x 4 */
nuclear@1 168 {
nuclear@1 169 1,{0},{4},{2},{0},
nuclear@1 170 {{1,2,3,4}},
nuclear@1 171 4,{0,128, 33,8,16,70},
nuclear@1 172
nuclear@1 173 60,30,500, 1.,18., 128
nuclear@1 174 },
nuclear@1 175 /* 1: 256 x 4 */
nuclear@1 176 {
nuclear@1 177 1,{0},{4},{2},{0},
nuclear@1 178 {{1,2,3,4}},
nuclear@1 179 4,{0,256, 66,16,32,140},
nuclear@1 180
nuclear@1 181 60,30,500, 1.,18., 256
nuclear@1 182 },
nuclear@1 183 /* 2: 128 x 7 */
nuclear@1 184 {
nuclear@1 185 2,{0,1},{3,4},{2,2},{0,1},
nuclear@1 186 {{-1,2,3,4},{-1,5,6,7}},
nuclear@1 187 4,{0,128, 14,4,58, 2,8,28,90},
nuclear@1 188
nuclear@1 189 60,30,500, 1.,18., 128
nuclear@1 190 },
nuclear@1 191 /* 3: 256 x 7 */
nuclear@1 192 {
nuclear@1 193 2,{0,1},{3,4},{2,2},{0,1},
nuclear@1 194 {{-1,2,3,4},{-1,5,6,7}},
nuclear@1 195 4,{0,256, 28,8,116, 4,16,56,180},
nuclear@1 196
nuclear@1 197 60,30,500, 1.,18., 256
nuclear@1 198 },
nuclear@1 199 /* 4: 128 x 11 */
nuclear@1 200 {
nuclear@1 201 4,{0,1,2,3},{2,3,3,3},{0,1,2,2},{-1,0,1,2},
nuclear@1 202 {{3},{4,5},{-1,6,7,8},{-1,9,10,11}},
nuclear@1 203
nuclear@1 204 2,{0,128, 8,33, 4,16,70, 2,6,12, 23,46,90},
nuclear@1 205
nuclear@1 206 60,30,500, 1,18., 128
nuclear@1 207 },
nuclear@1 208 /* 5: 128 x 17 */
nuclear@1 209 {
nuclear@1 210 6,{0,1,1,2,3,3},{2,3,3,3},{0,1,2,2},{-1,0,1,2},
nuclear@1 211 {{3},{4,5},{-1,6,7,8},{-1,9,10,11}},
nuclear@1 212 2,{0,128, 12,46, 4,8,16, 23,33,70, 2,6,10, 14,19,28, 39,58,90},
nuclear@1 213
nuclear@1 214 60,30,500, 1,18., 128
nuclear@1 215 },
nuclear@1 216 /* 6: 256 x 4 (low bitrate version) */
nuclear@1 217 {
nuclear@1 218 1,{0},{4},{2},{0},
nuclear@1 219 {{1,2,3,4}},
nuclear@1 220 4,{0,256, 66,16,32,140},
nuclear@1 221
nuclear@1 222 60,30,500, 1.,18., 256
nuclear@1 223 },
nuclear@1 224 /* 7: 1024 x 27 */
nuclear@1 225 {
nuclear@1 226 8,{0,1,2,2,3,3,4,4},{3,4,3,4,3},{0,1,1,2,2},{-1,0,1,2,3},
nuclear@1 227 {{4},{5,6},{7,8},{-1,9,10,11},{-1,12,13,14}},
nuclear@1 228 2,{0,1024, 93,23,372, 6,46,186,750, 14,33,65, 130,260,556,
nuclear@1 229 3,10,18,28, 39,55,79,111, 158,220,312, 464,650,850},
nuclear@1 230
nuclear@1 231 60,30,500, 3,18., 1024
nuclear@1 232 },
nuclear@1 233 /* 8: 2048 x 27 */
nuclear@1 234 {
nuclear@1 235 8,{0,1,2,2,3,3,4,4},{3,4,3,4,3},{0,1,1,2,2},{-1,0,1,2,3},
nuclear@1 236 {{4},{5,6},{7,8},{-1,9,10,11},{-1,12,13,14}},
nuclear@1 237 2,{0,2048, 186,46,744, 12,92,372,1500, 28,66,130, 260,520,1112,
nuclear@1 238 6,20,36,56, 78,110,158,222, 316,440,624, 928,1300,1700},
nuclear@1 239
nuclear@1 240 60,30,500, 3,18., 2048
nuclear@1 241 },
nuclear@1 242 /* 9: 512 x 17 */
nuclear@1 243 {
nuclear@1 244 6,{0,1,1,2,3,3},{2,3,3,3},{0,1,2,2},{-1,0,1,2},
nuclear@1 245 {{3},{4,5},{-1,6,7,8},{-1,9,10,11}},
nuclear@1 246 2,{0,512, 46,186, 16,33,65, 93,130,278,
nuclear@1 247 7,23,39, 55,79,110, 156,232,360},
nuclear@1 248
nuclear@1 249 60,30,500, 1,18., 512
nuclear@1 250 },
nuclear@1 251
nuclear@1 252 /* 10: X x 0 (LFE floor; edge posts only) */
nuclear@1 253 {
nuclear@1 254 0,{0}, {0},{0},{-1},
nuclear@1 255 {{-1}},
nuclear@1 256 2,{0,12},
nuclear@1 257 60,30,500, 1.,18., 10
nuclear@1 258 },
nuclear@1 259
nuclear@1 260 };