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

📄 amf_agcrmsn_s.c

📁 ADI SHARC DSP 音频算法标准模块库
💻 C
字号:
// Copyright(c) 2006 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/Packs/ControlRatePack/2.5.0/SHARC/Source/AMF_AGCRmsN_S.c#2 $ 
// Part of : VisualAudio V2.5.0 
// Updated : $Date: 2007/07/02 $ by $Author: Kishore $

// Automatically generated VisualAudio render function AMF_AGCRmsN_S_Render

#include <math.h>
#include "AMF_AGCRmsN_S.h"


#if 0

void AMF_AGCRmsN_S_Render(AMF_AGCRmsN_S * restrict instance, float * restrict * buffers, int tickSize)
{
  
  int numIn;
  int channel;
  int sample,i;
  float *in,*out;
  float recip2N = instance->recip2N;  // 1/N

  numIn = instance->b.inputPinCount;

  out = buffers[numIn];

	/*************************************
	* Calculate RMS sample-by-sample for
	* N stereo-inputs
   	**************************************/
	for (sample = 0; sample < tickSize; sample++)
    {
    
    	out[sample] = 0.0;  
    }

	for (channel = 0; channel < numIn; channel++)
    {
		
		in = buffers[channel];
		
		/*************************************
		* Calculate enery sample-by-sample for 
		* N inputs
   		**************************************/
	  for (sample = 0, i = 0; sample < tickSize; sample++,i+=2)
        {
			
          out[sample]  += in[i] * in[i];  // Left input
		  out[sample]  += in[i+1] * in[i+1]; // Right input
        }
					
    }  
    for (sample = 0; sample < tickSize; sample++)
    {
    
    	out[sample] = sqrtf (out[sample]*recip2N );  
    	
    }
  
  
}
#endif

SEG_MOD_SLOW_CONST const AMF_ModuleVariableClass AMFClassAGCRmsN_S = {

  /* Flags */
  AMFModuleClassFlag_VARIABLE_PIN_COUNT,

  /* Render function */
  (AMF_RenderFunction) AMF_AGCRmsN_S_Render,

  /* Bypass function */
  (AMF_RenderFunction) 0

};

⌨️ 快捷键说明

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