File: freej_equalizer.js

package info (click to toggle)
freej 0.10git20080824-1
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 13,504 kB
  • ctags: 19,398
  • sloc: ansic: 135,255; cpp: 32,550; sh: 9,318; perl: 2,932; asm: 2,355; yacc: 1,178; makefile: 1,119; java: 136; lex: 94; python: 16
file content (54 lines) | stat: -rw-r--r-- 1,207 bytes parent folder | download | duplicates (2)
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
// simple audio test reading out harmonics
// make sure jack is running and have a look at the connections
// also check the values (samplesize and samplerate) to match your conf
// -jrml

//set_resolution(W,H);

audio = new AudioJack("xine/out_1", 2048, 44100);

img = new ImageLayer();
img.open("../doc/ipernav.png");
img.activate(true);
img.set_fps();
img.start();
add_layer(img);
vtg = new Filter("vertigo");
img.add_filter(vtg);

kbd = new KeyboardController();
register_controller(kbd);
kbd.released_q = function() { quit(); }
kbd.released_r = function() {
    if(reset("freej_equalizer.js")) {
        rem_controller(this);
        echo("reset ok");
    }
    return true;
}

bang = new TriggerController();
bang.frame = function() {

    audio.fft();

    flash = 0;
    phase = (((audio.get_harmonic(8)
           + audio.get_harmonic(1) )
	     / 2 )
	      * 3 ) / 128;
    if(phase<1) phase = 0;
    zoom = (((audio.get_harmonic(8)
           + audio.get_harmonic(16) )
	     / 2 )
	      * 3 ) / 64;
    zoom = (audio.get_harmonic(16)*3)/64;
    if(zoom<1) zoom = 1;
    vtg.set_parameter("PhaseIncrement", phase);
    vtg.set_parameter("ZoomRate", zoom);
}


register_controller(bang);

gc();