속성을 저장할 변수

[이 페이지와 연결된 기능인 Windows 미디어 플레이어 SDK는 레거시 기능입니다. MediaPlayer로 대체되었습니다. MediaPlayer는 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드에서 Windows 미디어 플레이어 SDK 대신 MediaPlayer를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]

먼저 지연 시간을 저장하려면 변수가 필요합니다. Windows 미디어 플레이어 플러그 인 마법사에서 만든 기본 샘플은 처리에 사용하는 크기 조정 승수를 저장하는 m_fScaleFactor 변수를 제공합니다. 이 샘플에는 더 이상 이 변수가 필요하지 않으므로 해당 이름과 형식을 변경하여 지연 시간 값을 저장할 수 있습니다.

  1. Echo.h 및 Echo.cpp의 각 m_fScaleFactor instance m_dwDelayTime 대체합니다.
  2. echo.h에서 m_fScaleFactor(현재 m_dwDelayTime)의 데이터 형식을 double에서 DWORD로 변경합니다.
  3. CEcho의 생성자에서 기본 지연 시간 값을 1000으로 변경합니다.
    m_dwDelayTime = 1000;   // Default to a delay time of 1000 ms.
    
    

다음으로, 효과 신호의 백분율과 최종 출력 버퍼에 혼합할 원본 신호의 백분율을 저장할 두 개의 새 멤버 변수를 선언합니다. 용어 "젖은" 효과를 의미 하 고 용어 "건조" 소스 신호를 참조 합니다. Echo.h에 다음 선언을 추가합니다.

double  m_fWetMix;    // percentage of effect
double  m_fDryMix;    // percentage of dry signal

이러한 값은 비율의 10진수 표현으로 저장되므로 배율 인수로 쉽게 사용할 수 있습니다. instance 경우 50%의 효과와 50%의 소스 신호가 혼합되어 각 변수에 대해 0.50의 값으로 표시됩니다. m_fWetMix 및 m_fDryMix 값의 합계는 1.0(100%)을 초과하면 안 됩니다. 결국 이러한 값은 속성으로 액세스할 수 있습니다.

CEcho 생성자에 다음 코드를 추가하여 기본값을 각각 50%로 설정합니다.

m_fWetMix = 0.50;  // default to 50 percent wet
m_fDryMix = 0.50;  // default to 50 percent dry

Echo 샘플 속성