File: TestFaustEngine.java

package info (click to toggle)
faust 2.81.10%2Bds-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 431,496 kB
  • sloc: cpp: 283,941; ansic: 116,215; javascript: 18,529; sh: 14,356; vhdl: 14,052; java: 5,900; python: 5,091; objc: 3,852; makefile: 2,725; cs: 1,672; lisp: 1,146; ruby: 954; yacc: 586; xml: 471; lex: 247; awk: 111; tcl: 26
file content (125 lines) | stat: -rw-r--r-- 4,633 bytes parent folder | download | duplicates (5)
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
import java.io.*;
import com.grame.faust.FaustEngine;
import com.grame.faust.dsp;

class TestFaustEngine
{
	static {
		try {
			String property = System.getProperty("java.library.path");
			System.out.println("java.library.path = " + property);
            System.loadLibrary("FaustEngine"); 
		} catch (UnsatisfiedLinkError e) {
            System.err.println("Native code library failed to load.\n" + e);
            System.exit(1);
		}
    }

    public static void main(String args[]) throws InterruptedException {
		System.out.println("Start Faust Engine");
        
        // noise generator
        String prog1 = "random = +(12345)~*(1103515245); noise = random/2147483647.0; process = noise * vslider(\"Volume\", 0.5, 0, 1, 0.01)<:_,_;";

   
        //dsp DSP1 = FaustEngine.create1("noise", prog1);
       
        String argv = "-vec " + "-lv " + "1 " + "-I " + "C:\\Users\\Sarah\\faudiostream-code\\architecture";
        System.out.println(argv);
        dsp DSP1 = FaustEngine.create2Dsp("noise", prog1, argv, "", 3);
        
        if (DSP1 == null) {
            System.out.print(FaustEngine.getLastError());
            return;
        }
        
        System.out.println(FaustEngine.getJSONDsp(DSP1));
          
        FaustEngine.init1Dsp(DSP1, "Test");
        FaustEngine.startDsp(DSP1);
        
        System.out.println("DSP1 inputs " + FaustEngine.getNumInputsDsp(DSP1));
        System.out.println("DSP1 outputs " + FaustEngine.getNumOutputsDsp(DSP1));
        
        System.out.println("getParamsCount : " + FaustEngine.getParamsCountDsp(DSP1));
     
        //String prog2  = "import(\"music.lib\"); db2linear1(x) = pow(10.0, x/20.0); smooth(c) = *(1-c) : +~*(c); vol = hslider(\"volume [unit:dB]\", 0, -96, 0, 0.1) : db2linear : smooth(0.999); freq = hslider(\"freq [unit:Hz]\", 1000, 20, 24000, 1); process = vgroup(\"Oscillator\", osc(freq) * vol);";
        
        //prog2 = prog1;
         
        String prog2 = "process = _,_;";

        // oscillator
        //dsp DSP2 = FaustEngine.create1("osc", prog2);

        System.out.println(argv);
        dsp DSP2 = FaustEngine.create2Dsp("osc", prog2, argv, "", 3);

System.out.println(DSP2);
        
        //System.out.println(FaustEngine.getJSON(DSP2));
          
        FaustEngine.init1Dsp(DSP2, "Test2");
        FaustEngine.startDsp(DSP2);
        
        System.out.println("DSP2 inputs " + FaustEngine.getNumInputsDsp(DSP2));
        System.out.println("DSP2 outputs " + FaustEngine.getNumOutputsDsp(DSP2));
        
       // System.out.println("getParamsCount : " + FaustEngine.getParamsCount(DSP2));
       
        System.out.println("getNumPhysicalInputs " + FaustEngine.getNumInputsDsp(null));
        System.out.println("getNumPhysicalOutputs " + FaustEngine.getNumOutputsDsp(null));
        
        FaustEngine.connectDsp(DSP1, null, 0, 0);
        FaustEngine.connectDsp(DSP1, null, 1, 1);
        
        FaustEngine.connectDsp(DSP1, DSP2, 0, 0);
        FaustEngine.connectDsp(DSP1, DSP2, 1, 1);
        
        FaustEngine.connectDsp(DSP2, null, 0, 0);
        FaustEngine.connectDsp(DSP2, null, 1, 1);
        
        FaustEngine.connectDsp(null, DSP2, 0, 0);
        FaustEngine.connectDsp(null, DSP2, 1, 1);
        
	Thread.sleep(1000);
        /////
        
        System.out.println(FaustEngine.isConnectedDsp(DSP1, null, 0, 0));
        System.out.println(FaustEngine.isConnectedDsp(DSP1, null, 1, 1));
        
        System.out.println(FaustEngine.isConnectedDsp(DSP1, DSP2, 0, 0));
        System.out.println(FaustEngine.isConnectedDsp(DSP1, DSP2, 1, 1));
        
        System.out.println(FaustEngine.isConnectedDsp(DSP2, null, 0, 0));
        System.out.println(FaustEngine.isConnectedDsp(DSP2, null, 1, 1));
        
        System.out.println(FaustEngine.isConnectedDsp(null, DSP2, 0, 0));
        System.out.println(FaustEngine.isConnectedDsp(null, DSP2, 1, 1)); 
        
        
        /////
        
        /*
        FaustEngine.disconnectDsp(DSP1, null, 0, 0);
        FaustEngine.disconnectDsp(DSP1, null, 1, 1);
        
        FaustEngine.disconnectDsp(DSP1, DSP2, 0, 0);
        FaustEngine.disconnectDsp(DSP1, DSP2, 1, 1);
        
        FaustEngine.disconnectDsp(DSP2, null, 0, 0);
        FaustEngine.disconnectDsp(DSP2, null, 1, 1);
        
        FaustEngine.disconnectDsp(null, DSP2, 0, 0);
        FaustEngine.disconnectDsp(null, DSP2, 1, 1);
        */
    
        Thread.sleep(1000*100);
        
        FaustEngine.stopDsp(DSP1);
        FaustEngine.stopDsp(DSP2);
        
        FaustEngine.destroyDsp(DSP1);
        FaustEngine.destroyDsp(DSP2);
    }
}