aboutsummaryrefslogtreecommitdiffstats
path: root/tests/com/jsyn/examples/CircuitTester.java
diff options
context:
space:
mode:
Diffstat (limited to 'tests/com/jsyn/examples/CircuitTester.java')
-rw-r--r--tests/com/jsyn/examples/CircuitTester.java113
1 files changed, 0 insertions, 113 deletions
diff --git a/tests/com/jsyn/examples/CircuitTester.java b/tests/com/jsyn/examples/CircuitTester.java
deleted file mode 100644
index 948e8a0..0000000
--- a/tests/com/jsyn/examples/CircuitTester.java
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * Copyright 2012 Phil Burk, Mobileer Inc
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.jsyn.examples;
-
-import java.awt.BorderLayout;
-
-import javax.swing.JApplet;
-
-import com.jsyn.JSyn;
-import com.jsyn.Synthesizer;
-import com.jsyn.instruments.DualOscillatorSynthVoice;
-import com.jsyn.instruments.SubtractiveSynthVoice;
-import com.jsyn.scope.AudioScope;
-import com.jsyn.swing.JAppletFrame;
-import com.jsyn.swing.SoundTweaker;
-import com.jsyn.unitgen.LineOut;
-import com.jsyn.unitgen.UnitSource;
-
-/**
- * Listen to a circuit while tweaking it knobs. Show output in a scope.
- *
- * @author Phil Burk (C) 2012 Mobileer Inc
- */
-public class CircuitTester extends JApplet {
- private static final long serialVersionUID = -2704222221111608377L;
- private Synthesizer synth;
- private LineOut lineOut;
- private SoundTweaker tweaker;
- private UnitSource unitSource;
- private AudioScope scope;
-
- @Override
- public void init() {
- setLayout(new BorderLayout());
-
- synth = JSyn.createSynthesizer();
- synth.add(lineOut = new LineOut());
-
- unitSource = createUnitSource();
- synth.add(unitSource.getUnitGenerator());
-
- // Connect the source to both left and right speakers.
- unitSource.getOutput().connect(0, lineOut.input, 0);
- unitSource.getOutput().connect(0, lineOut.input, 1);
-
- tweaker = new SoundTweaker(synth, unitSource.getUnitGenerator().getClass().getName(),
- unitSource);
- add(tweaker, BorderLayout.CENTER);
-
- // Use a scope to see the output.
- scope = new AudioScope(synth);
- scope.addProbe(unitSource.getOutput());
- scope.setTriggerMode(AudioScope.TriggerMode.AUTO);
- scope.getView().setControlsVisible(false);
- add(BorderLayout.SOUTH, scope.getView());
-
- validate();
- }
-
- /**
- * Override this to test your own circuits.
- *
- * @return
- */
- public UnitSource createUnitSource() {
- //return new SampleHoldNoteBlaster();
- //return new com.syntona.exported.FMVoice();
- return new DualOscillatorSynthVoice();
- //return new WindCircuit();
- //return new WhiteNoise();
- //return new BrownNoise();
- }
-
- @Override
- public void start() {
- // Start synthesizer using default stereo output at 44100 Hz.
- synth.start();
- // Start the LineOut. It will pull data from the other units.
- lineOut.start();
-
- scope.start();
- }
-
- @Override
- public void stop() {
- scope.stop();
- synth.stop();
- }
-
- /* Can be run as either an application or as an applet. */
- public static void main(String args[]) {
- CircuitTester applet = new CircuitTester();
- JAppletFrame frame = new JAppletFrame("JSyn Circuit Tester", applet);
- frame.setSize(600, 600);
- frame.setVisible(true);
- frame.test();
- }
-
-}