import java.io.*; import jass.render.*; import jass.engine.*; import jass.generators.*; /** Render to raw 16 bit PCM file (or ascii) tmp.raw as long as not interrupted. */ public class RenderToFile2 extends Thread { public static void main(String[] args) throws InterruptedException, SinkIsFullException, FileNotFoundException { int bufferSize = 24; float srate = 44100; int twait = 50; boolean ascii = true; SourcePlayer sp1 = new SourcePlayer(bufferSize,srate,"tmp.m"); float[] b = new float[bufferSize]; b[0] = 1; for(int i=1;i<bufferSize;i++) { b[i] = 0; } OneShotBuffer af1 = new OneShotBuffer(srate,bufferSize,b); af1.hit(); ModalModel mm1 = new ModalModel("1.sy"); ModalObjectWithOneContact mo1 = new ModalObjectWithOneContact(mm1,srate,bufferSize); mo1.addSource(af1); sp1.addSource(mo1); sp1.AGCOff(); long lt = 0; float v=1; // render loop try { while(true) { lt += twait; double realTime = lt/1000.; if(ascii) { sp1.advanceTime(realTime,ascii); } else { sp1.advanceTime(realTime); } sleep(twait); } } catch(Exception e) { System.out.println("RenderToFile"+e); } } }