VoiceHalo.java
Ring.java
Audio.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package ro.victorrentea.halo; import javax.sound.sampled.*; /** Inelul care ascultă microfonul. */ public class VoiceHalo { private final float[] wave = new float[2048]; private double idleMix = 1.0; public void render(double t) { for (int i = 0; i < wave.length; i++) { double u = (double) i / wave.length; double r = radius + amp * abs(wave[i]); plot(cos(u * TAU) * r, sin(u * TAU) * r); } } // în tăcere amplitudinea e zero, deci rămâne cerc private double amplitude() { return live * (1 - idleMix); } }
1/1
apasă pe buton ca să pornești microfonul
v —