JUCE의 버퍼 내부에있는 신호를 오버 샘플링하여 시각적 기본으로 실행하려고합니다. http://www.juce.com/about-juceJuce ResamplingAudioSource 구현
정확히 말하면 : 오버 샘플은 동일한 시간 동안 샘플 수를 늘리는 것을 의미합니다. 예를 들어 원본 파일이 44100khz 인 경우 샘플 속도를 88200khz로 늘리겠습니다. 이것은 신호에 존재할 수있는 디지털 아티팩트를 감쇄시키는 데 유용합니다. http://www.juce.com/api/classResamplingAudioSource.html#details 내 문제는 내가 클래스를 구현하는 방법을 모르겠입니다 ResamplingAudioSource : 내가 이해에서
는 Juce이에 대한 클래스가 있습니다.
클래스 PluginOversampler : 그래서 같은 클래스의 새로운 인스턴스 생성 시도 공공 ResamplingAudioSource을 { 공개 : PluginOversampler(); ~ PluginOversampler(); 그때 리샘플링 속도를 변경하는 PluginOversampler :: setResamplingRatio (지정된 비율 여기)를 호출 할 수있는 아이디어와
void setResamplingRatio (double samplesInPerOutputSample)
}
.
그러나 프로젝트는 시각적 기본으로 컴파일되지 않습니다. 오류는 수백 개가 넘고 번호는 100 개입니다. 그들 중 일부는 전역 변수와 관련 내가 다른 .CPP 및 .H 파일
std::string string22 = "";
그리고 결과 오류가있는 경우 전반에 걸쳐 사용 string22 : 나는 생략하면
extern std::string string22;
1>c:\users\friendly2\downloads\final\ctrl\source\plugineditor.h(28): error C2377: 'std::string' : redefinition; typedef cannot be overloaded with any other symbol
이 프로젝트는 잘 컴파일
PluginOversampler : public ResamplingAudioSource
다른 오류 메시지의 선언은 Juce 헤더 파일이 제대로 유형을 정의하지 않는 것이 좋습니다,하지만 난 생각 Juce 파일이 아니라 내 자신의 프로그래밍에서 오류가 발생했습니다.이 프로그램을 구현하기 전에 프로그램이 완벽하게 작동하고 있습니다 (vst 파일은 DAW에서 정상적으로 작동합니다).
class PluginAudioProcessor : public PluginProcessor
{
public:
//==============================================================================
PluginWidthCtrlAudioProcessor();
~PluginWidthCtrlAudioProcessor();
...
...
}
내가 수업을 'PluginAudioProcessor' 'ResamplingAudioSource'내부의 기능을 상속해야합니까 :
이미 다른 클래스의 인스턴스를했다? 나는 꽤 길을 잃었다.
"시각적 기본으로 돌아 가기".... 그게 무슨 뜻입니까? – rubenvb