merge again

This commit is contained in:
2017-06-27 01:04:17 -04:00
8 changed files with 53 additions and 163 deletions

View File

@@ -58,6 +58,8 @@ void PeteAudioProcessor::changeProgramName (int index, const String& newName)
void PeteAudioProcessor::prepareToPlay (double sampleRate, int samplesPerBlock)
{
myYin = Yin(sampleRate, samplesPerBlock);
aFilter = (filter_svf_t*)malloc(sizeof(filter_svf_t));
svf_init(aFilter, 0, sampleRate);
}
void PeteAudioProcessor::releaseResources()
{
@@ -92,11 +94,13 @@ void PeteAudioProcessor::processBlock (AudioSampleBuffer& buffer, MidiBuffer& mi
static float myPitch;
if(pitch > 0) { myPitch = pitch; }
svf_set_freq(aFilter, myPitch);
float* channel1Data = buffer.getWritePointer (0);
float* channel2Data = buffer.getWritePointer (1);
for(int i=0; i < buffer.getNumSamples(); i++){
incrementer += (myPitch / 4000);
channel1Data[i] = sin(incrementer) * 0.1;
channel1Data[i] = svf_step(aFilter, channel1Data[i]);
channel2Data[i] = channel1Data[i];
}
printf("%f\n",channel1Data[0]);

View File

@@ -1 +1,47 @@
#pragma once
#pragma once
#include "../JuceLibraryCode/JuceHeader.h"
#include "Yin.h"
extern "C" {
#include "../wrDsp/wrFilter.h"
};
class PeteAudioProcessor : public AudioProcessor
{
public:
PeteAudioProcessor();
~PeteAudioProcessor();
void prepareToPlay (double sampleRate, int samplesPerBlock) override;
void releaseResources() override;
#ifndef JucePlugin_PreferredChannelConfigurations
bool isBusesLayoutSupported (const BusesLayout& layouts) const override;
#endif
void processBlock (AudioSampleBuffer&, MidiBuffer&) override;
AudioProcessorEditor* createEditor() override;
bool hasEditor() const override;
const String getName() const override;
bool acceptsMidi() const override;
bool producesMidi() const override;
double getTailLengthSeconds() const override;
int getNumPrograms() override;
int getCurrentProgram() override;
void setCurrentProgram (int index) override;
const String getProgramName (int index) override;
void changeProgramName (int index, const String& newName) override;
void getStateInformation (MemoryBlock& destData) override;
void setStateInformation (const void* data, int sizeInBytes) override;
private:
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (PeteAudioProcessor)
Yin myYin;
filter_svf_t* aFilter;
};