#include "testApp.h" //-------------------------------------------------------------- void testApp::setup() { ofSetLogLevel(OF_LOG_NOTICE); verdana.loadFont(ofToDataPath("verdana.ttf"), 10); playing=0; numDevices=2; string filename="TRSS_nesbitt_recordings.xml"; if( !XML.loadFile(filename) ){ printf("unable to load recordings, check data/ folder\n"); }else{ if(XML.pushTag("TRSS")) { int num=XML.getNumTags("rec"); if(num) { for (int i=0;i rec; rec.push_back(XML.getAttribute("rec","left","",i)); rec.push_back(XML.getAttribute("rec","right","",i)); recs.push_back(rec); } } else printf("no recordings!\n"); } } for (int deviceID = 0; deviceID < numDevices; deviceID++){ //openNIPlayers[deviceID].stop(); openNIPlayers[deviceID].setup(true); openNIPlayers[deviceID].start(); //openNIPlayers[deviceID].startPlayer(ofToDataPath(recs[playing][deviceID])); } soundplayer.loadSound("02.wav"); startPlayers(); ofSetFrameRate(25.0f); } void testApp::startPlayers(){ for (int deviceID = 0; deviceID < numDevices; deviceID++){ //openNIPlayers[deviceID].stop(); //openNIPlayers[deviceID].setup(false); //openNIPlayers[deviceID].start(); openNIPlayers[deviceID].startPlayer(ofToDataPath(recs[playing][deviceID])); soundplayer.setPosition(0.0f); soundplayer.play(); } } //-------------------------------------------------------------- void testApp::update(){ for (int deviceID = 0; deviceID < numDevices; deviceID++){ openNIPlayers[deviceID].update(); } } //-------------------------------------------------------------- void testApp::draw(){ ofBackground(0, 0, 0); ofSetColor(255, 255, 255); ofPushMatrix(); for (int deviceID = 0; deviceID < numDevices; deviceID++){ ofTranslate(0, deviceID * 400); //openNIPlayers[deviceID].drawDebug(); openNIPlayers[deviceID].drawDepth(50, 0,520,390); openNIPlayers[deviceID].drawImage(600, 0,520,390); } ofPopMatrix(); ofSetColor(255, 255, 255); string msg = "MILLIS: " + ofToString(ofGetElapsedTimeMillis()); msg += "\nFPS: " + ofToString(ofGetFrameRate()); msg += "\nset: "+ofToString(playing); verdana.drawString(msg, 10, 10); } //-------------------------------------------------------------- void testApp::exit(){ for (int deviceID = 0; deviceID < numDevices; deviceID++){ openNIPlayers[deviceID].stop(); } } //-------------------------------------------------------------- void testApp::keyPressed(int key){ bool changed=false; switch (key) { case ',': if (playing==0) playing=recs.size(); playing--; changed=true; break; case '.': playing=(playing+1)%recs.size(); changed=true; break; case 'z': soundplayer.setPosition(soundplayer.getPosition()-.04f); break; case 'x': soundplayer.setPosition(soundplayer.getPosition()+.04f); break; } if (changed) startPlayers(); /* why do this? switch (key) { case 't': for (int deviceID = 0; deviceID < numDevices; deviceID++){ openNIRecorders[deviceID].toggleRegister(); } break; case 'x': for (int deviceID = 0; deviceID < numDevices; deviceID++){ openNIRecorders[deviceID].stop(); } break; default: break; } */ } //-------------------------------------------------------------- void testApp::keyReleased(int key){ } //-------------------------------------------------------------- void testApp::mouseMoved(int x, int y ){ } //-------------------------------------------------------------- void testApp::mouseDragged(int x, int y, int button){ } //-------------------------------------------------------------- void testApp::mousePressed(int x, int y, int button){ } //-------------------------------------------------------------- void testApp::mouseReleased(int x, int y, int button){ } //-------------------------------------------------------------- void testApp::windowResized(int w, int h){ }