summaryrefslogtreecommitdiffstats
path: root/src/resources/audio
diff options
context:
space:
mode:
authorkcr <kcr@28c7f869-5b4e-e670-f602-82bfaf57f300>2006-02-01 01:33:24 +0000
committerkcr <kcr@28c7f869-5b4e-e670-f602-82bfaf57f300>2006-02-01 01:33:24 +0000
commit39283191507259cb4dccba3441cdf16025179829 (patch)
tree29ad229325ab151a056d06fbe4c6f1fcd7b292d7 /src/resources/audio
parent3d596b24b72677fbf264a22f3c0ff44aa9bb2baf (diff)
Issue 206 : Example program cleanup
Item 4) Reorganized directory structure to make the examples a single project rather than a collection of independent apps. . All example programs moved under src/classes, and all are now in a subpackage of org.jdesktop.j3d.examples. . All resource files (geometry, images, audio) moved under src/resources . ant script now exists only at top level . Created netbeans project file for NetBeans IDE
Diffstat (limited to 'src/resources/audio')
-rw-r--r--src/resources/audio/hello_universe.aubin0 -> 10743 bytes
-rw-r--r--src/resources/audio/roar.aubin0 -> 18935 bytes
-rw-r--r--src/resources/audio/techno_machine.aubin0 -> 49347 bytes
3 files changed, 0 insertions, 0 deletions
diff --git a/src/resources/audio/hello_universe.au b/src/resources/audio/hello_universe.au
new file mode 100644
index 0000000..08d7456
--- /dev/null
+++ b/src/resources/audio/hello_universe.au
Binary files differ
diff --git a/src/resources/audio/roar.au b/src/resources/audio/roar.au
new file mode 100644
index 0000000..202b628
--- /dev/null
+++ b/src/resources/audio/roar.au
Binary files differ
diff --git a/src/resources/audio/techno_machine.au b/src/resources/audio/techno_machine.au
new file mode 100644
index 0000000..12e47ea
--- /dev/null
+++ b/src/resources/audio/techno_machine.au
Binary files differ
nd binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * - Redistribution of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * - Redistribution in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * Neither the name of Sun Microsystems, Inc. or the names of * contributors may be used to endorse or promote products derived * from this software without specific prior written permission. * * This software is provided "AS IS," without a warranty of any * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY * EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL * NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF * USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR * ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND * REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR * INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE * POSSIBILITY OF SUCH DAMAGES. * * You acknowledge that this software is not designed, licensed or * intended for use in the design, construction, operation or * maintenance of any nuclear facility. * * $Revision$ * $Date$ * $State$ */ import javax.media.j3d.*; import javax.vecmath.*; import java.util.Enumeration; /* * Pick the JavaSound reverb type that matches the input parameters * as best as possible. * * Hae Reverb Types Size Persistance Delay * ================ ----------- ------------ ----------- * 1 None (dry) * 2 "Closet" very small very short <.5 fast smooth * 3 "Garage" med. large medium 1.0 medium * 4 "Acoustic Lab" med. small short .5 med. fast * 5 "Cavern" large long >2.0 very slow * 6 "Dungeon" medium med. long 1.5 med. slow * * * Order is NOT controllable, nor does it have a natural parallel. * For this reason Order and Reflection are tied together as to * affect 'Decay Speed'. This speed paired with the size of the * space implied by the Delay parameter determine the JavaSound * Reverb type that is set: * * | Short: Long: * Speed | Coeff <= 0.9 Coeff > 0.9 * Size | Order <= 8 Order > 8 * --------------------------------------------------------------- * small (<100ms) | 2 "Closet" 4 "Acoustic Lab" * medium (<500ms) | 3 "Garage" 6 "Dungeon" * large (>500ms) | 6 "Dungeon" 5 "Cavern" */ // User defined audio behavior class public class AudioReverberate extends Behavior { WakeupOnElapsedTime wt; WakeupOnBehaviorPost wp; PointSound psound = new PointSound(); AuralAttributes sScape = null; static int WAKEUP_SOUND = 0; long dur; long time; boolean firstTime = true; String fileName; int lCount = 0; int loopCount = 0; // Override Behavior's initialize method to setup wakeup criteria public void initialize() { MediaContainer sample = new MediaContainer(); sample.setCacheEnable(true); sample.setURLString(fileName); psound.setSoundData(sample); Point3f soundPos = new Point3f(-23.0f, 0.0f, 0.0f); psound.setPosition(soundPos); psound.setLoop(3); firstTime = true; System.out.println("Reverb Name Size Reflect Order Delay "); System.out.println("----------- ---- ------- ----- ----- "); WakeupOnElapsedTime wp = new WakeupOnElapsedTime(5000); wakeupOn(wp); } // Override Behavior's stimulus method to handle the event public void processStimulus(Enumeration criteria) { // time = System.currentTimeMillis(); if (firstTime) { wt = new WakeupOnElapsedTime(10000); firstTime = false; } else psound.setEnable(false) ; if (++lCount > 6) lCount = 1; if (lCount == 1) { sScape.setReverbDelay(10.0f) ; sScape.setReflectionCoefficient(0.5f) ; sScape.setReverbOrder(5) ; System.out.println("Closet sm 0.5 5 10.0 "); } else if (lCount == 2) { sScape.setReverbDelay(10.0f) ; sScape.setReflectionCoefficient(0.999f) ; sScape.setReverbOrder(9) ; System.out.println("Acoustic Lab sm 0.999 9 10.0 "); } else if (lCount == 3) { sScape.setReverbDelay(200.0f) ; sScape.setReflectionCoefficient(0.4f) ; sScape.setReverbOrder(3) ; System.out.println("Garage med 0.4 3 200.0 "); } else if (lCount == 4) { sScape.setReverbDelay(200.0f) ; sScape.setReflectionCoefficient(0.99f) ; sScape.setReverbOrder(10) ; System.out.println("Dungeon med 0.99 10 200.0 "); } else if (lCount == 5) { sScape.setReverbDelay(600.0f) ; sScape.setReflectionCoefficient(0.33f) ; sScape.setReverbOrder(7) ; System.out.println("Dungeon lrg 0.33 7 600.0 "); } else if (lCount == 6) { sScape.setReverbDelay(600.0f) ; sScape.setReflectionCoefficient(1.0f) ; sScape.setReverbOrder(20) ; System.out.println("Cavern lrg 1.0 20 600.0 "); } psound.setEnable(true); wakeupOn(wt); } // // Constructor for rotation behavior. Parameter: front and back Sound nodes // public AudioReverberate(PointSound psound, String filename, AuralAttributes sscape) { this.psound = psound; this.fileName = filename; this.sScape = sscape; } }