annotate src/libvorbis-1.3.3/lib/modes/floor_all.h @ 148:b4bfdf10c4b3

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