diff --git a/src/avtk/avtk_background.h b/src/avtk/avtk_background.h index c6bb34d..dd7aa0b 100644 --- a/src/avtk/avtk_background.h +++ b/src/avtk/avtk_background.h @@ -44,7 +44,7 @@ class Background : public Fl_Widget label = _label; - printf("AVTK background label: %s\n", label ); + //printf("AVTK background label: %s\n", label ); highlight = false; } diff --git a/src/dsp/dsp_dbmeter.hxx b/src/dsp/dsp_dbmeter.hxx index cf53952..e503954 100644 --- a/src/dsp/dsp_dbmeter.hxx +++ b/src/dsp/dsp_dbmeter.hxx @@ -19,6 +19,9 @@ class DBMeter fRec0[1] = -96.f; fRec1[0] = -96.f; fRec1[1] = -96.f; + + fvbargraph0 = -96.f; + fvbargraph1 = -96.f; } int getNumInputs() { return 2;} diff --git a/src/gui.cxx b/src/gui.cxx index d63622c..0a3d995 100644 --- a/src/gui.cxx +++ b/src/gui.cxx @@ -22,7 +22,8 @@ extern Gui* gui; void luppp_tooltip(std::string s) { - gui->setTooltip(s); + return; + //gui->setTooltip(s); } void Gui::setTooltip( std::string s ) @@ -68,7 +69,7 @@ Gui::Gui() : { stringstream s; s << "Track " << i+1; - printf("track name %s\n", s.str().c_str() ); + //printf("track name %s\n", s.str().c_str() ); tracks.push_back( new GTrack(8 + i * 118, 40, 110, 600, s.str().c_str() ) ); } diff --git a/src/jack.cxx b/src/jack.cxx index 5ea3ddf..8723d0f 100644 --- a/src/jack.cxx +++ b/src/jack.cxx @@ -121,7 +121,9 @@ int Jack::process (jack_nframes_t nframes) memset( buffers.audio[Buffers::POST_SIDECHAIN],0, sizeof(float) * nframes ); for(int i = 0; i < NTRACKS; i++) + { memset( buffers.audio[Buffers::TRACK_0 + i], 0, sizeof(float) * nframes ); + } jack_midi_clear_buffer( buffers.midi[Buffers::APC_OUTPUT] ); diff --git a/src/looper.cxx b/src/looper.cxx index 1e3eaf5..39d0c63 100644 --- a/src/looper.cxx +++ b/src/looper.cxx @@ -175,6 +175,10 @@ void Looper::setSample(int sc, AudioBuffer* ab) void Looper::process(int nframes, Buffers* buffers) { float* in = buffers->audio[Buffers::MASTER_INPUT]; + + // FIXME: + // using the track output causes distortion: clipping / not proper writing. + // writing to master fixes issue, so its due to trackOutput or Looper writing...? //float* out = buffers->audio[Buffers::TRACK_0 + track]; float* out = buffers->audio[Buffers::MASTER_OUTPUT]; @@ -190,10 +194,10 @@ void Looper::process(int nframes, Buffers* buffers) { tmpBuffer[i] = sample[int(playPoint)] * gain; } - playPoint += playbackSpeed; - - *out++ = 0.f;//sin( playPoint * 440 * 6.24 ); + playPoint += 1.0; //playbackSpeed; + //*out++ = sin( playPoint * 440 * 6.24 ); + *out++ = tmpBuffer[i]; } // now pitch-shift the audio in the buffer diff --git a/src/trackoutput.hxx b/src/trackoutput.hxx index 2213231..d14d71d 100644 --- a/src/trackoutput.hxx +++ b/src/trackoutput.hxx @@ -20,7 +20,7 @@ class TrackOutput : public AudioProcessor printf("trackOutput ID: %i\n", track); // UI update - uiUpdateConstant = 44100 / 20; + uiUpdateConstant = 44100 / 30; uiUpdateCounter = 44100 / 30; _toReverb = 0.0; @@ -59,17 +59,18 @@ class TrackOutput : public AudioProcessor previousInChain->process( nframes, buffers ); } + /* float* buf = buffers->audio[Buffers::TRACK_0 + track]; dbMeter.process( nframes, buf, buf ); if (uiUpdateCounter > uiUpdateConstant ) { - //EventTrackSignalLevel e( track, dbMeter.getLeftDB(), dbMeter.getRightDB() ); - //writeToGuiRingbuffer( &e ); + EventTrackSignalLevel e( track, dbMeter.getLeftDB(), dbMeter.getRightDB() ); + writeToGuiRingbuffer( &e ); uiUpdateCounter = 0; } uiUpdateCounter += nframes; - + */ /// copy audio data into reverb / sidechain / master buffers float* trackBuf = buffers->audio[Buffers::TRACK_0 + track];