⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 amf_biquadcascadesmoothed.h

📁 ADI SHARC DSP 音频算法标准模块库
💻 H
字号:
#ifndef _AMF_BIQUADCASCADESMOOTHED_
#define _AMF_BIQUADCASCADESMOOTHED_

// Copyright(c) 2005 Analog Devices, Inc. All Rights Reserved.
// This software is proprietary and confidential to Analog Devices, Inc. and its licensors.

// File    : $Id: //depot/development/visualaudio/modules/2.5.0/SHARC/Include/AMF_BiquadCascadeSmoothed.h#3 $ 
// Part of : VisualAudio V2.5.0 
// Updated : $Date: 2006/10/12 $ by $Author: Fernando $




#include "AudioProcessing.h"

#ifdef __ECC__

// C declarations

typedef struct {
    AMF_Module b;
    
    // Parameters:
    int numSections;       // number of Biquads (must be even?)
    float coefsSmoothing;
    float totalAmpTarget;
    float totalAmp;       // totalAmp = product of all stage n0 coefs.
                          // Numerator coefs in the following array must be
                          // scaled accordingly.
    float pm *coefsTarget;
    /*
    coef layout:
    filter1 d2    (2nd-delayed denominator coef, negated)
     filter2 d2    (2nd-delayed denominator coef, negated)
     filter1 d1    (1st-delayed denominator coef, negated)
     filter2 d1    (1st-delayed denominator coef, negated)
     filter1 n2    (2nd-delayed numerator coef)
     filter2 n2    (2nd-delayed numerator coef)
     filter1 n1    (1st-delayed numerator coef)
     filter2 n1    (1st-delayed numerator coef)
    filter3 d2    (2nd-delayed denominator coef, negated)
     filter4 d2    (2nd-delayed denominator coef, negated)
     filter3 d1    (1st-delayed denominator coef, negated)
     filter4 d1    (1st-delayed denominator coef, negated)
    etc...
    */
    
    // State:
    float pm *coefs;
    float lastIn;           // last input of previous tick (because this filter has 1-sample delay)
    float *state;
} AMF_BiquadCascadeSmoothed;

extern const AMF_ModuleClass AMFClassBiquadCascadeSmoothed;

#else

// ASM declarations for offsets from start of instance (must be kept in synch with C version)
#define AMF_BiquadCascadeSmoothed_NumSections        AMF_Module_SIZE  // defined in AudioProcessing.h
#define AMF_BiquadCascadeSmoothed_CoefsSmoothing        (AMF_Module_SIZE+1)
#define AMF_BiquadCascadeSmoothed_TotalAmpTarget    (AMF_Module_SIZE+2)
#define AMF_BiquadCascadeSmoothed_TotalAmp            (AMF_Module_SIZE+3)
#define AMF_BiquadCascadeSmoothed_CoefsTarget         (AMF_Module_SIZE+4)
#define AMF_BiquadCascadeSmoothed_Coefs             (AMF_Module_SIZE+5)
#define AMF_BiquadCascadeSmoothed_LastIn             (AMF_Module_SIZE+6)
#define AMF_BiquadCascadeSmoothed_State             (AMF_Module_SIZE+7)
#define AMF_BiquadCascadeSmoothed_StatePtr             (AMF_Module_SIZE+8)

#endif

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -