packages feed

wahsp-0.2: index.html

<html>
    <head>
        <title>wahsp session</title>
        <script type="text/javascript" src="js/jquery.js"></script>
        <script type="text/javascript" src="js/jquery-json.js"></script>
        <script type="text/javascript" src="js/kansas-comet.js"></script>
    </head>
    <body>
        <div id="no-debug-log"></div>

        <script type="text/javascript">

	  // You only really need one audio context
	  var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
	  var sounds = [];
	  
          function Value(params) {
	      return function(u) {
		  $.kc.reply(u,params.value);
	      }
	  }

          function DefaultValue(params) {
	      return function(u) {
		  $.kc.reply(u,params.defaultValue);
	      }
	  }

          function MaxValue(params) {
	      return function(u) {
		  $.kc.reply(u,params.maxValue);
	      }
	  }

          function MinValue(params) {
	      return function(u) {
		  $.kc.reply(u,params.minValue);
	      }
	  }

          function GetCurrentTime() {
	      return function(u) {
		  $.kc.reply(u,audioCtx.currentTime);
	      }
	  }

	  // create a gain node and store it in sounds[]
          function CreateGain(val) {
	      return function(u) {
		  var gainNode		= audioCtx.createGain();
		  gainNode.gain.value	= val;
		  
		  var count		= sounds.push(gainNode);

		  // send back to wahsp
		  $.kc.reply(u,[count - 1,"AudioParam Gain " + (count - 1).toString(),
				gainNode.numberOfInputs,
				gainNode.numberOfOutputs, gainNode.channelCount,
				gainNode.channelCountMode, gainNode.channelInterpretation
		  	       ]);		  
	      }
	  }

	  // create an oscillator node and store it in sounds[]
          function CreateOscillator(freq,det,osctype) {
	      return function(u) {
		  var osc		= audioCtx.createOscillator();
		  osc.frequency.value	= freq;
		  osc.detune.value	= det;
		  osc.type		= osctype;
		  
		  var count		= sounds.push(osc);
		  var freqParam = "AudioParam Frequency " + (count - 1).toString();
	          var detParam  = "AudioParam Detune " + (count - 1).toString();

	          // send back to wahsp
		  $.kc.reply(u,[count - 1, freqParam, detParam ,osc.type,
				osc.numberOfInputs, osc.numberOfOutputs, osc.channelCount,
				osc.channelCountMode, osc.channelInterpretation
		  	       ]);
	      }
	  }
	  
            $(document).ready(function() {
                $.kc.connect("/example");

	        /*
                $("button").button();

                $( "#slider" ).slider({
                        range: "min",
                        value: 0,
                        min: 0,
                        max: 25
                });
	        */
            });
        </script>
    </body>
</html>