summaryrefslogtreecommitdiff
path: root/songdbj/de/jarnbjo/vorbis/Floor.java
diff options
context:
space:
mode:
authorMichiel Van Der Kolk <not.valid@email.address>2005-07-11 15:42:37 +0000
committerMichiel Van Der Kolk <not.valid@email.address>2005-07-11 15:42:37 +0000
commit9fee0ec4ca0c5b7a334cc29dbb58e76c7a4c736e (patch)
tree4c304cd4151020bd5494d279ee68a105ae3a5a3a /songdbj/de/jarnbjo/vorbis/Floor.java
parentdfa8ecbe609ca8ea194d08560a44fb9a92e94b4b (diff)
downloadrockbox-9fee0ec4ca0c5b7a334cc29dbb58e76c7a4c736e.tar.gz
rockbox-9fee0ec4ca0c5b7a334cc29dbb58e76c7a4c736e.zip
Songdb java version, source. only 1.5 compatible
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7101 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'songdbj/de/jarnbjo/vorbis/Floor.java')
-rw-r--r--songdbj/de/jarnbjo/vorbis/Floor.java124
1 files changed, 124 insertions, 0 deletions
diff --git a/songdbj/de/jarnbjo/vorbis/Floor.java b/songdbj/de/jarnbjo/vorbis/Floor.java
new file mode 100644
index 0000000000..5be2798dfb
--- /dev/null
+++ b/songdbj/de/jarnbjo/vorbis/Floor.java
@@ -0,0 +1,124 @@
1/*
2 * $ProjectName$
3 * $ProjectRevision$
4 * -----------------------------------------------------------
5 * $Id$
6 * -----------------------------------------------------------
7 *
8 * $Author$
9 *
10 * Description:
11 *
12 * Copyright 2002-2003 Tor-Einar Jarnbjo
13 * -----------------------------------------------------------
14 *
15 * Change History
16 * -----------------------------------------------------------
17 * $Log$
18 * Revision 1.1 2005/07/11 15:42:36 hcl
19 * Songdb java version, source. only 1.5 compatible
20 *
21 * Revision 1.1.1.1 2004/04/04 22:09:12 shred
22 * First Import
23 *
24 * Revision 1.3 2003/04/10 19:49:04 jarnbjo
25 * no message
26 *
27 * Revision 1.2 2003/03/16 01:11:12 jarnbjo
28 * no message
29 *
30 *
31 */
32
33package de.jarnbjo.vorbis;
34
35import java.io.IOException;
36
37import de.jarnbjo.util.io.BitInputStream;
38
39
40public abstract class Floor {
41
42 public final static float[] DB_STATIC_TABLE={
43 1.0649863e-07f, 1.1341951e-07f, 1.2079015e-07f, 1.2863978e-07f,
44 1.3699951e-07f, 1.4590251e-07f, 1.5538408e-07f, 1.6548181e-07f,
45 1.7623575e-07f, 1.8768855e-07f, 1.9988561e-07f, 2.128753e-07f,
46 2.2670913e-07f, 2.4144197e-07f, 2.5713223e-07f, 2.7384213e-07f,
47 2.9163793e-07f, 3.1059021e-07f, 3.3077411e-07f, 3.5226968e-07f,
48 3.7516214e-07f, 3.9954229e-07f, 4.2550680e-07f, 4.5315863e-07f,
49 4.8260743e-07f, 5.1396998e-07f, 5.4737065e-07f, 5.8294187e-07f,
50 6.2082472e-07f, 6.6116941e-07f, 7.0413592e-07f, 7.4989464e-07f,
51 7.9862701e-07f, 8.5052630e-07f, 9.0579828e-07f, 9.6466216e-07f,
52 1.0273513e-06f, 1.0941144e-06f, 1.1652161e-06f, 1.2409384e-06f,
53 1.3215816e-06f, 1.4074654e-06f, 1.4989305e-06f, 1.5963394e-06f,
54 1.7000785e-06f, 1.8105592e-06f, 1.9282195e-06f, 2.0535261e-06f,
55 2.1869758e-06f, 2.3290978e-06f, 2.4804557e-06f, 2.6416497e-06f,
56 2.8133190e-06f, 2.9961443e-06f, 3.1908506e-06f, 3.3982101e-06f,
57 3.6190449e-06f, 3.8542308e-06f, 4.1047004e-06f, 4.3714470e-06f,
58 4.6555282e-06f, 4.9580707e-06f, 5.2802740e-06f, 5.6234160e-06f,
59 5.9888572e-06f, 6.3780469e-06f, 6.7925283e-06f, 7.2339451e-06f,
60 7.7040476e-06f, 8.2047000e-06f, 8.7378876e-06f, 9.3057248e-06f,
61 9.9104632e-06f, 1.0554501e-05f, 1.1240392e-05f, 1.1970856e-05f,
62 1.2748789e-05f, 1.3577278e-05f, 1.4459606e-05f, 1.5399272e-05f,
63 1.6400004e-05f, 1.7465768e-05f, 1.8600792e-05f, 1.9809576e-05f,
64 2.1096914e-05f, 2.2467911e-05f, 2.3928002e-05f, 2.5482978e-05f,
65 2.7139006e-05f, 2.8902651e-05f, 3.0780908e-05f, 3.2781225e-05f,
66 3.4911534e-05f, 3.7180282e-05f, 3.9596466e-05f, 4.2169667e-05f,
67 4.4910090e-05f, 4.7828601e-05f, 5.0936773e-05f, 5.4246931e-05f,
68 5.7772202e-05f, 6.1526565e-05f, 6.5524908e-05f, 6.9783085e-05f,
69 7.4317983e-05f, 7.9147585e-05f, 8.4291040e-05f, 8.9768747e-05f,
70 9.5602426e-05f, 0.00010181521f, 0.00010843174f, 0.00011547824f,
71 0.00012298267f, 0.00013097477f, 0.00013948625f, 0.00014855085f,
72 0.00015820453f, 0.00016848555f, 0.00017943469f, 0.00019109536f,
73 0.00020351382f, 0.00021673929f, 0.00023082423f, 0.00024582449f,
74 0.00026179955f, 0.00027881276f, 0.00029693158f, 0.00031622787f,
75 0.00033677814f, 0.00035866388f, 0.00038197188f, 0.00040679456f,
76 0.00043323036f, 0.00046138411f, 0.00049136745f, 0.00052329927f,
77 0.00055730621f, 0.00059352311f, 0.00063209358f, 0.00067317058f,
78 0.00071691700f, 0.00076350630f, 0.00081312324f, 0.00086596457f,
79 0.00092223983f, 0.00098217216f, 0.0010459992f, 0.0011139742f,
80 0.0011863665f, 0.0012634633f, 0.0013455702f, 0.0014330129f,
81 0.0015261382f, 0.0016253153f, 0.0017309374f, 0.0018434235f,
82 0.0019632195f, 0.0020908006f, 0.0022266726f, 0.0023713743f,
83 0.0025254795f, 0.0026895994f, 0.0028643847f, 0.0030505286f,
84 0.0032487691f, 0.0034598925f, 0.0036847358f, 0.0039241906f,
85 0.0041792066f, 0.0044507950f, 0.0047400328f, 0.0050480668f,
86 0.0053761186f, 0.0057254891f, 0.0060975636f, 0.0064938176f,
87 0.0069158225f, 0.0073652516f, 0.0078438871f, 0.0083536271f,
88 0.0088964928f, 0.009474637f, 0.010090352f, 0.010746080f,
89 0.011444421f, 0.012188144f, 0.012980198f, 0.013823725f,
90 0.014722068f, 0.015678791f, 0.016697687f, 0.017782797f,
91 0.018938423f, 0.020169149f, 0.021479854f, 0.022875735f,
92 0.024362330f, 0.025945531f, 0.027631618f, 0.029427276f,
93 0.031339626f, 0.033376252f, 0.035545228f, 0.037855157f,
94 0.040315199f, 0.042935108f, 0.045725273f, 0.048696758f,
95 0.051861348f, 0.055231591f, 0.058820850f, 0.062643361f,
96 0.066714279f, 0.071049749f, 0.075666962f, 0.080584227f,
97 0.085821044f, 0.091398179f, 0.097337747f, 0.10366330f,
98 0.11039993f, 0.11757434f, 0.12521498f, 0.13335215f,
99 0.14201813f, 0.15124727f, 0.16107617f, 0.17154380f,
100 0.18269168f, 0.19456402f, 0.20720788f, 0.22067342f,
101 0.23501402f, 0.25028656f, 0.26655159f, 0.28387361f,
102 0.30232132f, 0.32196786f, 0.34289114f, 0.36517414f,
103 0.38890521f, 0.41417847f, 0.44109412f, 0.46975890f,
104 0.50028648f, 0.53279791f, 0.56742212f, 0.60429640f,
105 0.64356699f, 0.68538959f, 0.72993007f, 0.77736504f,
106 0.82788260f, 0.88168307f, 0.9389798f, 1.0f};
107
108 static Floor createInstance(BitInputStream source, SetupHeader header) throws VorbisFormatException, IOException {
109
110 int type=source.getInt(16);
111 switch(type) {
112 case 0:
113 return new Floor0(source, header);
114 case 1:
115 return new Floor1(source, header);
116 default:
117 throw new VorbisFormatException("Floor type "+type+" is not supported.");
118 }
119 }
120
121 abstract int getType();
122 abstract Floor decodeFloor(VorbisStream vorbis, BitInputStream source) throws VorbisFormatException, IOException;
123 abstract void computeFloor(float[] vector);
124} \ No newline at end of file