Browse Source

tags/2021-05-28
jules 18 years ago
parent
commit
1f93abaf0e
2 changed files with 8 additions and 1 deletions
  1. +6
    -0
      src/juce_appframework/audio/audio_sources/juce_ResamplingAudioSource.cpp
  2. +2
    -1
      src/juce_appframework/audio/audio_sources/juce_ResamplingAudioSource.h

+ 6
- 0
src/juce_appframework/audio/audio_sources/juce_ResamplingAudioSource.cpp View File

@@ -34,6 +34,7 @@
BEGIN_JUCE_NAMESPACE
#include "juce_ResamplingAudioSource.h"
#include "../../../juce_core/threads/juce_ScopedLock.h"
//==============================================================================
@@ -59,12 +60,15 @@ void ResamplingAudioSource::setResamplingRatio (const double samplesInPerOutputS
{
jassert (samplesInPerOutputSample > 0);
const ScopedLock sl (ratioLock);
ratio = jmax (0.0, samplesInPerOutputSample);
}
void ResamplingAudioSource::prepareToPlay (int samplesPerBlockExpected,
double sampleRate)
{
const ScopedLock sl (ratioLock);
input->prepareToPlay (samplesPerBlockExpected, sampleRate);
buffer.setSize (2, roundDoubleToInt (samplesPerBlockExpected * ratio) + 32);
@@ -85,6 +89,8 @@ void ResamplingAudioSource::releaseResources()
void ResamplingAudioSource::getNextAudioBlock (const AudioSourceChannelInfo& info)
{
const ScopedLock sl (ratioLock);
if (lastRatio != ratio)
{
createLowPass (ratio);


+ 2
- 1
src/juce_appframework/audio/audio_sources/juce_ResamplingAudioSource.h View File

@@ -33,7 +33,7 @@
#define __JUCE_RESAMPLINGAUDIOSOURCE_JUCEHEADER__
#include "juce_AudioSource.h"
#include "../../../juce_core/threads/juce_CriticalSection.h"
//==============================================================================
/**
@@ -89,6 +89,7 @@ private:
int bufferPos, sampsInBuffer;
double subSampleOffset;
double coefficients[6];
CriticalSection ratioLock;
void setFilterCoefficients (double c1, double c2, double c3, double c4, double c5, double c6);
void createLowPass (const double proportionalRate);


Loading…
Cancel
Save