#include "testApp.h" #include "stdio.h" //-------------------------------------------------------------- void testApp::setup(){ synth.loadSound("sounds/synth.wav"); beats.loadSound("sounds/1085.mp3"); vocals.loadSound("sounds/Violet.mp3"); synth.setVolume(0.75f); beats.setVolume(0.75f); vocals.setVolume(0.5f); font.loadFont("Sudbury_Basin_3D.ttf", 32); beats.setMultiPlay(false); vocals.setMultiPlay(true); } //-------------------------------------------------------------- void testApp::update(){ ofBackground(255,255,255); } //-------------------------------------------------------------- void testApp::draw(){ char tempStr[255]; // draw the background colors: float widthDiv = ofGetWidth() / 3.0f; ofSetColor(0xeeeeee); ofRect(0,0,widthDiv,ofGetHeight()); ofSetColor(0xffffff); ofRect(widthDiv,0,widthDiv,ofGetHeight()); ofSetColor(0xdddddd); ofRect(widthDiv*2,0,widthDiv,ofGetHeight()); //---------------------------------- synth: if (synth.getIsPlaying()) ofSetColor(0xFF0000); else ofSetColor(0x000000); font.drawString("synth !!", 50,50); ofSetColor(0x000000); sprintf(tempStr, "click to play\npct done: %f\nspeed: %f\npan: %f", synth.getPosition(), synth.getSpeed(), synth.getPan()); ofDrawBitmapString(tempStr, 50,ofGetHeight()-50); //---------------------------------- beats: if (beats.getIsPlaying()) ofSetColor(0xFF0000); else ofSetColor(0x000000); font.drawString("beats !!", widthDiv+50,50); ofSetColor(0x000000); sprintf(tempStr, "click and drag\npct done: %f\nspeed: %f", beats.getPosition(), beats.getSpeed()); ofDrawBitmapString(tempStr, widthDiv+50,ofGetHeight()-50); //---------------------------------- vocals: if (vocals.getIsPlaying()) ofSetColor(0xFF0000); else ofSetColor(0x000000); font.drawString("vocals !!", widthDiv*2+50,50); ofSetColor(0x000000); sprintf(tempStr, "click to play (multiplay)\npct done: %f\nspeed: %f", vocals.getPosition(), vocals.getSpeed()); ofDrawBitmapString(tempStr, widthDiv*2+50,ofGetHeight()-50); } //-------------------------------------------------------------- void testApp::keyPressed (int key){ } //-------------------------------------------------------------- void testApp::keyReleased(int key){ } //-------------------------------------------------------------- void testApp::mouseMoved(int x, int y ){ } //-------------------------------------------------------------- void testApp::mouseDragged(int x, int y, int button){ // continuously control the speed of the beat sample via drag, // when in the "beat" region: float widthStep = ofGetWidth() / 3.0f; if (x >= widthStep && x < widthStep*2){ beats.setSpeed( 0.5f + ((float)(ofGetHeight() - y) / (float)ofGetHeight())*1.0f); } } //-------------------------------------------------------------- void testApp::mousePressed(int x, int y, int button){ float widthStep = ofGetWidth() / 3.0f; if (x < widthStep){ float pct = x / widthStep; synth.play(); synth.setSpeed( 0.1f + ((float)(ofGetHeight() - y) / (float)ofGetHeight())*10); synth.setPan(pct); } else if (x >= widthStep && x < widthStep*2){ beats.play(); } else { vocals.play(); vocals.setSpeed( 0.1f + ((float)(ofGetHeight() - y) / (float)ofGetHeight())*3); vocals.setPan((float)x / (float)ofGetWidth()); } } //-------------------------------------------------------------- void testApp::mouseReleased(int x, int y, int button){ } //-------------------------------------------------------------- void testApp::resized(int w, int h){ }