Example #1
0
byte metronomeTick(byte midiNote, byte volume) {
  byte i = findNoteIndex();
  initNote(i, midiNote);
  note[i].startTime = millis();
  note[i].waveform = METRONOME_WAVEFORM;
  note[i].waveformBuf = waveformBuffers[METRONOME_WAVEFORM];
  note[i].isSample = true;
  note[i].sampleLength = sampleLength[METRONOME_WAVEFORM - N_WAVEFORMS];
  note[i].envelopePhase = ATTACK;
  note[i].volIndex = volume;
  note[i].volume = volume;
  note[i].volumeNext = volume;
  setPhaseIncrement(i);
  return i;
}
Example #2
0
	void setFrequency(float f) {
		frequency = f;
		setPhaseIncrement(f/sr);
	}